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

    Sorry if I'm misunderstanding, but where do you see that the RR interval values are ignored? In both these screenshots it seems to me that RR values are printed as they should. What exactly are you expecting in the top screenshot that you are able to see in the bottom one?

    Best regards,

    Simon

Reply
  • Hi

    Sorry if I'm misunderstanding, but where do you see that the RR interval values are ignored? In both these screenshots it seems to me that RR values are printed as they should. What exactly are you expecting in the top screenshot that you are able to see in the bottom one?

    Best regards,

    Simon

Children
  • Take the first values on the first example.

    Per specs, RR intervals should be from byte 2 onward, in 2 byte format.

    So I should have 0x3f2, 0x118, 0x122 and 0xfa as RR intervals. This corresponds to 986ms, 273ms, 283ms and 244ms.

    As seen on that first screenshot, the 0x3F2 (986ms) is ignored, not the others. Kind of like the RR intervals are only read from the byte 4 onward, which would happen if Energy Expended would be activated. But, Energy Expended flag is not activated.

    On the bottom screenshot I manually code the RR intervals to be on byte 4 onward in the packet. No value is ignored there, it once again acts like byte 2 and 3 are Energy Expended (but the flag is not set which means that no energy expended field is shown).

Related