Wireless Remote Using 2.4Ghz NRF24L01 Module With Arduino | Nrf24l01 4 Channel / 6 Channel Transmitter Receiver for Quadcopter | Rc Helicopter | Rc Plane Using Arduino




About: I am an engineering student and i just love doing electronic (mcu's) and programming (C,C++,JAVA) based projects.

To operate a Rc car | Quadcopter | Drone | RC plane | RC boat , we always need a reciever and transmitter, suppose for RC QUADCOPTER we need a 6 channel transmitter and receiver and that type of TX and RX is too costly , so we gonna make one on our own with Arduino and nrf24l01 module and you can also use it to operate various servo's and this Rx Tx can be used for any circuit which needs a Tx and Rx.

Step 1: Gather Your Components

Step 2: Download the Schmatics and Code

Download code and schmatics from any of the link.


And extract the zip file

Note- if have any doubt regarding how to use these files or how to upload or any other problem refer the video provided.

Step 3: Prepare the Transmitter

After etracting the file you will get a folder named "tx" open it and then prepare everything as shown in the given schmatics in the figure then after connecting all together just upload the code named "Cheapass Transmitter.ino"

Step 4: Prepare the Reciever

so open the other folder named "rx" and then connect all together as shown in schmatics then upload the "rx.ino"

Step 5: Preparing PCB

After preparating and testing of RC Tx Rx on breadboard its time on solder everything according to the schmatics and then connect it all for final testing. You can watch it in video too and finally we made a awesome 4CH/6CH Tx Rx and we can modify it according to our need.

Note-For any confusion refer video



    • Pets Challenge

      Pets Challenge
    • 1 Hour Challenge

      1 Hour Challenge
    • Sensors Contest

      Sensors Contest

    16 Discussions

    Deepauk 123

    Question 3 months ago on Step 4

    In recevier How to connect all outputs


    8 months ago


    please send me final pcb circuit diagram of rx,and tx


    Answer 8 months ago

    this error is commonly occur once you are uploading the sketch via USB FTDI on board so to solve this issue either remove other other everything connected to arduino nano vcc and re-upload because the power of arduino is to weak for the program to be loaded or us external programmer like USBTiny or use another arduino to uplaod the code inside arduino with separated powersupply. by using SPI communication.


    Question 11 months ago on Step 5

    In case if a quadcopter can I use coreless motor?
    Thank you.


    Question 1 year ago on Step 5

    Error message how can i fix this


    Question 1 year ago on Step 1

    I just want to make a quad copter using coreless dc motor and also I want to make 6 channel transmitter and receiver using Arduino as well as joystick so help me for working of transmitter in these 4 motor . Also help me wiring the reciever with these 4 motors pleaseee ........ I'm in very hurry it's my project for school please I trust you please help me


    1 year ago on Step 5

    Hello there.. is it the reaction speed can be adjust? Because in the video you show the reaction speed to slow.. tq


    1 year ago

    electonitGURU Thanks so much for this instructable. i get the data to show in the oled screen and shows the position of my joysticks. But when i plug in a servo to any of the pins (2,3,4,5) it has no reaction when i move any of the sticks. Is there something that I am missing here?

    Also...Can you show the modifications if you want to use this to control an RC car instead of a drone. I want 4wd RC. I have two motors on each side that are in parallel so that they move together. Ideally i would only use one joystick to move the motors forwards, backwards, left and right. The other joystick (left one) would be to move a pan and tilt camera set up around. Can you please help me with this?

    1 reply

    Reply 1 year ago

    In the reciever code you'll find that the data of joystick is of 0-255 and i mapped that data to 1000-2000 for servo so just remove map function and paste that received data variable directly to your motor pin and if you are unable to run a servo make sure you attached a servo to the given pin in code and you used the right wires of servo .


    1 year ago

    pls help when i upload the rx.ino i got this error

    Arduino: 1.8.5 (Windows 7), Board: "Arduino Nano, ATmega328P"

    D:\TEST\nrf-tx,rx\rx\rx.ino:8:26: fatal error: Adafruit_GFX.h: No such file or directory

    #include <Adafruit_GFX.h>


    compilation terminated.

    exit status 1

    Error compiling for board Arduino Nano.

    This report would have more information with

    "Show verbose output during compilation"

    option enabled in File -> Preferences.

    1 reply

    Just remove all the code written with adafruit library if you are bot Wiling to use display or if your want to use display just download and install adafr library for the display

    Fun project. You should enter this into some of the contests that are currently running on the site.

    1 reply