Raspberry Pi RC Control




Introduction: Raspberry Pi RC Control

RC control for Raspberry Pi

There are many instructables showing you how to control a robot using WIFI or bluetooth with a phone or tablet. The problem is you can not maneuver fast enough because you have to look at the screen and the robot. With this setup you can control your robot with a real AM wireless RC controller using the raspberry pi. . Some soldering skills are required.

Step 1: Parts Needed

Parts needed

1. Futaba 2DR AM radio transmitter and receiver.

2. (4) Pololu RC switch with digital output.

3. perf-board to solder the (4) little boards

4. wire (I used the wires from Cat5 cable)

5. nuts and bolts

6. solder equipment

7. very small flat screwdriver

Step 2: Setup


The RC receiver has 2 channels, one to control the direction and the other to control the throttle. I purchased the controller and receiver as a kit and it also included (2) S3003 servos and a battery holder. You only need the receiver and controller. You can cut the wires from the servos and use the connectors if you like. I decided to solder the wires directly to the pins on the receiver instead of cutting the wires from the servos. I purchased the pololu boards from Amazon. click here

Step 3: Wiring


Read the pololu manual at the end of the instructable for details. The boards can be wired for 3.3V or 5V. If you want 5V signal output from the boards then you need to solder together the 2 large pads on the back of the boards. If you want 3.3V from the boards, then you don't have to jumper the pads but you will need 3.3V from the Rpi. First solder the provided header pins to the pololu boards. Place the (4) small boards onto the perf-board, and wire per the diagram. I included 2 diagrams, one for 3.3V and the other for 5V. Note that to use the 5V setup, you will need 3.3v-5v buffer board. For example the Piface or equivalent. After all the wires are soldered. Provide power to the receiver (5V). All the small boards should start blinking and ready for programming.

Step 4: Programming


You will need the RC controller to program each pololu board. Make sure the batteries are good. Follow the manual for details. To enter the program mode, with a very small screwdriver short circuit the 2 small pads on top the board while you turn the power ON. The LED will flash indicating you are in program mode. Activate the lever on the controller and short the pads again to store in memory. If the board is programmed correctly, you should see the LED flash at a different rate. Do the same for all the other boards. After programming, the output on each board should change state from low to high or high to low depending on the direction of the joystick. Fore some reason, with my setup 2 outputs are HIGH and 2 are LOW with the levers on the middle. Mark the output wires so that when you program the raspberry pi you know what wire is what. Keep in mind that when the receiver is out of range or the controller OFF, you will have 2 outputs HIGH and 2 LOW.

This project is intended to show how to add RC control to the raspberry pi not how to build a robot. If anybody needs the python code please ask. The included video shows the working setup.


Be the First to Share


    • Make it Glow Contest

      Make it Glow Contest
    • First Time Author Contest

      First Time Author Contest
    • PCB Challenge

      PCB Challenge

    4 Discussions


    2 months ago

    Thanks for an interesting way of doing it. I have done it using my tablet as a controller and a R-Pi on the remote vehicle as a receiver/controller. I was considering how to get better range out of it and am looking at MQTT to try for faster response times. Here is one of my blogs about how it was done: https://www.blogger.com/blog/post/edit/54155600369...

    Interesting to hear your thoughts on it.


    1 year ago

    I'd like the code!


    Reply 1 year ago

    Since the release of this instructable, I found a better way to interface a RC controller to the raspberry pi. You need an arduino connected to the Pi instead of the Polulo cards. However i will post the code for this project to drive the robot.


    Question 1 year ago on Step 4

    Could you share the code to make it drive?