My RC hacks: #1 : Increasing channels on a Sanwa radio

Started by Swapnil, April 14, 2017, 04:59:07 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Swapnil

I've done various hacks and mods on my RC gear over the years. Starting with this one, I'll be posting about them as a series.

The Sanwa SD-5G is one of my oldest 'reputed brand' radios. First, I modded it for accepting a LiPo battery. But then it fell out of use due to lack of firmware features. To overcome that, I decided to replace the main board with an arduino.

Most of these old branded radios use 'uncommon' transmitter chips but they all accept ppm input. So, once you find the ppm input pin, all you need to do is analyze the signal and generate a similar one using a microcontroller.

There were about 15 wires between the main board and the transmitter board. It took about 2 hours to find out what  each of those wires were for. Back when I did this hack I didn't have a digital oscilloscope to study each of those wires. But, there's an easy method to find a ppm signal. Check each wire with a voltmeter (multimeter) and one of the wires with a fluctuating voltage between 1 to 3 Volts is likely to be carrying the ppm signal.

After shortlisting the wires all you need is a ppm reading sketch on an arduino to find the ppm wire. For the SD-5G, the 4th solder-pad from the right (bottom of the transmitter board) is where the ppm signal goes. It's shown with a red arrow in the attached picture.

I found out that the 3rd pin from right (at the top) needed a voltage of 0.01 volts to bind with the Rx. I used a voltage divider for this. The left resistor is 10k and the one on the right is 22E. (Shown in the attached pic) 

Swapnil

The next step is to study the original ppm signal to find out the pulse length and the frame length. I wrote an arduino sketch to print the number of channels, pulse length and frame length of the ppm generated by the stock microcontroller. I found out the following details.

No. of channels : 8
Pulse length      : 398us
Frame length    : 23593us

These values are important because the Tx chip doesn't seem to work with any other values.

Swapnil

The last part of the hack was to replace the stock main board with an arduino. I used a nano v3 because I had purchased 20 of them for a dirt cheap price from banggood.

The 4 pots from the sticks use pins A0 - A4 and the two switches are connected to the hardware interrupt pins. The sketch I wrote for this was optimized for minimal latency. For example, a channel value does not need to wait for the whole ppm frame to complete before it's updated. It can be updated at any time.

Swapnil

Now, the SD-5G comes with a 6 channel Rx but only the first 5 channels can be used. After the hack, up to 6 channels can be used with the on-board 'pwm' pins and upto 8 channels after finding the ppm pin on the Rx.

It can do all kinds of channel mixes and swaps on the go. Recently I've also added code for changing end points, rates, curves and loads of other features that weren't there before.

This hack can be done on any old radio and I'm hoping it'll help people mod their old radios too.

K K Iyer


Swapnil

Quote from: K K Iyer on April 14, 2017, 08:41:54 PM
...
Wish I knew stuff like this

That's exactly how the rest of us feel about your knowledge and experience! :)

Swapnil

On of the best outcomes of this hack was that my cousin was able connect the Rx to an APM 2.6 directly via PCB by simply reversing the order of the channels. That is, ch-6 is now ch-1 and ch-1 is now ch-6.
Check out the attached pic.

Some other little hacks can also be seen in the pic. Like the shortened Rx antennae and the buzzer soldered to a 3-pin female header and directly connected to the APM.