Manual IP switch II
This revision is from 2018/04/19 11:51. You can Restore it.
The hardware(Edit)

- 1 - status LCD display

- 2 - 25 pin D-SUB inputs outputs
- 3 - Ethernet (optional) not implemented yet
- 4 - micro USB for upload firmware
KIT assembly instructions(Edit)

All components
Soldering in six steps(Edit)

- 1 - bottom pad J1 USB connector
- 2 - U5 DIL socket
- 3 - RL1 Relay
- 4 - P1 P2 P10 P11 JP1 Pin header
- 5 - S1 Reset button
- 6 - J2 D-SUB connector

❏ Short JP5 JP6 SMD jumper padds on bottom side
Display(Edit)

❏ Deploy from the left side Left LCD holder on PCB board

❏ Put LCD

❏ Deploy Right LCD holder on display and deploy to PCB from front side

❏ Display cabe - using only one same side of connectors

❏ Connect display and PCB board - Green collor shows polarity
❏ Insert PCB with display to aluminium box and tighten with two screws
Configure output driver(Edit)
We available two types of output drive
Open collector(Edit)

Using for components with grounding outputs
- Put in ULN2803A chip to U5 dil socket
- Set two jumpers in P2 to LEFT side
Open emiter(Edit)

Using for components controlled with positive voltage
- Put in MIC2981 chip to U5 dil socket
- Set two jumpers in P2 to RIGHT side
- Connect power for output control to pin1 in J2 D-SUB connector| - this voltage use also for powered of band decoder and may be in range 8-24V
Configure outputs in firmware(Edit)
- Allways enabled.
An entrance band data, or frequency, converts to output band 0-14 which can be configured in the following table - Preset Band to output matrix - in default settings Band-1 corresponds to Output-1, etc. You can sets any combination outputs for each band separately. With change zeros and ones in the Matrix table. Band-0 reserved for out of range inputs measure.
//=====[ Sets band --> to output in MATRIX table ]===========================================================
const boolean matrix[17][16] = { /*
Band 0 --> */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, /* first eight shift register board
\ Band 1 --> */ { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /*
\ Band 2 --> */ { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /*
\ Band 3 --> */ { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /*
\ Band 4 --> */ { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /*
\ Band 5 --> */ { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /*
\ Band 6 --> */ { 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /*
IN ) Band 7 --> */ { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /*
/ Band 8 --> */ { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 }, /*
/ Band 9 --> */ { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }, /* second eight shift register board
/ Band 10 -> */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, /* (optional)
/ Band 11 -> */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 }, /*
/ Band 12 -> */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 }, /*
/ Band 13 -> */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0 }, /*
Band 14 -> */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 }, /*
Band 15 -> */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 }, /*
Band 16 -> */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, /*
| | | | | | | | | | | | | | | |
V V V V V V V V V V V V V V V V
---------------------------------- ---------------------------------
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
---------------------------------- ---------------------------------
OUTPUTS */
Outputs only eight, for next need aditional board.
Firmware(Edit)
- Download and install last version Arduino IDE
- Download Band Decoder 2 firmware source from GitHub
- Preset two jumper in P10/P11 pin geader

- Connect micro USB cable between band decoder and PC
- Configure... (more in the chapter Configure TRX inputs)
- Select menu Tools/Board:"Arduino Nano"
- Select menu Tools/Port/YOUR-CONNECTED-PORT
- Upload firmware
Configure TRX inputs(Edit)
First sets global frequency rules which they choose BAND number by frequency with a resolution of one Hz. Also may be use for partition one band to more subbands.
//Freq Hz from to Band number
{1810000, 2000000}, // #1 [160m]
{3500000, 3800000}, // #2 [80m]
{7000000, 7200000}, // #3 [40m]
{10100000, 10150000}, // #4 [30m]
{14000000, 14350000}, // #5 [20m]
{18068000, 18168000}, // #6 [17m]
{21000000, 21450000}, // #7 [15m]
{24890000, 24990000}, // #8 [12m]
{28000000, 29700000}, // #9 [10m]
{50000000, 52000000}, // #10 [6m]
{144000000, 146000000}, // #11 [2m]
{430000000, 440000000}, // #12 [70cm]
{1240000000, 1300000000}, // #13 [23cm]
{2300000000, 2450000000}, // #14 [13cm]
{3300000000, 3500000000}, // #15 [9cm]
{5650000000, 5850000000}, // #16 [6cm]
Second uncomment and activate only one input in source code
//=====[ Inputs ]============================================================================================= // #define ICOM_CIV // read frequency from CIV // #define KENWOOD_PC // RS232 CAT //#define YAESU_BCD // TTL BCD in A // #define ICOM_ACC // voltage 0-8V on pin4 ACC(2) connector - need calibrate table // #define INPUT_SERIAL // telnet ascii input - cvs format [band],[freq]\n // #define YAESU_CAT // RS232 CAT YAESU CAT since 2015 ascii format // #define YAESU_CAT_OLD // Old binary format RS232 CAT ** tested on FT-817 **And connect to TRX as described below
Available Inputs
Icom CI-V(Edit)
- Activate uncomment line
#define ICOM_CIV
- And settings with
#define SERBAUD 9600 // [baud] Serial port in/out baudrate #define WATCHDOG 10 // [sec] determines the time, after which the all relay OFF, if missed next input data - uncomment for the enabled #define REQUEST 500 // [ms] use TXD output for sending frequency request #define CIV_ADRESS 0x56 // CIV input HEX Icom adress (0x is prefix)
- short JP1
- short P10 left/down
- short P11 left/down
- Connect trough two wire line

Kenwood/Elecraft RS232(Edit)
- Activate uncomment line
#define KENWOOD_PC
- And settings with
#define SERBAUD 9600 // [baud] Serial port in/out baudrate #define WATCHDOG 10 // [sec] determines the time, after which the all relay OFF, if missed next input data - uncomment for the enabled #define REQUEST 500 // [ms] use TXD output for sending frequency request
Kenwood (old) TS-x50 inverted TTL(Edit)
- short P10 right/bottom
- short P11 right/bottom
- Connect trough three wire line

Icom ACC voltage(Edit)
- Activate uncomment line
#define ICOM_ACC
- And settings with
//=====[ Icom ACC voltage range ]=========================================================== if (VOLTAGE > 0.73 && VOLTAGE < 1.00 ) {BAND=10;} // 6m * * * * * * * * * * * * * * * * if (VOLTAGE > 1.00 && VOLTAGE < 1.09 ) {BAND=9;} // 10m * Need * if (VOLTAGE > 1.09 && VOLTAGE < 1.32 ) {BAND=8;} // 12m * calibrated to your * if (VOLTAGE > 1.32 && VOLTAGE < 1.55 ) {BAND=7;} // 15m * own ICOM * if (VOLTAGE > 1.55 && VOLTAGE < 1.77 ) {BAND=6;} // 17m * ---------------- * if (VOLTAGE > 1.77 && VOLTAGE < 2.24 ) {BAND=5;} // 20m * (These values have * if (VOLTAGE > 0.10 && VOLTAGE < 0.50 ) {BAND=4;} // 30m * been measured by any) * if (VOLTAGE > 2.24 && VOLTAGE < 2.73 ) {BAND=3;} // 40m * ic-746 * if (VOLTAGE > 2.73 && VOLTAGE < 2.99 ) {BAND=2;} // 80m * * if (VOLTAGE > 2.99 && VOLTAGE < 4.00 ) {BAND=1;} // 160m * * * * * * * * * * * * * * * * if (VOLTAGE > 0.00 && VOLTAGE < 0.10 ) {BAND=0;} // parking //========================================================================================== - Connect trough two wire line

YAESU CAT(Edit)
- Activate uncomment line
#define YAESU_CAT
- And settings with
#define SERBAUD 9600 // [baud] Serial port in/out baudrate #define WATCHDOG 10 // [sec] determines the time, after which the all relay OFF, if missed next input data - uncomment for the enabled #define REQUEST 500 // [ms] use TXD output for sending frequency request
Input Serial(Edit)
Activate uncomment line
#define INPUT_SERIAL
Not need any hardware settings, only send via USB to serial line ascii characters in preconfigured baudrate.
X,YYYYYYY\n
- X - band output in range 0-14, if activate BCD output range is 0-10 because 11-14 reserved for BCD. 0 (zero) = no output will be turned on.
- YYYYYYY - frequency in Hz - has no effect on the output relays, used if any CIV/CAT outputs activated.
- \n - is LF Line Feed (0A in hex)

Pinouts(Edit)
25 pin D-SUB(Edit)

| pin-1 | in | Input power 8-18V DC from Transceiver |
| pin-2 | in | ICOM CI-V |
| pin-3 | out | TXD TTL |
| pin-4 | out | TXD TTL inverted |
| pin-5 | out | TXD 232 level |
| pin-6 | out | PTT output |
| pin-7 | out | Relay 2 |
| pin-8 | out | Relay 4 |
| pin-9 | out | Relay 6 |
| pin-10 | out | Relay 8 |
| pin-11 | in/out | BCD4 |
| pin-12 | in/out | BCD2 |
| pin-13 | in | AZ |
| pin-14 | - | GND |
| pin-15 | in | RXD TTL |
| pin-16 | in | RXD TTL inverted |
| pin-17 | in | RXD 232 level |
| pin-18 | in | PTT in |
| pin-19 | out | Relay 1 |
| pin-20 | out | Relay 3 |
| pin-21 | out | Relay 5 |
| pin-22 | out | Relay 7 |
| pin-23 | out | +5V |
| pin-24 | in/out | BCD3 |
| pin-25 | in/out | BCD1 |
| shield | - | GND |



