Introduction: FPV RC Car

About: I like making things, specially if they can move.

This project is in in my drawer for some time and I since Maker Fair is coming to town, this was a good time to make it.

A long time ago, there was a game called "Micro Machines" for Sega Mega Drive (Genesis) that I spend hours playing. Basically this was a racing game with small cars where the race track was parts of daily life objects. I found that there is a new version of this old classic.

On the original version, the game had top view of the track and cars, but I wanted to had the first person view in a head display. The camera would move according to the movement of the head of the player.

The controller should be a racing wheel.

Unfortunately, this was not possible, and in the end this was what I got.

Due to several factors I did not implemented the head display and servo controlled camera but the car is controller by the racing wheel, I have a wireless camera and everything works. The problem is the range. I can only control and see camera feed if every transmitter and receiver units are in line of sight.

In any case there are very interesting aspect of this project worth sharing.

Step 1: Components

RC Car

I just selected the most cheap that I could find in a 1:20 scale.

Wireless Camera

I had several chooses where, but probably when for the worst. If you are planning on doing something like this DO NOT use these type of cameras.

Microcontroller
DFRobot Dreamer Nano V4.1, the 2.54mm pinout is essencial for this project. Check DFRobot wiki page for more info regarding this microcontroller

Computador Racing Wheel

Today is very easy to find old racing controllers almost for free. This one I got for free in the local internet market.

It comes with the old 15 pins game port, that was connected in the sound card of the computer.

Motor Controller

The choice was the L298N with a capability of 2A and with a max of 46V in the input serves perfectly or this project.

RF transceiver

For the wireless communication between the racing wheel and car, I went with the nRF24L01+ RF transceiver.

I had some where, and they are easy to use.

Battery

A 7.4V 800mA LiPo battery provides the power to the RC car, microcontroller, RF transceiver, and wireless camera

Miscellaneous

4x - 10K Resistor

4x - 100K Resistor

Perfboard (a usual in my projects), 9V battery plug, and some wires

Step 2: Connect the Components

Computar Racing Wheel Transmitter

The game port pin out can be find where

https://en.wikipedia.org/wiki/Game_por

I also found a very nice site with a schematic for the a connection to the arduino

http://www.built-to-spec.com/blog/2009/09/10/using-a-pc-joystick-with-the-arduino/

The circuit is build in the prefboard according to the schematic that I've added.

For the NRF24L01+ connection I'm using the base adapter that bring a 3.3V voltage regulator plus additional capacitors for increasing the line stabilization.

If you want just to use the NRF24L01+, the power line need to come from the +3.3V from the Arduino.


RC Car Receiver

For the car I also user the NRF24L01+ base adapter, again this is an optional.

The L298n connect to pins D2 to D7.

The power for wireless camera comes also from the battery pack

After some tests, I used the rule of thumb for the heat sink, and decided to use a fan.

Step 3: Code

For the code to run you will need to install the RF24 library.

You can download it were

https://github.com/nRF24/RF24.

Pins D9 and D10 are used also for this library, so do not forget to change them if you want to use other ones

RF24 radio(9, 10); //Set up nRF24L01+ radio on SPI bus plus pins 9 and 10

Then declare the pins for the controller in the Car_TX code.

//Declare the pins for the racing wheel
const int wheel_direction = A0;

const int button_1A = 2;

const int Button_2A = 4;

const int button_1B = 3;

const int button_2B = 5;

And the pins for the motor controller drive

//Define Pins for Motor Drive
//Motor Speed

int enable_A = 3;

int in1Pin = 2;

int in2Pin = 4;

//Motor Direction

int enable_B = 5;

int in3Pin = 6;

int in4Pin = 7;

Step 4: Live Feed

The wireless camera set consistes in a wireless camera and a receiver capable of outputting a composed video signal.

The receiver is then connected to a converter that allows the connection to VGA monitors.

Step 5: Functional Test

Step 6: Conclusion

After finish everything and assemble it, the result was not the one expected. The range of everything was about 2m indoor!!! Probably because this was done with a budget of around 50€!!!

This one needs a complete rethinking on the componentes selected. Probably I will use in the future the same cameras and transmitters used in the drones with FPV. Today is already possible to get some equipment with braking the bank.

Not everything is bad, during the tests it was very fun to drive the car with the racing controller. I will probably build a new version using small RC car but with racing wheel control.

Fell free to comment or send me a message if you found any mistake or if you have any suggestion/improvement or questions.

Like, Subscribe, Make It.

Do not forget to leave your vote for the contests I'm running.

Wireless Contest

Participated in the
Wireless Contest

Make It Move Contest 2017

Participated in the
Make It Move Contest 2017