nRF24L01 supports multi-channel data receive, so you can use several nRF24L01 node to transmit data to a terminal receiver.

We have built a sensor network demo, which uses 6 sensor node and sends the data to one receiver. The operation of controlling nRF24L01 is similar to the point-to-point demo.  The demo just uses the button to trigger the data transmit but not really read the sensor.

To achieve receiving data from 6 channels, there are a few points to note:
  1. EN_AA and EN_RXADDR register: should be set to 0×3F, enable auto-answer and allow receive data from all channels.
  2. RX_PW_PN registers: default is 0, set for the max length of received data.
  3. Address for channel P0- P1 is 40 bit, but the address of P2- p5 is 8 bit, the high 32bit is the same as P1, so just need to write one byte address for P2 -P5. And remember that the low address should be written first.

You can download the demo project here :

  nRF24L01 Six Channels To One Receiver (8.1 KiB, 8,792 hits)

It includes 2 parts: one for the sensor nodes, and the other for the receiver. The project is built by Keil and it’s for C8051. We are building a new one which for Arduino and nodes will really read back the temperature information and display in LCD by the receiver.

%d bloggers like this: