Project tutorial
Bluetooth RC Car with Remote Arduino

Bluetooth RC Car with Remote Arduino

A Bluetooth-enabled RC Car that uses Remote Arduino to allow another Windows device to control it.

  • 44,323 views
  • 4 comments
  • 81 respects

Components and supplies

A000066 iso both
Arduino UNO & Genuino UNO
Or another Arduino-compatable board
×1
Velleman Motor Controller Shield KA03
This shield comes in a kit (must be fully assembled). You can use any motor shield that (preferably) uses digital and analog write to control it. This one was chosen for the high amp capabilities (although the motors don't even get close to the limit).
×1
Maisto Tech RC Car (1967 Mustang)
You can use another RC car, but be careful as the motors and power draw may not be the same!
×1
12577 01
SparkFun Bluetooth Modem - BlueSMiRF Silver
×1

About this project

In this project, we will modify an RC car to allow it to be controlled using Windows Remote Arduino via a Bluetooth connection! With Remote Arduino, it is possible to build a Universal Windows Application which will direct the car in any direction. We used a Lumia phone running Windows 10 to control the car with the built-in accelerometer!

You can download the "samples" repository here. This sample is "remote-controlled-car" inside the Win10 folder. Make sure to clone the repository recursively so that you also obtain a copy of the library (more info in the readme)!

If you'd prefer to create your own project, follow the project set up guide here

You can find the Windows Remote Arduino repository here


Hardware Set Up

See the pictures below for an image-based overview of the set up process.

We're going to remove the existing circuitry and add our own Arduino and motor controller (shield). You can technically use the existing circuitry to drive the motors, but the work involved in doing so can be much more complicated and varies wildly from car to car! This solution, while requiring more parts, is much more general. At any rate, make sure to remove the battery before taking the car apart!

  • Unscrew the bottom frame from the rest of the car
  • Remove the wire connectors from the circuit board while removing the top of the frame from the bottom
  • Unscrew the circuit board and cut the wires away. You can discard the board if you wish, we won't need it again.
  • Prepare the Arduino and motor shield by sliding the shield down directly over the Arduino.
  • Verify that all jumpers on the motor shield are in the correct orientation. The Velleman ka03 I am using has five total jumpers! Four are used to select the control pins for the motors. The most important one controls where the motor power comes from, so you'll need to decide if the RC car battery will continue to power only the motors (EXT) or the Arduino as well (INT). If you use internal power, you'll need a barrel jack to hook the power/ground wires up to before inserting it onto the Arduino's DC port.
  • Attach the leads from each motor to a terminal on the motor shield. I've hooked up the front (left/right) motor to terminal 1 and the back (forward/back) motor to terminal 2.
  • Attach the power leads to either the external power terminal on the motor shield (EXT) or to a barrel jack which will be plugged into the Arduino to power both devices at the same time (INT). I am using internal power, which is more than sufficient for the car that I am using!
  • Last, hook up the Bluetooth device to the Arduino by connecting a wire from TX on the Arduino to RX on the Bluetooth device and vice-versa. Also connect it to power and ground!

That is the last of the hardware setup steps! You'll eventually want to secure the board down using a custom mount or zip ties!

Note: This RC Car that I am using uses a small motor for left/right which is designed to turn until it stalls, which then draws a lot of current. It is technically working as intended, and is OK to leave the way it is as long as your motor shield can supply the power it draws. However, I've gone ahead and added a 5w 10Ω resistor to the front motor to reduce the amount of current required.


Software

Download the sample repository here. You'll find "remote-controlled-car" inside the W10 directory. This sample uses a Windows 10 phone's accelerometer to drive the car! If you are using a different pin configuration to control the motor shield, you'll want to locate and change the pin values for the following variables inside ControlPage.xaml.cs:

  • FB_DIRECTION_CONTROL_PIN = 8;
  • FB_MOTOR_CONTROL_PIN = 9;
  • LR_DIRECTION_CONTROL_PIN = 2;
  • LR_MOTOR_CONTROL_PIN = 3;

Or just modify the source to use the default (zero-argument) constructor of BluetoothSerial which will attempt to connect to each Bluetooth device you are paired to until it is successful with one.  

If you'd prefer to create your own project, follow the project set up guide here.

As usual with Windows Remote Arduino, you only need to program your Arduino device to run "StandardFirmata" (you can find this in the "Firmata" folder in the included libraries. Just make sure to change the baud rate in the sketch to match your device. The BlueSmirf runs at 115200 by default. There are more detailed instructions here.

Pictures from the process

Code

Windows Remote Arduino Samples
This repository contains the remote-controlled-car solution built for Universal Windows Applications on Windows 10. It also includes the WRA library as a Git submodule.
Windows Remote Arduino
The Windows Remote Arduino library only.

Comments

Similar projects you might like

RC Car with Remote Arduino (Without external motor shield)

Project tutorial by 4 developers

  • 8,869 views
  • 0 comments
  • 25 respects

Turn your RC Car to Bluetooth RC car

Project tutorial by Prajjwal Nag

  • 11,976 views
  • 1 comment
  • 11 respects

Windows Remote Arduino

Project tutorial by Team Windows IoT

  • 166,222 views
  • 167 comments
  • 339 respects

IoT: Windows Remote Arduino and Universal Apps

Project tutorial by David Jones

  • 16,604 views
  • 12 comments
  • 42 respects

Generic Serial Bluetooth with Win 10 IoT-Core RPI2

Project tutorial by David Jones

  • 8,554 views
  • 8 comments
  • 33 respects

RC Car to BT Car Controlled with Blynk

Project tutorial by Team Daxes Hacks

  • 3,598 views
  • 2 comments
  • 6 respects
Add projectSign up / Login