-
Notifications
You must be signed in to change notification settings - Fork 0
Prototype Construction
Updated Jan 14, 2025 - newest is at bottom
Jan 8, 2025: Got my aluminum box and started the construction of a prototype band decoder for the IC-905. I plan to design a PCB following successful testing.
I found 3 small proto boards that fit into the enclosure PCB slots and I cut one in half to fit the length. The CPU pin headers link the middle and half board together, and heavy bus wire links the last board (the IO interface board) to the group. I am thinking I may design the PCB to do similar allowing the IO board to be swapped out for different types of drivers. Hi-side, Low-side, both-sides, opto, etc. Vertical heigh is limited by design, so I elected to solder the boards. It a CPU module goes bad, I will just cut it out and desolder the pins left in the board, they are only $7.
This is just getting started to wire after mounting all the hardware. Bare wire is ground bus, orange is +5V. The 12V jacks are linked to pass through 12 to the radio. 12V goes through a reverse polarity protection diode to a LM78L05 100ma 5V regulator. I measured about 50ma for the CPU module. The IO will only take a bit more. LEDs, if used, will consume much more. I am looking at using an OLED display instead. Have to mount it somehow TBD.
Since the HD 15pin D-Sub pins do not fit the holes in the proto board I cut the board out around the pins and will solder direct to each pin. Most every pin will be used.
The 2 USB and 5Vin pin all go through diodes to Vbus which supplies the CPU 3.3V regulator. The IC-905 USB port requires +5V present to detect USB and operate but is self-powered and draws no current. I bridged 5V from the +5Vin pin (external V supply input) to the USB OTG USB power pin by soldering a ~1000ohm resistor between the 2 diodes on the connector side. The resistance value was chosen to protect against external shorts. Since there is no current draw by the radio, there is no voltage drop in normal use.
The box is small, meant to easily mount to the back of the 905 control head and not take up much space.
The 2 18-pin DIP chips on the I/O section are ULN2803A Darlington pair open collector drivers. The A version is matched for 3-5V logic levels. It will invert so a logic 1 will ground the output which is what most equipment needs. I plan to put selectable current-limited 5V or 12V on the 15-pin connector. 13 for in and out, 1 for GND, last pin for low current voltage out.
This is the front panel. The left USB is the host port that connects to the radio. It supplies a weak 5V thanks to the 1K resistor added above. The 2nd port is for programming, debug, and in the future, will bridge the radio to a PC to ass CI-V serial. Audio will not pass through so need to use the analog jacks or the LAN connection for audio.
This is what I call the back panel. External 12V and the 15 pin IO connector. I left room for a 1/8" audio jack in case I decide to add an analog CI-V bus jack connected to a level converter circuit and the hardware serial port. The 12V is passed through to the front panel 12V jack which runs to the radio control head.
Now to wire the 15-pin connector via the I/O chips which will be about 30-40 jumper wires to solder to finish this, not counting the final display solution.
Display: I have a spot behind the CPU for a 4-pin socket to mount an OLED display under the box top. The idea is I could cut a rectangular hole and elevate the OLED to fit just below the box and line up with the hole. Optionally, I can use 8 LEDs for power ON, PTT in, and 6 band outputs. These use more power and since the box is not a split body, the LEDs will sit just below the holes in the case above them, not through them. Could mount the OLED in a surface mount 3D printed bezel and just pass the cable through a hole.
Mounting brackets can be mounted to the sides with drilled holes as there is plenty of open space inside at the edges.
I will defer cutting the opening in the end plates until I install a PCB and have final connector placement.
Jan 10, 2025 : LEDs mounted and working. Using the S3's 8 LED PWM channels and timers to drive the 8 status LEDs.
- Power ON (or future use TBD) - Green
- PTT Input detected from SEND line - Red
- 6 BAND indicators - blue. I run them at ~10% duty cycle to dim them.
In a future update I plan to flash the active band LED if that band is active in TX. It is redundant with the PTT-In LED but it is nice to know it propagated all the way through. I will add a pot to easily adjust the brightness in the field.
The firmware is completely function and appear ready to test in in actual use. There are nice-to-have features like PC to Radio USB serial bridging, supporting an optional OLED display, supporting i2c connected modules (aka UNITs) on the M5AtomS3, and flashing the band LEDs on TX.
LED install details:
I seated the miniature LEDs on a narrow piece of proto board to keep them perfectly aligned so they would show through holes to be drilled above them. Hand drilling those holes by hand as accurately will be much harder. the LED are almost touching the underside of the case top side. Since this case is not split body, there is no good way to have the LEDs poke up through the top holes and also be mounted to the board with slides out. Before I commit to a PCB I will try to locate a suitably small split body box. The PCB has to be sized to fit that box correctly.
Here is how I put together the LED module. It spaces the LEDs evenly. The back side has a ground bus wire running the length of the board. Between the ground bus and the cathode of each LED (0.1") is a 200ohm 0603 size SMD resistor. The current is <1ma.
The CPU pins for each LED is set for 4KHz PWM with a duty cycle around 8 to 12% to cut down the very bright clear LEDs. They are rated for 20ma at full tilt. Do not need them at full bright and I only have a 100ma 5V regulator. The board draws <= 80ma, close to 60-70ma. It is nice to be able to dial in the brightness for dark or outdoor situations, back of a vehicle and not blind you in the process. I will put a pot on the PCB (and my prototype) to allow easy adjustment.
The anodes extend down into the PCB and are bent over to solder to their output pin. 2 of them near the middle of the unit need to have a sort jumper to get to their pins.
Here you can see the underside of the LED mezzanine board and the copper GND bus. If you look really close you can spot the 8x 0603 165ohm resistors. I had a surplus of 165ohm so I used them, the value is not critical.
The LED board is supported very well by a thick solid bus wire at one corner, the 8 anodes, and 2 CPU header pins extended up from the PCB. They were pushed up because there are no protoboard PCB holes under them. I pushed them up and left them untrimmed in case I needed to attach wires to them. Now they support a board, convenient.
Drilled the 8 LED holes. Would be nicer if they extended through the holes but not happening with a slide-in case. They are still easy to see and I can crank up the brightness. They have a narrow light emission angle so do not show much light through the adjacent LEDs but I slid heat shrink tube over them anyway after this picture was taken.
No label yet but here is 5.7G band lit.
5.7G in TX active - Red is PTT-In lamp.
144 band with TX
Now with labels applied.
I have not connected the 10G and green power on LEDS yet.
Need to finish the wiring between the CPU and UNL2803s and the 2803s to HD15 connector. Then hook up some 28V and 12V relays for testing. The ULN2803 has a flywheel diode on each output tied to a common pin. I will leave this pin unconnected to allow for different voltages. If it were tied to 12V and there was a 28V source (relay or pullup V) on one of the output pins it would dump through the diode into the 12V supply.
One odd mishap I encountered today. I had a bag of AMS1117-5.0 voltage regulator modules. I have used them many times including my 705 Xvtr box I am still building. 3 of them failed with a short putting 14.2VDC straight into my CPU 5V input pin. I have some working right beside this project. All measured 7Kohms before install between Vin and Vout pins. After applying 14V, they were near 0ohms. The 4th I ramped up the voltage and it worked until about 14V input then it too shorted. These are supposed to handle 18V. Afterwards I tried to get the onboard RGB LED working (pin 48 and a solder jumper on the module. It did not. It did work on 2 other boards. I measured 4.7V input to the LED and on the LED output pin with no light emitting. The other boards were the same. Possible bad LED? The IO pins are 3.3V so this was concerning. I shorted the output to GND and the green LED came on. The power for the RGB comes off the input to the 3.3V regulator nearby. The official DevKitC-1 uses 3.3V. I later found pictures of my boards and schematics verifying 4.7V is the way these are. The I remembered the 14V short. The 3.3V regulator (rated to 7V) protected the CPU. The RGB was on the input side so it got partially toasted. No matter, no one will see it once it is inside the case, plus the green works.
Added a 1K resistor and small diode between the 5V supply and the PTT jack center pin. Diode cathode toward the PTT pin. Also put a .01uF capacitor on the center PTT pin to ground for some RFI defense. This adds a weak pullup on the PTT input buffer and the diode protects against higher external voltages. The resistor is a current limiter. Without this decoder side pullup, if you powered off the radio, or disconnect the PTT input cable (SEND cable), the 5V pullup the radio side goes away and the decoder sees a GND and passes it on as TX to the active band.