Conversion of RSSI to dBm

I am using an nRF52840 and communicating with an ESB.
Packets are sent one-way from tx to rx every 1 ms.


What is the conversion of RSSI to dBm?

In the data sheet, as 'Figure 124: Conversion between hardware value and dBm'.
'PRF[dBm] = ED_RSSIOFFS + ED_RSSISCALE x VALHARDWARE'.

For ESB, the payload structure is defined in nrf_esb_payload_t and one of the elements is rssi.

Therefore, the rssi can be read from the payload for each packet received, but does the value at this time refer to VALHARDWARE in the above formula?

Note that ED_RSSIOFFS and RSSISCALE are listed in the datasheet as -92 and 4 respectively, and we intend to use these values here.

Parents Reply
  • Thank you for your reply.

    The value of rssi that can be read in SEGGER debug mode is positive, and the further away and the weaker the signal, the larger the number, 40, 60, 80... (in decimal).

    On the other hand, the rssi in the payload nrf_esb_payload_t is int8_t (i.e. signed char), but does it not have a minus '-'?

    Is it correct to understand that the readable rssi value with a '-' is the dBm value of the rssi?

Children
Related