Hacking an RC Receiver

I've often wanted to connect an RC Transmitter/Reciever up to a robot for testing purposes, but didn't want to use one input per channel.

If you goto this pages, and click on Tech Notes, there is a 3-part article called "How it Works: The PPM Radio Control System", that describes how PPM RC transmitter/receivers work. A couple of other references are here and here.

So, it seems that the final output stage of a PPM system is typically comprised of a shift register. Getting access to the clock would allow a single input on the microcontroller to decode all of the channels rather than using one input per channel.

Stock Receiver

This is a photo of the receiver that I have. Bigger...

Label on the back

For completeness, I'm including a photo of the label on the back of the receiver as well. Bigger...

Holding tabs

My received has 4 little tabs holding the top and bottom halves together. After cutting through the labels on the sides, I found that you could very gently push on the tabs through the holes in order to separate the top and bottom of the case. Bigger...

Inside Top

Here we see the top removed. Notice that there is an extra row of locations to plug pins into above the two channels of pins already present. Bigger...

Inside Bottom

Ah Ha. Pay dirt. The surface mount chip in the top right is an HEF40175B chip, which is a quadruple D type flip flop, which can be arranged to look like a shift register. Sure enough, the signal lines on the two servo outputs which are present go directly to the output of the D-flops. In fact, the unpopulated pins appear to be for a 3rd channel. Bigger...

Bottom Modification

So, I cut the trace leading to the extra signal line. You can see the cut just above the top-right of the HEF40175B. The output was originally connected to pin 2. I determined that a nearby resistor was connected directly to pin 9 (the clock) so I then added a piece of blue wire wrap wire from that resistor to the unused channel pin. Bigger...

Top Mod

Here you can see I soldered in an extra pin into the "unused" channel. By adding an extra pin, I was still able to use the receiver in it's original form. Bigger...

Case Modification

I added an extra hole in the case to get at the new pin. I was orignally going to make a bigger slot for all 3 pins and decided in the end to just use one. Bigger...

You can find some source code and a couple more photos on the Robostix RC input page.

Home - Robotics

Copyright 2006 by Dave Hylands