Major Upgrade to RF24 library for nRF24L01+

After many frustrating hours trying to get UNOs working, trying all combinations of capacitor decoupling I went back searching on Google and found my way back into Arduino Playground Arduino Playground - Nrf24L01

It seems that since late December 2014 we have an upgrade to RF24 which:
Newly Updated/Optimized (2014) NRF24L01 Library for Arduino, ATTiny, Due, and Raspberry Pi includes features/fixes from various forks and major updates RF24 Repo

I've only had time to play with the new version of example GettingStarted but all seems to now to be working fine. This new code requires a bit of minor changes to pins for CE/CSN and also specifying a radio number 0/1.

/****************** User Config ************************/
/
Set this radio as radio number 0 or 1 ***/
bool radioNumber = 0;

/* Hardware configuration: Set up nRF24L01 radio on SPI bus plus pins 7 & 8 /
RF24 radio(7,8);
/
*********************************************************/

Enjoy

Hi rbright,

Was there anything you did differently from the instructions of this RF24 library? Are you using Arduino Unos or other boards? Did you use the ICSP pins or just the instructed D11 ~ D13 pins?

I have two arduino uno clone boards and the gettingstarted sketch didn't work on each other, however running the RPi example of getting started, the arduino's could send message to RPi but the arduinos could not get anything back. Did you encounter this problem?

Thanks.
Peter

what is the wiring for the Mega with that library? is it same as UNO or same as previous library?

edit: why does the documentation have the SPI not in pins 7&8?

chen_tso and newneo_phyte Have a look at this other post where I get a response from TRMh20 who authored the new version of RF24 library. Follow the links to his Blog & documentation.

Hardware wise I have this running on UNOs & Pro Micros. I'm using CE into pin 7 and CSN into pin 8 but these are flexible as long as they don't clash with any other code on the same card, pins used for Ethernet come to mind. MEGA can use other pins of course.

Of course the SCK, MOSI, MISO should match the specific pins on your UNO etc

Don't forget a 10uF tantalum cap across the 3.3 volt pins on the nRF24 card. My UNOs 3.3V supply works fine.

Enjoy

I stumbled over the same library from playground after searching long for a library that supports Arduino Due as well.

Really cool, the demos I tried just worked.

While GettingStarted example got timeouts every 10-15th run, Transfer test worked perfectly, always "0 of 10000 Packets Failed to Send". I played with that demo with two Dues and a Nano, these are the transfer rates I measured:

Due -> Nano 19.5 KB/s
Nano-> Due  38.5 KB/s
Due -> Due  48 KB/s

The antennas were not more than 10cm apart. The Nano numbers seem to indicate that receiving is more compute intensive than sending for the Nano.

Even for Due->Due that means no high fps rates for transmitting ov7670 VGA camera pictures, but with reduced resolution (320x240/160x120/80x60 or even 40x30) and/or reduced colors (eg. monochrome) fps rate will increase.

Here is the RF24 library playground link:
http://playground.arduino.cc/InterfacingWithHardware/Nrf24L01

This is the website I found the nice wiring picture below, especially the "Down side" view helps to quickly get the wiring done:
http://starter-kit.nettigo.eu/2014/connecting-and-programming-nrf24l01-with-arduino-and-other-boards/

Hermann.

I had not seen this Thread before today. I do hope the author of the library had the sense to give it a unique name.

...R