1KM Range Remote Controlled Car





Introduction: 1KM Range Remote Controlled Car

About: I like to make stuff

Since I was little kid I was amazed by the remote Controlled Cars but their range never exceeded 10 meters. After I learned some Arduino programming I finally decided to build my own Remote Controlled Car that can go up to 1KM range using the nRF24L01+ module.

My main goal was to make a car that have a high range with a long play time. To achieve this goal I made the car as light as possible using lightweight chassis and using lightweight Lithium-ion batteries that have good capacity (3000mAh). I struggled a lot to get the 1KM range out of the nRF24L01+ because I faced many problems during the build. But after all, it was really fun to build and I am really happy with the result.

Let's get started !!

Step 1: Order Your Components!

    In order to make the Remote Controlled Car, you will need :

    • 1x Arduino Mega2560
    • 1x Arduino Nano
    • 1x Adafruit Motor Shield
    • 2x nRF24L01+
    • 4x Motor + Gearbox
    • 4x Wheels
    • 2x 3.3V Voltage Regulator (LM1117)
    • 5x Push Buttons
    • 2x 10 µF Capacitor
    • 3x Lithium-ion Battery (In order to make a 12V battery pack)
    • 9V Battery
    • 2x 100 nF Capacitor
    • Female Headers
    • Jumper Wires

    Step 2: Print the Chassis

    I designed this chassis using a CAD software, then I printed it using a CNC Machine. The material used for this body is PVC with a thickness of 5mm. The PVC is a good material to use because it's easy to work with (as you can see on the picture I bended some parts of the body by applying some heat), relatively cheap, strong enough to support the weight of the components and it's also very light.

    Step 3: Why Use a Motor Shield ?

    You must know that any power coming through the Arduino pins has likely gone through the on-board voltage regulator on the board. The voltage regulator is not designed to handle large amounts of current. And if your board is being powered through USB, USB isn't designed to provide large amounts of current. Finding another way to power a motor where the current does not flow through the on-board regulator will reduce the amount of heat generated and save board power for any other sensors or controls that might be necessary.

    Another advantage of a motor shield is that it make it much easier to interface with component like motors, and it simplifies the wiring and allowing features like motor direction reversal.

    Step 4: Make Your Remote!

    As you can see there is 8 push buttons on the remote but right now I am using only 5 buttons (1 button for each direction + 1 button to change the driving speed).

    Here you can find the schematic that I created for the transmitter :

    • nRF24L01+ :
      • CE Connect to the Arduino D7
      • CS Connect to the Arduino D8
      • MOSI Connect to the Arduino D11
      • MISO Connect to the Arduino D12
      • SCK Connect to the Arduino D13
      • GND Connect to Arduino GND
      • 3.3V Connect to LM1117 OUT
      • Connect the capacitors according to the schematic
    • Arduino :
      • VIN Connect to 9V of the battery
      • GND Connect to GND of the battery
      • Connect all the push buttons according to the schematic
    • LM1117 :
      • IN Connect to Arduino 5V
      • GND Connect to Arduino GND

    After making all the required connections, you will need to upload the code below, but before that make sure to download and include the RF24 Library

    Step 5: Wire Up the Electronics and Upload the Code!

    Here you can find the schematic that I created for the receiver:

    • nRF24L01+ :
      • CE Connect to the Arduino A8
      • CS Connect to the Arduino A9
      • MOSI Connect to the Arduino D51
      • MISO Connect to the Arduino D50
      • SCK Connect to the Arduino D52
      • GND Connect to the Arduino GND
      • 3.3V Connect to the LM1117 OUT
      • Connect the capacitors according to the schematic
    • Adafruit Motor Shield :
      • M1 Connect to the Front Right Motor
      • M2 Connect to the Front Left Motor
      • M3 Connect to the Left Back Motor
      • M4 Connect to the Right Back Motor
      • M+ Connect to the 12V Battery
      • GND Connect to GND of the Battery
    • LM1117 :
      • IN Connect to the Arduino 5V
      • GND Connect to the Arduino GND

    After making all the required connections, you will need to upload the code below, but before that make sure to download and include the RF24 Library and the AFMotor Library

    Step 6: Future Improvements

    Congratulation, you have build a fully radio-controlled car that can be controlled up to 1KM Range!

    As I said earlier, I am very happy with the result but I know that there is always some improvements to make the car better. The only improvement that I have in mind right now is changing the motors that I have with high quality ones because the car is not fast enough for me. I am also planning to make a suspension system, to let the car go off-road.

    If you have any improvements that I could make, please let me know in the comments.

    If you face any problem during the build, fell free to comment down below.

    I hope you enjoyed this instructable, thanks for reading! :-)

    Remote Control Contest 2017

    Third Prize in the
    Remote Control Contest 2017



      • Creative Misuse Contest

        Creative Misuse Contest
      • Clocks Contest

        Clocks Contest
      • Water Contest

        Water Contest

      26 Discussions

      Hi Chihad. Look, I made a PCB design according to ur schematic. I could share it with you, to improve the sthetic. So, It will be better if you add a way to do posaible that the front wheels can move a few degrees to turn faster.

      1 reply

      Hello! Thank you for your suggestion, I will take it into consideration in my upcoming projects. If its possible you can share your PCB design here in the comment section. :)

      You may go much further if do some homework with antennas :)

      1 reply

      I think that it's not possible to go further than 1km using this module :)

      You almost can reach N Korea!!!!! With this remote missile launcher.
      Put a missile on it and we win..... Because he only brags, your doing it.

      Very interesting project! I am wondering about a long range video transmitter and receiver? and would any of the components here be used for making a 1km video receiver? Thanks in advance

      4 more answers

      Thanks you so much lettuce951 for your suggestion! This FPV camera is light and modular, so it will definitely be useful in this project!

      Hello Coolerman! I really want to help you, so can you please send me the circuit diagram that you have made? :)

      Thanks Chihab|: presently I have a Boscam 200mWatt AV Transmitter ,Receiver. TS353 +RC805 that I am working with using a Cannon Camcorder as the transmitter & computer as the receiver. I can't seem to get any range from it,,,,100yds?? at the most.  I was hoping nRF24L would work,,open to suggestions?  Thanks again for responding. 

      Thank you! Lets suppose that you are using a camera like ov7670 in QVGA mode(320 x 240 pixels for one frame), for a good video you require 30 frames per second, which is 76800 bytes for one frame, for 30 frame it is 2.3Mbps. The problem is that the nRF24L01+ has a transmitting speed of 2Mbps at 500 meters which will not be enough for video streaming.
      I wish that I helped you
      If you have any other question, I will be happy to answer

      Why not add GPS and a spinning blade and make an autonomous lawn mower? You will probably need to add another board and more batteries to the battery pack, but THAT would be a killer project!

      2 replies

      That's a good idea!! An automated lawn mower will be definitely useful for people who have a big garden!! :)

      I'll bet it would be one of the most popular projects here! I know I'd jump all over it.

      You know with that amount of distance it would be really nice to add a video channel to this. You know, so you could see where it is since it could be so far away.

      1 more answer

      Hello! I have already thought about this, but the problem here is that it will be really difficult to have a usable smooth looking video using an Arduino. But hopefully there is always a solution to any problem, you can simply download an app on an old smartphone like "IP Webcam" that turns your phone into a network camera and have a live streaming on your main smartphone! :)

      3.3 Volt will pass through the capacitor, so you can use a 16V or a 25V 10µF capacitor! :)

      Ahhh, now I understand what to do. I just want to ask about which file should I download from the library. There are many. Here is an image. Thank you!