I've had a hellish last three days. All I've wanted to do is get an Arduino Uno and a Raspberry Pi B+ talking to eachother with these little guys, and after following many different tutorials, I've had absolutely no luck.
Some of the tutorials I have been following to get the circuit set up are these:
- http://hack.lenotta.com/arduino-raspberry-pi-switching-light-with-nrf24l01/
- http://blog.the-jedi.co.uk/2013/10/07/nrf24l01-and-raspberry-pi/
- http://arduino-for-beginners.blogspot.com/2013/02/setup-nordic-nrf24l01-rf-modules-to.html
- http://blog.riyas.org/2014/02/setting-up-nordic-nrf24l01-rf-modules-raspberrypi-home-automation.html
I have looked up the exact pin out of the Raspberry Pi B+ and used it to double check that I am getting the pin out correct, considering that most of the tutorials are using RPi model B's.
The libraries I have tried using are the following:
- https://github.com/stanleyseow/RF24
- https://github.com/gnulnulf/RF24
- https://github.com/maniacbug/RF24
At first I tried using the one by Stanley Seow, but it had been updated a bit since the tutorial so I was getting function input errors while trying to run the code that comes with the tutorials listed above. I was able to try out the examples included with the library, but none of them worked. Whenever I would run the function radio.printDetails()
, I would get an output like the following:
On the Pi, with CE going to GPIO 25 and CSN going to GPIO 8 (CE0)
===============SPI Configuration ====================
CSN Pin = CEO (PI Hardware Driven)
CE Pin = Custom GPIO25
Clock Speed = 8 Mhz
==================== NRF Config ===========================
Status = 0xff RX_DR=1 TX_DS=1 MAX_RT=1 RX_P_NO=7 TX_FULL=1
RX_ADDR_PO-1 = 0xfffffffffff 0xfffffffffffff
TX_ADDR = 0xfffffffffff
... = 0xfffff
... = 0xfffff
... = 0xff 0xff 0xff 0xff
...
Model = nRF24L01
CRC Length = 16 bits
PA Power = PA_MAX
On the arduino, with the pins quadruple checked and in the right spot I get the same thing, everything is 0xff...fff
What could be wrong here? I've tried all of the examples included in all of the libraries listed above and everything either gives me the radio.printDetails()
output listed above or one with all 0x0000
's.