I am trying to establish simple ping/pong communication between two nodes connected on two arduino UNOs using this guide http://maniacbug.wordpress.com/2011/11/02/getting-started-rf24/ and the RF24 library. So far it seems that the wires are connected well because I am getting addresses for both nodes :
RF24/examples/GettingStarted/
ROLE: Pong back
*** PRESS 'T' to begin transmitting to the other node
STATUS = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
RX_ADDR_P0-1 = 0xf0f0e1d23c 0xf0f0f0f0d2
RX_ADDR_P2-5 = 0x69 0x96 0xa5 0xc3
TX_ADDR = 0xf0f0f0d269
RX_PW_P0-6 = 0x20 0x20 0x20 0x20 0x20 0x20
EN_AA = 0x00
EN_RXADDR = 0x3f
RF_CH = 0x4c
RF_SETUP = 0x07
CONFIG = 0x0f
DYNPD/FEATURE = 0x00 0x00
Data Rate = 1MBPS
Model = nRF24L01+
CRC Length = 16 bits
PA Power = PA_HIGH
What disappoints me is that by using GettingStarted example http://maniacbug.github.io/RF24/GettingStarted_8pde-example.html both nodes are working but they are unable to establish connection.
My first question is: as every network equipment has a MAC address to be identified, shouldn't all rf24s have something similar ?
I have seen this :
// Radio pipe addresses for the 2 nodes to communicate.
const uint64_t pipes[2] = { 0xF0F0F0F0E1LL, 0xF0F0F0F0D2LL };
is this some kind of MAC address or id ?
I am so thrilled about those sensors and I can't wait to make them talk 🙂
Best Answer
The actual problem is with Arduino UNO's 3v3 voltage, which seems unstable and needs a capacitor (I used 4.7uF) attached to the ends of Vcc/GND of nRF24L01+. All examples worked but my question regarding the pipe addresses is still pending !