I just received a couple of nRF24L01 modules, and hooked them up. I used the following
library, and the GettingStarted example sketch from the library, and they worked the
first time great, which kind of amazing considering how many other devices and libraries
need serious debugging to get to work. Yay!http://maniacbug.github.com/RF24/index.htmlhttps://github.com/maniacbug/RF24/
First off, you need to power at 3.3V **ONLY**. 5V will kill the modules. However,
according to the datasheet, the I/O pins are 5V tolerant. The UNO and Mega boards
cannot provide much current at 3.3V, but these modules only require around 13 mA,
so that should be ok [I think].
Then, connect the SPI pins to the usual places, and the module CS pin to Arduino D10,
and CE pin to D9. The IRQ pin on the module isn't needed, at least for the GS sketch.
I simply jumpered all the module pins to the Arduino board pins without any shields.
Note - these callouts may need changing for the Mega board. I'm using a UNO-compatible
Actually, there are several bugs in the maniacbug GettingStarted sketch. The initial
signon responds with some garbage, and the modules don't go into receive mode properly
at startup, but you just have to press 'T' on one side and 'R' on the other side to get them
to talk, and they go.
I just did a little range test, and it's fairly pathetic with these things. Going from one room
to another is only good for about 25 feet [8 m] through a standard wood frame wall. I guess
that's about what to expect for 2.4 Ghz and 0 dbm [1 mW] output.