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

Getting TX FALED EVENT when using nrf52 in ESB with no DPL with noack=true

I am using nrf52832 radios to communicate using ESB without DPL. I have selective_auto_ack=true and I set the payload.noack=true. But each time I transmit and there is not another radio around I get a TX FAILED EVENT. But I do not want to enable acknowledgements for this specific use case. Is there some sort of error in the library? Surely setting payload.noack=true should tell the transmitter that it shouldn't listen for an ACK? When I put the radios in ESB with DPL everything works 100%. Why is this? DPL is not an option for my specific use case. Am I missing something here? 

Parents
  • Hi

    This is probably not documented very well, but if you disable DPL then the dynamic ACK feature doesn't work. 

    In the original ESB implementation in the nRF24L family of devices (nRF24L01+, nRF24LE1 etc) you had to enable dynamic payload length on each pipe where you wanted to use either the dynamic payload length, dynamic ACK or ACK payload features. 

    Using any of these three features requires a different packet header, and to get this packet header you need to configure the nrf_esb library in ESB_DPL mode. 

    Best regards
    Torbjørn

Reply
  • Hi

    This is probably not documented very well, but if you disable DPL then the dynamic ACK feature doesn't work. 

    In the original ESB implementation in the nRF24L family of devices (nRF24L01+, nRF24LE1 etc) you had to enable dynamic payload length on each pipe where you wanted to use either the dynamic payload length, dynamic ACK or ACK payload features. 

    Using any of these three features requires a different packet header, and to get this packet header you need to configure the nrf_esb library in ESB_DPL mode. 

    Best regards
    Torbjørn

Children
No Data
Related