This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nRF24L01+ ACK with payload basic question

After some days trying a very simple tx/rx, reading each page of the manual, looking at at this developer zone, etc. I´m still in trouble, with many distinct partial results, but none with a complete round trip.

I think it would be very helpfull to many people if you could post here all registers needed to be set at startup, and all registers needed to be set at each TX and RX moment. Also, registers to be checked to see if data arrived.

So, the simple transmission/reception shoud be:

1- PTX wants to send a 7 byte payload message to PRX and receive an ack payload of 7 bytes.

 ==> PRX Address is 3 byte (1,2,3). 
 ==> 2 times max. retransmission 
 ==> just pipe 0 is used (or any other that you recomend)
 ==> let´s use channel 100, 1Mb/s (or any other chnnel if you prefer) ?

 a- what registers shoud be configured at startup, in what order and values?
 b- what registers/ports shoud be configured when PTX wants to transmit, in what  order and values?

2- PRX previously has loaded a ack_payload same size ( 7 bytes)

 a- what registers shoud be configured at startup and in what order
 b- what registers/ports shoud be configured when entering reception mode

3- PTX receives ACK w/ payload

 a- what registers shoud be configured at startup and in what order (if any distinct from 1 above)
 b- what registers/ports shoud be configured in order to read this ack payload
Parents
  • Hi,

    The nRF24L01+ is a radio transceiver. It does not include any MCU, just a SPI Slave interface that you control the device over. Since the nRF24L01+ can be controlled by any microcontroller with an SPI Master interface, it is hard to provide you with one working example, as there are just so many MCU-options to choose from.

    In order to send ACK payloads back and forth with two nRF24L01+ transceivers, you will need two setup both radios to share the same configuration except that one is on PRX mode and the other in PTX mode.

    Please see the "FEATURE" register in the nRF24L01+ datasheet, page 62. The three fields in this register must all be enabled, and to upload ACK_PLD on the PRX side, you need to do this with command "W_ACK_PAYLOAD" as described in page 51 in the datasheet.

    Cheers, Håkon

Reply
  • Hi,

    The nRF24L01+ is a radio transceiver. It does not include any MCU, just a SPI Slave interface that you control the device over. Since the nRF24L01+ can be controlled by any microcontroller with an SPI Master interface, it is hard to provide you with one working example, as there are just so many MCU-options to choose from.

    In order to send ACK payloads back and forth with two nRF24L01+ transceivers, you will need two setup both radios to share the same configuration except that one is on PRX mode and the other in PTX mode.

    Please see the "FEATURE" register in the nRF24L01+ datasheet, page 62. The three fields in this register must all be enabled, and to upload ACK_PLD on the PRX side, you need to do this with command "W_ACK_PAYLOAD" as described in page 51 in the datasheet.

    Cheers, Håkon

Children
No Data
Related