NRF24L01 : Fixing Connection Issues





Introduction: NRF24L01 : Fixing Connection Issues

Some cheap NRF24L01 modules are affected by connection issues. This can be solved by following these simple steps.

Step 1: The Error

Many of us have been in the following scenario: You are ready to implement wireless communication in a project, you have already connected the modules, loaded the corresponding sketch to your Arduino, and when you try to test everything... It doesn't work. Your modules can't receive and/or transmit data.

The error shown in the screenshot corresponds to the Getting Started sketch, one of the examples included in ManicBug's excellent RF24 library.

If you have already checked that the connections are in the right place and the problem still persists, then it's time to make a few adjustments to your NRF24L01 module.

Step 2: Cleaning the Pins

Due to some manufacturers' poor soldering quality and improper storage, some modules might end up with a grey "crust" over the pins and the underside of the crystal oscillator, as seen in the above photos. This crust can affect the conductivity and/or create electrical noise.

Using a small flat screwdriver or a toothpick, carefully remove the crust. Then, wipe the remaining dust using a dry cloth.

Step 3: Solder a Capacitor

Solder a 10 uF electrolytic capacitor to pins 1 (GND) and 2 (PWR) of the module. Take care to align the positive lead of the capacitor to pin 1 and the negative lead to pin 2.

After you have finished soldering it, trim away the excess leads.

Step 4: Try Again!

Connect the module back to the Arduino and try to run your sketch again!



    • Epilog Challenge 9

      Epilog Challenge 9
    • Paper Contest 2018

      Paper Contest 2018
    • Science of Cooking

      Science of Cooking

    We have a be nice policy.
    Please be positive and constructive.




    Have a NRF24L01 socket adapter but it is still not working. Wh?y

    when I touch the long end of the capacitor to the gnd of module and short end to vcc the arduino restarts. Why?

    Because the short end is -usually- the negative pin of the capacitor. You're connecting the capacitor backwards. Positive should go to VCC, negative to GND.

    Hey man, I tried to do all that you said but no success. I'm getting the same number being read and the only thing that's rising is the ping and I dunno why. It keeps getting bigger and starts from 7000. I'm getting readings even the pong node it's not connected.

    If the ping keeps rising, that means that one of the modules is taking too long to reply. I'd suggest checking the wiring and the code... If all of that fails, then maybe your module is defective or damaged. Unfortunately, most of the modules available online have a very low quality standard.

    Can I use a 4.7uF capacitors? I have a few so I can use them in parallel to get 9.4uF close to 10uF. Should I? Please reply as early as possible. Thanks.

    It's possible, although it wouldn't be very practical. I decided to use a single capacitor because it's easier to solder it in this position.

    will a 1000uf capcitor be safe for the module? I do not have a 10uf capacitor. If it is not I will have to buy. Thanks.

    Yeah, it would be safe... But I wouldn't recommend it. Let me explain: The purpose of this capacitor is to keep a reservoir of energy, as this module is prone to sudden "spikes" in energy consumption. 10uF is a good value for a capacitor because it's small enough so that it would be charged almost instantly when the circuit first powers up, and big enough to provide energy to the module when it suddenly demands more power. However, using a bigger capacitor (1000 uF is a considerably big value) might mean that it'll take longer to charge.