HRM integration with sample-period lifecycle #10
Labels
No labels
area:companion
area:docs
area:shared
area:tooling
area:watchapp
blocker
kind:chore
kind:feature
kind:spike
kind:test
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
robert/PedalPebble#10
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Goal
Read heart rate from the watch's own optical sensor, so HR keeps working even if the phone dies.
Acceptance criteria
health_service_metric_accessiblechecked before subscribing, with a graceful message if unavailableHealthEventHeartRateUpdate, display updated on each eventdeinitand on ride stop - otherwise the HRM keeps sampling fast after exit and drains the batteryFiles
watchapp/src/c/hrm.cwatchapp/src/c/hrm.hUpdate — 2026-08-31: the Round 2 has no HRM
gabbrohas no optical heart rate sensor. This must be handled by the ordinary rules, not by specialcases:
health_service_metric_accessible()returning false leads to theHRfield having no source,so it renders
--and the Effort page auto-hides — no error dialog, no empty pagegabbrowithout#ifdefscatteringgabbroemulator: no crash, no stray HR UIA BLE chest strap would restore HR on the Round 2 and improve accuracy on the Time 2, but was
deliberately left out of scope. See docs/DECISIONS.md D24.