With a group of friends we decided to explore the wireless side of arduino. Searching a bit on google we found a nice and really cheap 2.4GHZ module, the NRF24L01+ module for about 2.60 euros a couple (what the heck do you need just one for?).

NRF24L01+ module

NRF24L01+ module


To make it communicate with the other arduino the first thing to do is use the right pinout scheme, which must match the library pinout (of course).

pinouts taken from http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo    (dupon color coded)

NRF24L01+ pinouts

NRF24L01+ pinouts




We decided to use for our first test the RF24 library (click here for github page), but the devices were not working. Actually they were not communicating correctly. An arduino was transmitting but the other one was not receiving or sometimes it was not sending back the ACK packet.

We’ve spent a bunch of hours, checking dupons, changing arduinos (one of them was actually malfunctioning), changing the radio module and even changing pinouts (who knows… mystic events happening), changing cables.

Then, at 4AM, I decided to start from scratches. Following this (awesome) guide from [maniacbug] I downloaded again the RF24 library, uploaded the GetStarted sketch to the arduinos, connected the radios, and everything was working! 

The only reason I can imagine is something about a corrupted library (was from another source) , outdated files, or a divine intervention from Stallman

Will post again on evolving projects.








Post a comment
  1. Silas Tendai #
    March 15, 2016

    Really helpful! My modules were working fine until they suddenly were not communicating. I tried everything conceivable in an Engineer’s mind without luck. Changing the library worked for me, finally! Thank you so much….

    • Ben #
      January 14, 2017

      I have exactly the same problem. Which library did you replace and with what other library? i’m currently having the rf24 library from tmrh20 installed, giving me problems.

  2. Tiago #
    March 3, 2016

    Hi, Everbody, it’s possible utilize Windows 10 + Raspberry pi + Node jS + NRF2401 ?

  3. January 29, 2016


    Great and informative article. I am working on arduino project recently. And this concept is very helpful in my project. But i have some doubt, is it really work properly?


    • March 3, 2016

      Beside some problems making it work at the beginning, it’s actually pretty reliable. Please note that anyway some users have encountered problems, which they solved with a daily arduino reboot.

      • James #
        December 30, 2017

        A daily reboot could be attributed to writing serial output while not connected to anything. The serial buffer will fill up and slow it down to a point that it doesn’t work as expected.

  4. hosein #
    May 14, 2015

    i’m working with NRF24l01 by avr.
    but my library don’t work correctly and reset micro suddenly…
    i cant test my NRF to send and receive my data…
    plz help me…

  5. Debojit Kundu #
    January 16, 2015


    You are awesome. My problem was also same – the faulty library. I took the library from your suggested link, reinstalled the library, and it worked.
    One problem though: Initially while the radiodetail was printed it was showing a wrong address for first device (and for both the transceivers), while I started the transmission mode for both, then it showed the correct address for both the radio, and then i switched one end back to receiving mode.
    Indoor test result: 30 ft with all wall/door obstacle – pretty good with 1 mbps speed, i will try with 250 kbps, to see if the range gets increased or not.

    Thanks again

  6. et #
    September 4, 2014

    hey u are awesome 😀 I was messing with this thing for 2 days and now I redownloaded from that link, it is working now 🙂 thanks

  7. August 18, 2014

    I had the very same problem. I tried everything, checked the wires, tried different combination didn’t work.
    After I found this site, downloaded this RF24 library, renamed the folder to RF24master,
    and everything worked fine.

    Thanks guys.

  8. Esteban #
    July 18, 2014

    Hello, can you show a example of code working with that module please….
    i’m trying to make it work but i have problems with that
    thanks for your help

Leave a Reply

Basic HTML is allowed. Your email address will not be published.

Subscribe to this comment feed via RSS

By continuing to use the site, or scrolling, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.