In this illustration we will going to wire the Arduino Board to build a remote switching using the NORDIC NRF24l01 2.4GHz Transceiver. The NRF24l01 will act as a remote controller to other NRF24L01. Both the master and the slave will drive by the Arduino boards along with and the NORDIC NRF24l01 RF Module. The host/master controller will send a signal command to the slave device and the slave device will execute the code and send back the response if the command is HIGH or LOW.

As you can see the illustration below we use the bi-directional logic level converter as our power supply to provide 3.3v to the NRF4L01 Radio module.

Required Components:

2x NRF24L01 2.4GHz Transceiver Module (3.3v)
2x Solder Less Bread Board
2x 220 uF capacitor
1x Logic Level Converter
2x LED
2x 220k Resistor
Jumper Wire / DuPont Wire

Optional Component: Relay Module
(If you want to drive higher voltage such as light or appliances that runs on higher load)

Wiring Diagram for Transmitter


Wiring Diagram for Receiver


Arduino Sketch Code for the TX

Arduino Sketch Code for the RX

Download NRF24 Code Library Here | Zip
Download NRF24L01 Code Library Here | Zip

Wiring the NRF24L01 2.4GHz Radio as Remote Switching
Tagged on:     


6 thoughts on “Wiring the NRF24L01 2.4GHz Radio as Remote Switching

  • at

    Is there a way to make this with multiple inputs and multiple outputs? Forgive me I am a beginner at this

    • at

      Multiple I/O at the board? No, The NRF24l01 it is a communication device that works on 2.4Ghz, please refer to the documentations from the official Nordic Semiconductor,
      but you can setup a multiple IO driven by the MCU from the MCU itself you can trigger any I/O which is transmitted from the NRF24l01 TX Role. Regards…

      • at

        My Apologies, perhaps I was unclear. My goal would to be to have this exact setup but with maybe 3 push buttons on the transmitter and 3 leds on the receiver, and be able to use them all at the same time (being able to push 2 buttons at once and having 2 leds on at once, or 1 and 1, 3 and 3 etc.)

      • at

        I just tried using the example and it had the weird effect that basically any pin on the TX could be driven high and send a signal over to the RX, I fixed this by setting the input pin high in the setup and having it check for the pin to be low for a transmission to start, this fixed the problem with that, But I would still like to be able to figure out how to have multiple buttons control multiple leds at the same time on the RX

        • at

          pato amigo como vas,estoy tratando de hacer funcionar esto compadre,pero me sale un error en el sketh del receptor exactamente aqui
          void loop(void){
          if (radio.available()){
          bool done = false;
          while (!done){
, 1);
          if (msg[1] == 111){delay(10);digitalWrite(Indicator, HIGH);}
          else {digitalWrite(Indicator, LOW);}
          else{Serial.println(“Error: No Radio Transmission”);}}

          mira que la linea yo le quite el done=
          y se quita el error pero me sale una lista de 0 en el monitor serial y 255 y asi sucesivamente,no se si lograstes solucionarlo estoy tambien empesando si puedes me escribes a mi correo aver si me echas una mano..
          [email protected]
          soy luiscarlos

  • at

    Can someone extend the code for 6 buttons and 6 leds because i dont know how to do it i just started with the programming ..


Leave a Reply

Your email address will not be published. Required fields are marked *