How to Control Your Cheap RC Car with a Computer

[Jon] wrote in to tell us about his programmable RC car, and the Howto guide that he’s made. According to him, this project can be constructed with $9 worth of parts plus an Arduino and a small toy car. So around $50 if you’re starting from scratch.

At it’s core, this project is about using the Arduino to allow your computer to send signals to the toy car. For this, [Jon] has included JAVA code that should be able to run on Mac, Linux, and PC operating systems. The Arduino code is also included.

Most small RC cars like those used in this project switch on at full speed or turn off, but this project allows the PC/Arduino to give the car PWM signals to control the speed. As pointed out in the video after the break, this can be a bit jerky at slow speed, but still a neat effect. A decent amount of soldering is required to get this project working, but it may be a good project especially if you have some of the parts already available!

23 thoughts on “How to Control Your Cheap RC Car with a Computer”

We did something similar in High School comp sci class. Made a cord that connected a laptop’s USB or Serial(I forget which now) to the trainer port on an R/C Airplane’s transmitter. Then wrote code to drive a Tamiya Juggernaut from a remote computer over the school’s wifi.

My first self driving car used a basic stamp and a gold chassis RC10. Back then gps were ultra expensive so all it did was run a programmed set of instructions , rate and duration for the pwm signals to the servo and ESC. A little while later I realized Da Vinci had made a programmable lion a few hundred years earlier that also stood up. :/

nice project, but an arduino seems to be a huge overkill, an 18f4550 (which has usb functionality) can also easily be used, and requires only a few extra parts, meaning that you’l only have to spend about 15 + 9 + 9 = 33 dollars

I think the 33 dollars was the combination of all parts in the project, including the MCU. Truthfully though, if this guy already had a bunch of Arduinos lying around the house like I do, he probably wouldn’t of wasted the money to make it less overkill.

If this was to be a mass produced commercial project, I would agree with you. However, it’s just a one-off.

In my opinion, building small projects around a common prototyping platform is a good thing. The Arduino is a good rapid prototyping platform, -the people reading this article probably already have one they can use. That makes quick projects like this one more accessible (and more fun to throw together in an afternoon) than ordering a list of specific parts and waiting a week for them to ship, just to mess around with a little toy car.

I did something similar in college using the Lego Mindstorms kit, except I didn’t want to mod the controller at all (part of the project was using that kit and building a robot) so I made a robot that would push the buttons manually on the pre-existing controller. I used the C# .net Lego Mindstorms interface library, it turned out well. Mine was meant to copy the ControlOurJunk websites so it was a webpage with a video feed and you controlled the car over the network/internet. It was a fun project. I wish I could have implemented a speed control like this.

It makes me want to resurrect that project with an msp430 launchpad I have lying around.

couldn’t he have also done a crude form of proportional steering, too, by doing PWM on the steering channel? a lot of the cheap-o micro rc’s do the steering with something similar to a solenoid, and these planes(http://www.microflight.com/) use something similar for servos, so it should be possible.

I did try PWM on the steering as well. Wish these mini rc cars, the wheels became very jerky, alternating between straight and right/left. It sounded like the car was having a seizure. Unfortunately, the result wasn’t very usable.

What I’d like to see, but am not up to snuff on programming.
Add some lights to it (white front, red rear?) And a webcam. Remote drone, not as sophisticated as locally controlled, bit easier to program and map and make smart with better battery life too!