Introduction: NRF24L01 : Fixing Connection Issues

Picture of 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

Picture of 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

Picture of 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

Picture of 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!

Picture of Try Again!

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

Comments

kartik00013 (author)2017-08-21

I am using an arduino mega and arduino nano and the most important thing is that i powering both the nrf24l01+pa+lna with seperate 3.3 vpower supply and added a 100 uf capacitor but nothing seems to work

ee0u30eb (author)2017-08-13

Wow the capacitor fixed it for me!!

I bought a module for my
Devo 10 transmitter so that I could get it to fly an Eachine E010 which
uses the NRF24l01 module. Having soldered my first one in and after a
lot of attempts not got it working, it just would not bind I bought a
second one thinking I just had a bad module. I soldered in and triple
checked all my connections, but still no joy. Binding wouldn't work tot
he E010. Figuring maybe I've just bought an incompatible module I went
and ordered something different from China (a 3 in one module which will
control other quadcopters) which will arrive in a couple of weeks.....
but I just couldn't leave it alone and looked up reasons for the module
to not work.

I honestly didn't think adding this cap would solve
it, but I was desperate... AND it worked! I am so happy, really really
grateful for this. Can't thank you enough.

Vexelius (author)ee0u30eb2017-08-13

You're welcome! :) I'm glad to know that this tutorial was useful to you.

DavidCl (author)2016-08-07

Thanks for putting this together. But, why add the capacitor?

Vexelius (author)DavidCl2016-08-08

Some versions of this module tend to draw a lot of energy, which some models of Arduino can't provide. When this happens, the module is unable to work properly.

The capacitor stores a little amount of power, which can be given to the module when needed.

DavidCl (author)Vexelius2016-08-08

Okay, now I get it. Thanks for the clearification.

seamster (author)2016-08-03

Very good info. When in doubt, clean the pins!

Thanks for sharing, and welcome to instructables! :)

Vexelius (author)seamster2016-08-04

Thanks for the warm welcome! I'll try to be more active in this site ;)