Hi,
We're using nRF Connect SDK 1.9.1, we have a requirement of getting SNR / PER values in nRF connect SDK.
do we have any provision to get these values from physical layer if possible ?
Thank you,
Regards,
Hitesh
Hi,
We're using nRF Connect SDK 1.9.1, we have a requirement of getting SNR / PER values in nRF connect SDK.
do we have any provision to get these values from physical layer if possible ?
Thank you,
Regards,
Hitesh
Hi Hitesh
It is possible to use the Direct Test Mode application in nRF Connect for Desktop, and run two instances of the program where one configures a board in TX mode and the other board in RX mode.
Then you can start a transmission on one board and see how many packets you receive on the receiving side.
Unfortunately there is no counter on the TX side, so it is hard to know exactly how many packets are sent, but when running several tests with a TX timeout of 2 second I see values in the 3190-3200 range. If you can accept a bit of uncertainty then you can use this method.
Best regards
Torbjørn
Hi Torbjørn,
Thank you for quick response,
I want to know the SNR of the received packet in Mesh, when device is in running state in nRF connect SDK 1.9.1,
Can we fetch SNR of received packet integrated in nCS to have a better debugging of Mesh network
Thank you,
Regards,
Hitesh
Hi Hitesh
The mesh stack should give you an RSSI value when a packet is received, which can be found in the recv_rssi field of the bt_mesh_msg_ctx struct.
The SNR is basically just the difference between the RSSI value and the sensitivity of the radio, so you can calculate the SNR from the RSSI if you want.
Best regards
Torbjørn
Hi Hitesh
The mesh stack should give you an RSSI value when a packet is received, which can be found in the recv_rssi field of the bt_mesh_msg_ctx struct.
The SNR is basically just the difference between the RSSI value and the sensitivity of the radio, so you can calculate the SNR from the RSSI if you want.
Best regards
Torbjørn
Can you please be more precise or describe about the calculation of SNR from recv_rssi,
We're able to read RSSI value in recv_rssi field of the bt_mesh_msg_ctx struct but it is observed we're able to get RSSI value of only packet which is hopped from other device, we're getting recv_rssi of packet which is directly recieved from phone / provisioner
for this I've also rasied a query in seperate case : RSSI value of Packet in Mesh awaiting for reply here
Hi
SNR = RSSI - RX_sensitivity
The RSSI value should provide the signal strength of the locally received packet, not any earlier packets in the jump sequence.
The mesh payload does not include any RSSI data, so you will only get the RSSI value for the last jump in the chain.
It is good that you opened a new ticket on this issue, as I am not that experienced in the Bluetooth mesh standard.
Best regards
Torbjørn
Hi ovrebekk,
Can you please share how do we get RX_sensitivity from nRF Connect SDK 1.9.1?
I which file we'll get the value of RX_sensitivity?
Thank you,
Regards,
Hitesh
Hi Hitesh
The RX sensitivity is not defined anywhere in the code, you have to find this in the product specification for the part you are using.
As an example, for the nRF52840 you can find the RX sensitivity numbers here.
Please note that the RX sensitivity is different for different radio modes, and you have to make sure to refer to the correct value for the mode you are using.
Best regards
Torbjørn
Hi,
We're using nRF52833, I'm attaching the screenshot of datasheet capture for Rx sensitivity,
can you please update which value do I refer to calculate SNR?
Thank you,
Regards,
Hitesh