This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How does nRF Connect interpret the RR Intervals in nRF Connect?

Hello,

I was trying out sending RR intervals on the Heart Rate Measurement service and seeing what happens in nRF Connect. But, something is weird with the way the values are interpreted in the app. The flag for Energy Expended is set to 0, so there should not be any in the packet. But if bytes 2 and 3 of the hrm packet are used to send RR intervals , they are just ignored:

Whatever RR interval is in bytes 2 and 3 is straight up ignored.

Here is another example with putting RR intervals values from byte 4 onward instead of byte 2 onward:

This time, no RR Interval value is ignored!

This is the table from the spec as reference:

Could somebody explain what I am doing wrong ?

Thank you for your help.

Best regards,

Parents
  • Hi

    That's true, can you double check that the energy expended bit is actually disabled in your application? Do you have a second nRF52 device that you can use as a HRS central device to connect and see if you're able to print RR-values from there as well, so we can see if this issue is specific to the nRFConnect app or not. Or alternatively do you have a .hex file of the app I can test to reproduce this on my end?

    Are you using the Android or iOS version of the application. Let me know and I'll ask the app developers if they're aware of something like this.

    Best regards,

    Simon

  • Hello

    Here is a sample (build folder inside also has a .hex for nrf52840dk_nrf52840): Peripheral_RR_Interval_nRF_Connect_App.zip

    It alternates between sending the RR Intervals from byte 2 and byte 4 while keeping the EE flag deactivated.

    It shows this behavior:

      

    The RR-Interval with value 0x15e (341.80ms) is thus ignored on the display when place on byte 2 but not when placed on byte 4.

    I am using Android. As far as what I tried, iOS does not seem to offer an obvious way to interpret a heart rate measurement packet.

    Best regards,

Reply
  • Hello

    Here is a sample (build folder inside also has a .hex for nrf52840dk_nrf52840): Peripheral_RR_Interval_nRF_Connect_App.zip

    It alternates between sending the RR Intervals from byte 2 and byte 4 while keeping the EE flag deactivated.

    It shows this behavior:

      

    The RR-Interval with value 0x15e (341.80ms) is thus ignored on the display when place on byte 2 but not when placed on byte 4.

    I am using Android. As far as what I tried, iOS does not seem to offer an obvious way to interpret a heart rate measurement packet.

    Best regards,

Children
No Data
Related