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

nRF52 ESB ACK payload not sent/received with fixed payload length

Working on a project to set up a bidirectional UART to SPI link over ESB with nRF52832 (PCA10040), using SDK 13.0. Working from provided examples for PTX and PRX, I manage to send from PTX to PRX with no issues, and PTX confirms reception of ACK packet. However when using NRF_ESB_PROTOCOL_ESB as protocol setting, I am not able to get a payload with the ACK packet. Same code with NRF_ESB_PROTOCOL_ESB_DPL as protocol setting, and I am able to get the ACK packet payload. Is this intended behaviour? Are there any special settings I should be using with fixed length packet ESB to get the ACK packet payload?

I enclose both main_TX.c and main_RX.c to show which settings I am using (all default except for selective_auto_ack = true).RX_TX.zip

I can provide the full standalone project folder with all components if needed (all SDK 13.0 components)

Parents Reply
  • After a bit more digging it turns out that the DPL protocol can have payloads of up to 252 bytes in length, whereas the documentation suggests it can only go up to 32 bytes (in legacy mode vs 252 with static payloads, referring to the non-DPL protocol). Things are cleared up but imho that particular part of the User Guide for enhanced shockburst should be rewritten to avoid confusion. Kind Regards,

    Adrien Rapeaux

Children
No Data
Related