osmandapp / OsmAnd

OsmAnd
https://osmand.net
Other
4.6k stars 1.01k forks source link

Heart Rate sensor "SPM 230" does not work #19558

Open sjvudp opened 5 months ago

sjvudp commented 5 months ago

Description

I think I had reported this issue long time ago (to support I guess), but could not find a reference to it. At that time I thought I made a usage error, and I didn't use the feature for a long time until recently:

It seems the "Sanitas SPM 230" (see e.g. https://www.manualslib.com/manual/1635061/Sanitas-Spm-230.html?page=17#manual) does not work with OsmAnd. When I tried it the first day, I noticed that the display for battery said "20" (% I assume), so I thought the battery might be weak (I had no spare battery with me). When I saw no heart rate data at the end of the track recording, I thought it's due to a weak battery, so I replaced it.

Having a multimeter at the hand, I discovered that the old cell had slightly above 3V (with 3V being the nominal voltage of the CR2032), while the new one had almost 3.3V. The first surprise was that OsmAnd displayed "49" for the fresh battery (it was not very new, but just unpacked):

Screenshot_2024-04-13-17-40-46-33

Starting the tour I realized that no heart rate data was shown, but as the heart rate unit turns on itself when the skin is wet enough, I thought it will start later. Unfortunately even at the end of the tour no heart rate was visible (As it turned out the unit won't be visible via bluetooth if it did not activate itself, so the heart rate should have been present right from the start). The typical trackpoint looked like:

      <trkpt lat="49.214855" lon="12.1678867">
        <ele>357.8</ele>
        <time>2024-04-13T17:08:22Z</time>
        <hdop>1.7</hdop>
        <extensions>
          <osmand:speed>2.9</osmand:speed>
        </extensions>
      </trkpt>

So I tried another app (Ape@Map, https://play.google.com/store/apps/details?id=wmdev.apps.navBrowser) on the same device, using the same heart rate sensor where I had recorded heart rate successfully in the past:

Screenshot_2024-04-13-18-07-03-04

Here the heart rate was recorded (last CSV item):

(...)
(49.19093322753906,12.163833618164062,349.0,1713024428)
(49.19078063964844,12.163655281066895,349.0,1713024514,114)
(49.190574645996094,12.163559913635254,349.0,1713024519,114)
(49.19035720825195,12.163453102111816,346.0,1713024524,114)
(...)
(49.189361572265625,12.163064956665039,345.0,1713024547,142)
(49.18915939331055,12.162981986999512,345.0,1713024552,154)
(...)

So I conclude the phone, bluetooth, and the sensor were all working, but OsmAnd did not detect it correctly. Maybe the battery level implementation in the sensor is not correct, but I'm not sure.

Steps to reproduce

Enable bluetooth and location, start OsmAnd's sensor extension and couple the heart rate sensor. Start track recording. (Move) Pause track recording or stop track recording.

Actual result

Battery level seems to be incorrect. No heart rate was recorded.

Screenshot_2024-04-13-17-40-46-33

Expected result

Display correct battery level. Record and display heart rate (correctly).

Your Environment (required)

WARNING Crash-Logs MAY contain information you deem sensitive. Review this CAREFULLY before posting your issue!

OsmAnd Version: 4.7.7
Android/iOS version: 13
Device model: CPH2371
Crash-Logs: ?

Device: Sanitas SPM 230 (https://www.manualslib.com/manual/1635061/Sanitas-Spm-230.html?page=17#manual)

vshcherb commented 1 month ago

Do you see values updated on the screen with battery. It's possible that connection is not well established and you see only snapshot of frozen data. So it's probably bug in connection and not in recording itself, unfortunately we don't have that sensor yet to double check on our side

vshcherb commented 3 weeks ago

If you still have the device and app, please try to connect and share logs