Hello,
I am working with the nRF52 Development Kit and the Enhanced Shock Burst Protocol. I am trying to send Data from one Development Board to the other with static Payload size configured on both boards.
My sending message flow looks like this:
- message from PTX to PRX with payload (works fine)
- ACK with payload back from PRX to PTX works partly (I received the ACK but not the Payload)
I looked into the sources of nrf_esb.c and find the following code snippet in the function on_radio_disabled_rx():
case NRF_ESB_PROTOCOL_ESB:
{
update_rf_payload_format(0);
m_tx_payload_buffer[0] = m_rx_payload_buffer[0];
m_tx_payload_buffer[1] = 0;
}
That tells me only a ACK payload size of zero is send. Now I want to change that in the code to the following:
case NRF_ESB_PROTOCOL_ESB:
{
update_rf_payload_format(2);
p_pipe_info->ack_payload = true;
m_tx_payload_buffer[0] = m_rx_payload_buffer[0];
m_tx_payload_buffer[1] = 0;
m_tx_payload_buffer[2] = 0x01;
m_tx_payload_buffer[3] = 0x02;
}
Is that possible. I tried it and I never get the payload. Do I miss something?