Actually, this was my school project at the Lycée Jules Fil , so I had to produce a complete write-up. Unfortunately, it is in French, but if you want a really in-depth description of the system, and you understand french, you can download it HERE .
I recommend that you read my first Instructable for a more detailed explanation on how the thing works.
The cost of following this instructable is something around 30~40$ if you already have the RC car.
Disclaimer : In this instructable, you will be using dangerous chemicals (Acetone and Ferric Chloride) and dangerous tools (drill, saw, soldering iron,etc...). I can't be held responsible if you harm yourself following this guide. If you follow this instructable carefully, and protect yourself you won't get hurt.
So, the RC car will be driven using the accelerometer sensor (like in iPhone/Android racing games) over bluetooth. For that, we'll be using an android app and arduino library named Amarino 2.0 . The system works a little bit like that :
Accelerometer
|
| I²C
\ /
Android Smartphone
|
| Bluetooth
\ /
Arduino
|
| PWM / simple logic
\ /
H-Bridge
|
|
\ /
Rear motor + Dir motor
Dont forget : If you liked my Instructable, please rate it , and let me know in the comments what you think about this Instructable, and what I could do to make it better ! Thanks !
Below is a little video demo :
Remove these ads by
Signing UpStep 1Required Stuff
- solder iron with fine tip
- tiny solder wire
- good magnifying glass
- "Third hand" helping tool
- small drill press with small bits (~0.02 inch)
- good soldering skills
- hacksaw (used for cutting and shaping the pcb)
- 400 grit sandpaper (otionnal, used for smoothing rough edges after cutting the pcb)
- latex gloves
- Laser Printer (for the Toner Transfer method )
- iron (used to transfer the toner on the pcb)
Required chemicals:
- copper etchant (I use Ferric Chloride)
- Acetone
Required Parts:
- Arduino
- cheap RC car
- Android smartphone
- Bluetooth serial adapter
- 10k and 20 kOhm resistors
- 9V battery or LiPoly 2S (7.4V) battery or 7~8v RC battery pack (Using a rechargeable battery is MUCH better)
- small wires (IDE cable style, see the photo)
- 28 break away headers
- L293E H-Bridge (or any 16-pin L293 variant)
- 16-pin DIP socket
- 9v battery clip
- blank PCB (Printed Circuit Board)
- magazine paper (for the Toner Transfer)
Required Software:
- Arduino IDE : get it here .
- Eagle CAD freeware edition : get it here .
Now that you have gathered all this stuff, let's go to step 2.
| « Previous Step | Download PDFView All Steps | Next Step » |

























































Thanks
"In file included from RCdroid.cpp:6:
C:\Arduino\arduino IDE\libraries\MeetAndroid/MeetAndroid.h:104: error: conflicting return type specified for 'virtual void MeetAndroid::write(uint8_t)'
C:\Arduino\arduino IDE\hardware\arduino\cores\arduino/Print.h:48: error: overriding 'virtual size_t Print::write(uint8_t)'
"
Is it possible that they updated the Print.h library recently?
The code I wrote would not work properly with my project. I used your code to for my project and it worked to a certain extinct. The car tries to go forward, however, I have trouble with the left and right control. Could you help.
LogicPin1Dir
LogicPin2Dir
LogicPin1Motor
LogicPin2Motor
They connect to the control terminals on the L293 chip, and are used to tell the motors (or solenoid) in which direction move. The EnablePin is to set the motor's speed.
If you decide to solder this type of Bluetooth module in this way, be very careful, and use flux! I've broken a couple of modules using this method. The connections on the side of the module are fragile, and if the wires are pulled in any way, the connections on the board are likely to break off. I ruined one module/board just by putting too much heat on the terminals while soldering and they fell off. Since I didn't use flux, the solder was refusing to stick, and it forced me to apply to much heat. On another board I was able to get the wires soldered, but then the power wire broke with some very light touches, and the exposed copper terminal came with it.
It might be better to create a footprint for this module on the board that we etched in earlier steps. Then we could place the module on our etched board and just drop solder on the terminals that are needed. It's obvious why the author didn't choose this approach. Doing so would make this Instructable less-usable, because the Eagle file would have this board's footprint on it, and that would mean users would have to purchase the exact same module (which might be difficult to acquire, or out of production).
In conclusion, if you solder the wires to this type of module as shown in the photo, be very careful both during and after soldering, and use flux to get the solder to bond efficiently!
- For the "auto shutdown" feature, you have to implement a 'time control' loop. If the time since the last accelerometer info was received is too high, make the car stop. This is implemented on the Arduino side. (hint : use the millis() arduino function). First, try to implement this on your own, and if you're really having a tough time doing this (read: more than an hour of struggling), post another comment, and I'll post the updated code.
- For your AT&T captivate, I shall say one thing : welcome to the wonderful world of CyanogenMod ! This is an optimized android os (read: runs MUCH faster) that replaces your current Android OS. After doing this, you'll have A LOT more control of your phone, and will be able to sideload apps (install .apk files from your sd card, enabling you to install the amarino application), and will also be able to connect to the BlueSMIRF Gold.
Read THIS first and then get the actual CyanogenMod HERE.
- You can expect 10+ meters of distance with your bluesmirf.
A1R
Well Ive tried for more than an hour or so to get the time control loop to work. I worked on it over the past two days. Could you show me the updated code and I will use it to try and write one myself. Thanks ARI
Oh, and, I've set the delay to a reasonable 1second, so keep moving your phone ever so slightly to make sure the car doesn't suddenly stop.
A1R
If you're lazy, This battery pack has a 5v regulator built-in, outputs 800mA (which is plenty for the motor + arduino), and has an usb charger built-in. It is a bit bulky for a small RC car, but I recommend that you buy one, instead of using a 9v batt.
If you know soldering basics, and that you want to build a good battery pack (the size of 2 AAs), I recommend this guide. This DIY Lithium pack will output 7.4v at a high output current (more than 2amps), plus, it costs less than 8$. You can get a charger for this pack here. I will be updating this instructable by adding a step to assemble this battery.
I hate to bother you but I have been running into this problem. I downloaded the Amarino toolkit to my tablet and when I try to add an event it crashes, did this with my phone also. Did you encounter this problem? Thanks