Fehler #152
geschlossenBLE-Pulsmesser HRM200 liefert ohne Hautkontakt weiter Puls - Verbindung bricht nicht ab
100%
Beschreibung
Beobachtung¶
Ein HRM200 (BLE) lag während eines laufenden Trainings auf dem Schreibtisch, ohne Hautkontakt. ErControl zeigte weiter einen Puls an (zuerst konstant 64, dann 69/70, später steigend bis über 160), die Verbindung brach nicht ab und der Pulsmesser wurde nicht als verloren markiert. Erst nach einigen Minuten schaltete sich der Gurt von selbst ab.
Ursache¶
Der HRM200 sendet auch ohne Kontakt weiter Heart-Rate-Notifications. Die Pakete tragen immer Flags 0x10 (8-Bit-Puls, R-R-Intervall vorhanden), das Sensor-Contact-Feature (Flag Bit 2) wird nie gesetzt. Seine Beaterkennung rastet auf Störsignale ein: Der Puls läuft geglättet gegen den Wert, der zu den dann konstant etwa 340 ms langen R-R-Intervallen gehört (rund 176 bpm).
Am Körper passen Puls und R-R-Intervalle zusammen (R-R etwa 630 bis 860 ms bei Puls 81 bis 85). Ohne Kontakt weichen sie ab und werden zufällig (0 ms, 555 bis 2366 ms).
Umgesetzt¶
- Das Sensor-Contact-Flag des Heart-Rate-Measurement-Pakets wird ausgewertet (Bit 2 = Feature unterstützt, Bit 1 = Kontakt erkannt). Meldet ein Gurt "unterstützt, aber kein Kontakt", zählt das Paket nicht als Puls. Nach 5 s gilt der Pulsmesser über die bestehende Ausbleiben-Erkennung als verloren (Ergometer-Puls übernimmt, Reconnect läuft).
- Jeder Wechsel des Kontaktstatus steht im Log ("Kein Hautkontakt gemeldet" / "Hautkontakt wieder erkannt").
Bekannte Einschränkung – nicht testbar¶
Beim HRM200 greift diese Änderung nicht. Der Gurt meldet das Kontakt-Feature gar nicht, die Prüfung bleibt für ihn wirkungslos.
Wir können sie außerdem nicht testen: Es steht uns kein Gurt zur Verfügung, der das Contact-Flag setzt und dabei im Betrieb "kein Kontakt" meldet. Das Verhalten ist nur nach der Bluetooth-Spezifikation (Flag-Belegung des Heart-Rate-Measurement) implementiert und nicht an realer Hardware geprüft.
Offen¶
Ein HRM200 ohne Hautkontakt liefert weiter plausibel aussehende Werte, die ErControl nicht von echten unterscheiden kann. Eine Plausibilitätsprüfung (R-R-Intervall passt nicht zum Puls, R-R konstant bei etwa 340 ms) würde nur einen Teil der Müllphase abfangen und birgt Fehlalarm-Risiko bei echten Messungen mit Extrasystolen oder Artefakten. Sie wurde bewusst nicht umgesetzt.