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

Small NRF_ERROR_NOT_SUPPORTED bug in nrf_esb

Not sure if this is a typo in the function comments or a small bug, but thought you'd probably want to address it either way. I'm on the most recent NRF5-SDK (12.2.0) and it's also present in the next alpha. The issue lies with the function "nrf_esb_write_payload".

On line 311 of nrf_esb.h it states the following:

@retval NRF_ERROR_NOT_SUPPORTED If @p p_payload->noack was false, but selective acknowledgment is not enabled.

On line 980 of nrf_esb.c it states the following:

if (m_config_local.mode == NRF_ESB_MODE_PTX &&
    p_payload->noack && !m_config_local.selective_auto_ack )
{
    return NRF_ERROR_NOT_SUPPORTED;
}

Basically, the function comments say the NRF_ERROR_NOT_SUPPORTED retval occurs when noack is false, whereas the code requires noack to be true.

Related