I have a polar H10, and I would like to read the bpm and rr values, consulting the characteristic specs, I am aware of each byte read from the the notification handle, however, I am still having trouble understanding the values generated. For instance: Here is an example output with the gatt tool Example output screenshot from the gattool:
Now, I understand the following: 10 48 2c 03
where (10 Flags => with bit 4 set specifying an RR value exists, 48 => uint8 Heart Rate Measurment value, 032c => uint16 rr-interval)
But I do not understand the following: 10 49 5e 03 96 03
According to the documentation, it says 1 or more rr values are present. But what does this mean? How could I receive two rr values?
Side note: The goal is to extract HRV features from these values.
You get a Signal with the current heart rate, every Second.
No matter if a heart beat really occured in that second or not. (For Example, someone who is sleeping and got a heart rate of, let's say, about 40 bpm. 60 Seconds / 40 bpm = 1,5 seconds per beat. So if the next heart beat comes 1,5 seconds later that means, that there will be seconds (events that you receive), without a heart beat.)
Example:
10 28 DC 05
10 28
10 28 DC 05...
Now on the contrary, if you are in a very intensive training (for example the final spurt) and you got a very high heart rate of, let's say, 195 bpm. 60 Seconds / 195 bpm = 0,316 seconds per beat. That would mean, that there could be 3 or maybe even 4 beats per second.
Example:
10 C3 3C 01 3C 01 3C 01
10 C3 3C 01 3C 01 3C 01
10 C3 3C 01 3C 01 3C 01...
So the number of heart beats that you receive about every second, could vary between 0 events per second up to (I guess) 4 events.
I hope, I could help.