Add Health Connect "Female health" sensors (menstrual cycle data) #4499
Unanswered
proffalken
asked this question in
Android
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Describe the feature
Android's Health Connect platform has a "Female health" category of record types — MenstruationPeriodRecord, MenstruationFlowRecord, and IntermenstrualBleedingRecord — that's already populated for a lot of users today by period-tracking apps (Flo, Clue, Samsung Health, etc.) that write into Health Connect. The companion app's HealthConnectSensorManager already reads a wide range of other Health Connect record types (steps, heart rate, weight, sleep sessions, blood pressure, and more), but none of the Female health category. So the data is sitting in the same platform the app already talks to — it's just not in the sensor list.
Because of that, anyone who wants this in Home Assistant currently has to reach for a separate, unofficial integration outside Health Connect entirely — e.g. Cyclist (https://github.com/ringleader/cyclist) or HA_menstrual_gauge (https://github.com/nremey/HA_menstrual_gauge) — instead of just enabling a sensor the way you would for any other Health Connect metric.
Add MenstruationPeriodRecord and MenstruationFlowRecord (ideally also IntermenstrualBleedingRecord) to the sensor manager's supported record map, following the same permission-gated, opt-in pattern as the existing Health Connect sensors.
Use cases
I'm raising this on principle rather than a personal need — it stood out that the app tracks a long list of health metrics but has no path to reproductive health data, despite Health Connect already supporting it. But the practical uses are the same as any other Health Connect sensor: the obvious one is shopping-list automation, e.g. auto-adding period supplies a day or two ahead of a predicted start date, the same way people already automate grocery restocking from other sensor data. Beyond that: cycle-aware reminders/notifications, and surfacing the data on a shared household dashboard the way heart rate or sleep already are.
Examples
Two community projects already prove this is buildable and wanted — Cyclist (https://github.com/ringleader/cyclist) and HA_menstrual_gauge (https://github.com/nremey/HA_menstrual_gauge) — both built entirely outside Health Connect because there's no official path to the data. The ask here is just for the companion app to read what's already there, the same way it reads every other Health Connect category.
Anything else?
Unlike most of the record types already supported, MenstruationFlowRecord.flow is a discrete enum (Light/Medium/Heavy/Unknown) rather than a continuous quantity like steps or heart rate, and MenstruationPeriodRecord is a duration/period record rather than a point sample — closer in shape to how sleep sessions are already handled than to a typical numeric sensor, so the existing SleepSessionRecord handling is probably the closer template to follow. Given how sensitive this category of data is, it should stay strictly opt-in and be called out explicitly in whatever settings UI ships it.
Related iOS request: https://github.com/orgs/home-assistant/discussions/4498
All reactions