Hardware setup for RC car controlled by an Arduino and PS3 controller

This video is a response to questions about this video. The car is a Rally Monster by Exceed RC.


38 thoughts on “Hardware setup for RC car controlled by an Arduino and PS3 controller

  1. Hello! Thanks for this project and support for it! I have a short question, and – i am sorry if that is already answered somewhere. The question: will it work with some generic bluetooth gamepad plus also generic bluetooth USB dongle? Thanks in advance!

  2. Hi Jeff,

    Yes, the library supports the Navigation controller. If you look in the PS3BT.ino example sketch included with the library you will see “PS3.PS3NavigationConnected” in the first if-statment of the void loop() routine. While I do not have a Navigation controller to test this, I believe that you access the triggers, joystick and D-pad with the same functions you would normally use to access the corresponding buttons on the regular PS3 controller. As far as I can tell from the example code, once a PS3BT object has been instantiated, it will work with either controller.
    As for the cheap Arduinos, it’s hard to say. I currently have a very cheap ($9) Arduino nano I bought from China that is still working 2 years later despite being in some pretty bad multi rotor crashes (which bent the mini-USB plug). You’d probably be fine with a cheap one, but it depends on whether you’re comfortable riding a skateboard with a controller you don’t trust. I would probably buy a cheap Arduino as long as it was well-reviewed.

    Let me know if you have any other questions, and I’d love to hear if you get a Navigation controller working!



  3. Barrett,
    Can this set up be used with a Sony move navigation controller. I want to use it to control an electric skateboard. All I need is forward and break. This would be way better than carrying around a large rc controller. Also I saw some cheap Arduino boards on ebay and Amazon, are these worth the money? Thank you

  4. hey, , me and my friend are trying to connect our PS3 controller to a USB shield through an arduino Uno board. we can only get the dongle to connect to the controller sometimes. do we a possible better power supply, or a different dongle? when we look at the serial monitor the analogs are constanly going and other buttons functiontion is very slow response. also how do we go about changing the coding to suit our need?thank you if you can help 🙂

  5. Hi Ryan,

    No, that would not work. A motor shield does not have the required hardware to communicate with a USB device (i.e. Bluetooth dongle). One of the components on the USB Host Shield is the MAX3421E USB Peripheral/Host Controller. This component is necessary for the shield to communicate with a Bluetooth dongle. A motor shield will not have this chip.



  6. Hi Barrett,

    So my shield is the Adafruit motor shield and does not have a usb port on it. If I stack this on an Arduino UNO, use a USB B to USB A female adapter on the UNO, and plug a bluetooth adapter into that would it work?

  7. Hi, I am having trouble with some code for ps3, I have a robotics platform with 4 dc motors each motor is attached to s track, each motor controls one track there are 4 tracks on this bot. I have the arduino uno stacked with Bluetooth shield stacked with adafruit motor controller. I cannot find code to control the left side motors m1 and m2 with the left analog joystick on ps3 and motors m3 and m4 with right side. can you help

  8. Hi Adam,

    It sounds like you have a problem with your Bluetooth dongle. They can be extremely finicky. I would suggest trying a new dongle if you can, and or looking through the library code to try and locate your error (I had to contact the developers about error codes once, and you might have to as well). The Bluetooth dongle is usually the culprit so I would start there.

  9. Hello Barrett!
    Please, help me, because i have a problem with the program. When I loading the program to the Arduino, after finish the loading, i connect the PS3 receiver to the USB Host Shield and the seriel monitor write this:

    “PS3 Bluetooth Library Started
    Unknown Device Connected – VID: 1A34 PID: 0203
    BTD Init Failed, error code: 209”

    What do you thing, what is the problem?
    Thanx you answer.


  10. hi barrett
    is the link you gave, are they the correct size for the shield or do I have to buy a smaller one?

  11. Hi abhijit,

    If you mean that your shield doesn’t have any female headers, you can get some here. Solder these to the secondary row of holes just inside of the row of holes where the current male headers are soldered.

  12. hi barrett
    i bought the assembled version of the shield and the problem is i dont know whre to plug in my jumpers to shield
    can you help me out? plz!

  13. Yes, that should be very easy. You can use the servo library included with the Arduino IDE to interface with the ESC. You would only have to map the input from the PS3 controller to a suitable range and send it to the ESC via the servo library functions.

  14. one slight problem.. i bought the assembled shield and i cant put in my jumpers becuase they blocked the hole for the header and the header starts from the bottom

  15. In my project, the equipment goes only in forward and revers direction.
    1.I bought a “Hobbywing Platinum 60A Pro ESC ,” in which a 18- 26V is supplied(after passing through ESC) to the brush-less motor consisting of: 26V , 1300 constant watts, and 500 Kv.
    2. Here, I am gonna connect a arduino UNO & Shield as you depicted.
    3. Hence, do you think that this idea is applicable? If not please suggest your opinion.

  16. abhijit,

    Yes, that car will work. It is exactly the same as mine, except it has a brushed ESC and motor. Everything I say in my hardware setup guide applies to that car.

  17. PK,

    No, the shield contains the MAX3421E USB host chip. Without this chip you will not be able to interface with the dongle. Yes, you can power your Arduino through USB and the battery socket at the same time.

  18. Instead of using Shield, can I connect a Bluetooth Dongle directly to the Arduino Uno using the A/B cable? Also, Can an Arduino Uno input the both external sources i.e. USB cable and Battery socket?

  19. No. You will need something with an ESC and servo that have standard PWM control cables. It is unlikely that you will find this in a really cheap car. Perhaps the brushed version of my car would be good choice. It’s cheaper and slower.

  20. No, at least not a good one. The PS3 controller only has a range of ~30 feet, so there’s no need for a particularly fast car (which will move out of range quickly). You could build a simple robot like my Caster Bot that would cost less and wouldn’t move too fast. However, if you already have an RC car, you might as well use it because this project is easy and pretty fun.

  21. hey Barrett,

    i am thinking of using and Exceed rally monster pro, or my car. do think it is worth buying the car for this project?

  22. When you say “set up the ESC” do you mean calibrate the throttle range? If so, yes and no. If the ESC range has already been calibrated to work with the normal range from your RC transmitter, then you should be able to start using it right away without further calibration. But it wouldn’t be a bad idea to recalibrate it to the new range from the Arduino. I didn’t recalibrate mine in case you were wondering.

  23. So there is no need to set up the esc, like you would with a normal receiver/transmitter?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s