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

nRF52840 RSSI reading returns always the same three values

Hi,

I am facing an issue with the RSSI value when my device is in connected mode.

First,  in ble_evt_handler(),

in the BLE_GAP_EVT_CONNECTED case, I place the following

            err_code = sd_ble_gap_rssi_start(p_ble_evt->evt.gap_evt.conn_handle,1,2);
            APP_ERROR_CHECK(err_code);

Second, in the ble_evt_handler() I added the BLE_GAP_EVT_RSSI_CHANGED case and inside it I read the RSSI value

             rssiValue = p_ble_evt->evt.gap_evt.params.adv_report.rssi; 
             sprintf(rssi, "%d,", rssiValue); 
            

The readings I get are not what I expected.For example

when I replace the 

rssiValue = p_ble_evt->evt.gap_evt.params.adv_report.rssi;

with

sd_ble_gap_rssi_get(p_ble_evt->evt.gap_evt.conn_handle, rssi, NULL);

I receive only zero value.

Any ideas?

Related