New in version 1.28.0
New
- Every webhook address has its own signing secret and headers, so pairing one receiver no longer breaks another.
- Backfill reaches back to all your history: 30 days up to 5 years, or everything from your oldest record.
- A card says when battery optimization holds syncs back, with a one-tap fix.
Fixed
- A delivered payload is never sent twice when its log cannot be written.
Send Health Connect and screen time from your Android phone to Home Assistant, MQTT or your own server. No cloud in between, no account, no analytics or tracking SDKs.
Pair with Home Assistant by scanning one QR code, and get 33 Health Connect types and up to a year of history.
Works with any app that writes to Health Connect, such as Samsung Health, Google Health (Fitbit and Pixel Watch), Garmin Connect, Oura, Withings and Gadgetbridge.
Your data goes only to the addresses you enter: your Home Assistant, your MQTT broker or your own webhook. The app contacts no other server.
Home Assistant:
- The Life Dashboard integration, installed through HACS. Scan the QR code it shows and you're paired, with no broker and no YAML. Every synced day lands in Home Assistant's long-term statistics on its own date, so a backfill becomes a year of history.
- Receive, with the integration: a scale or blood pressure monitor connected to Home Assistant sends its readings to the app, which writes them into Health Connect (weight, height, body composition, blood pressure). Samsung Health and Google Health can show the weight and body fat from there. You switch it on per type.
- MQTT Discovery, for a setup that already runs a broker: 24 of the 33 types plus screen time as sensors under one device, with optional TLS and login.
Health Connect:
- 33 types: steps, sleep with stages, heart rate, HRV, blood pressure, blood glucose, VO2 max, skin temperature, cycle tracking and more.
- Every record carries its source app and a stable ID, so a duplicate is easy to drop. Daily totals come from Health Connect itself, so a walk recorded by both phone and watch counts once.
- Each sync sends only what changed since the last one, per data type, edits and deletions included. When a change can't be sent, the payload says so.
- Optional data resolution: send dense series such as heart rate as one summary per 1, 5, 15 or 60 minutes.
- Backfill of up to a year runs in the background and picks up where it left off.
Screen time:
- Time per app, with a day boundary you choose.
- Send every app, every app except the ones you select, or only the ones you select. An app left out never leaves the phone, though the day's total still counts its time.
Webhooks:
- A webhook of your own gets every record in full, including single meals, cycle tracking entries and workout details, which are events rather than sensor values.
- Several URLs, custom headers, optional HMAC-SHA256 signing so your server can verify the sender, and client certificates (mTLS) for a server behind a reverse proxy.
- Automatic retries, plus an outbox that keeps undelivered syncs (a week of them at the 15-minute interval) until your server is back.
- A delivery log in the app, with the payload of each sync.
Automation:
- Syncs on its own at an interval of 15 minutes or longer, or at fixed times, on the days you pick, with quiet hours.
- Home screen widget and Quick Settings tile.
- An intent that Tasker and MacroDroid can use to start a sync.
- A notification when syncs fail several times in a row (you pick 3, 5 or 10).
Also: settings backup and restore (encrypted when secrets are included), in English, Dutch and German.
GitHub releases are built by public CI and carry verifiable build provenance, and the build is reproducible, so F-Droid ships the same signed APK.
Optionally, the separate self-hosted Life Dashboard Stack stores your data in Postgres with Grafana dashboards, and its MCP server lets an AI model that you run yourself read your history. The app itself contains no AI.
Health data needs Android 9 or newer with Health Connect, which is built into Android 14 and later and is a free app from Google Play on Android 9 through 13. Screen time works on Android 8.0 and newer.
Life Dashboard Companion is not a medical device and does not diagnose, treat, cure or prevent any medical condition. Ask a healthcare professional for medical advice, diagnosis or treatment.
Anti-Features
This app has features you may not like. Learn more!
Donate
Versions
Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.
Download F-Droid
-
arm64-v8a
armeabi-v7a
x86
x86_64
This version requires Android 8.0 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
take pictures and videos
This app can take pictures and record videos using the camera while the app is in use.
-
run foreground service
Allows the app to make use of foreground services.
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
android.permission.PACKAGE_USAGE_STATS
-
show notifications
Allows the app to show notifications
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
ask to ignore battery optimizations
Allows an app to ask for permission to ignore battery optimizations for that app.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
android.permission.health.READ_ACTIVE_CALORIES_BURNED
-
android.permission.health.READ_BASAL_BODY_TEMPERATURE
-
android.permission.health.READ_BASAL_METABOLIC_RATE
-
android.permission.health.READ_BLOOD_GLUCOSE
-
android.permission.health.READ_BLOOD_PRESSURE
-
android.permission.health.READ_BODY_FAT
-
android.permission.health.READ_BODY_TEMPERATURE
-
android.permission.health.READ_BODY_WATER_MASS
-
android.permission.health.READ_BONE_MASS
-
android.permission.health.READ_CERVICAL_MUCUS
-
android.permission.health.READ_DISTANCE
-
android.permission.health.READ_EXERCISE
-
android.permission.health.READ_HEALTH_DATA_HISTORY
-
android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND
-
android.permission.health.READ_HEART_RATE
-
android.permission.health.READ_HEART_RATE_VARIABILITY
-
android.permission.health.READ_HEIGHT
-
android.permission.health.READ_HYDRATION
-
android.permission.health.READ_INTERMENSTRUAL_BLEEDING
-
android.permission.health.READ_LEAN_BODY_MASS
-
android.permission.health.READ_MENSTRUATION
-
android.permission.health.READ_MINDFULNESS
-
android.permission.health.READ_NUTRITION
-
android.permission.health.READ_OVULATION_TEST
-
android.permission.health.READ_OXYGEN_SATURATION
-
android.permission.health.READ_RESPIRATORY_RATE
-
android.permission.health.READ_RESTING_HEART_RATE
-
android.permission.health.READ_SEXUAL_ACTIVITY
-
android.permission.health.READ_SKIN_TEMPERATURE
-
android.permission.health.READ_SLEEP
-
android.permission.health.READ_STEPS
-
android.permission.health.READ_TOTAL_CALORIES_BURNED
-
android.permission.health.READ_VO2_MAX
-
android.permission.health.READ_WEIGHT
-
android.permission.health.WRITE_BLOOD_PRESSURE
-
android.permission.health.WRITE_BODY_FAT
-
android.permission.health.WRITE_BODY_WATER_MASS
-
android.permission.health.WRITE_BONE_MASS
-
android.permission.health.WRITE_HEIGHT
-
android.permission.health.WRITE_LEAN_BODY_MASS
-
android.permission.health.WRITE_WEIGHT
-
com.owen282000.lifedashboard.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
5.1 MiB
PGP Signature
|
Build Log
New in version 1.26.0
New
- Workouts carry the sets and laps the recording app wrote, such as a strength app's sets and repetitions.
Fixed
- A phone without Health Connect is told to install it, not to update it.
- Sync Now on the Screen Time tab saves your changes first.
- View and Export on the Health tab use what is on screen without saving it.
- Export no longer offers a CSV that was really JSON.
-
arm64-v8a
armeabi-v7a
x86
x86_64
This version requires Android 8.0 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
take pictures and videos
This app can take pictures and record videos using the camera while the app is in use.
-
run foreground service
Allows the app to make use of foreground services.
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
android.permission.PACKAGE_USAGE_STATS
-
show notifications
Allows the app to show notifications
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
android.permission.health.READ_ACTIVE_CALORIES_BURNED
-
android.permission.health.READ_BASAL_BODY_TEMPERATURE
-
android.permission.health.READ_BASAL_METABOLIC_RATE
-
android.permission.health.READ_BLOOD_GLUCOSE
-
android.permission.health.READ_BLOOD_PRESSURE
-
android.permission.health.READ_BODY_FAT
-
android.permission.health.READ_BODY_TEMPERATURE
-
android.permission.health.READ_BODY_WATER_MASS
-
android.permission.health.READ_BONE_MASS
-
android.permission.health.READ_CERVICAL_MUCUS
-
android.permission.health.READ_DISTANCE
-
android.permission.health.READ_EXERCISE
-
android.permission.health.READ_HEALTH_DATA_HISTORY
-
android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND
-
android.permission.health.READ_HEART_RATE
-
android.permission.health.READ_HEART_RATE_VARIABILITY
-
android.permission.health.READ_HEIGHT
-
android.permission.health.READ_HYDRATION
-
android.permission.health.READ_INTERMENSTRUAL_BLEEDING
-
android.permission.health.READ_LEAN_BODY_MASS
-
android.permission.health.READ_MENSTRUATION
-
android.permission.health.READ_MINDFULNESS
-
android.permission.health.READ_NUTRITION
-
android.permission.health.READ_OVULATION_TEST
-
android.permission.health.READ_OXYGEN_SATURATION
-
android.permission.health.READ_RESPIRATORY_RATE
-
android.permission.health.READ_RESTING_HEART_RATE
-
android.permission.health.READ_SEXUAL_ACTIVITY
-
android.permission.health.READ_SKIN_TEMPERATURE
-
android.permission.health.READ_SLEEP
-
android.permission.health.READ_STEPS
-
android.permission.health.READ_TOTAL_CALORIES_BURNED
-
android.permission.health.READ_VO2_MAX
-
android.permission.health.READ_WEIGHT
-
android.permission.health.WRITE_BLOOD_PRESSURE
-
android.permission.health.WRITE_BODY_FAT
-
android.permission.health.WRITE_BODY_WATER_MASS
-
android.permission.health.WRITE_BONE_MASS
-
android.permission.health.WRITE_HEIGHT
-
android.permission.health.WRITE_LEAN_BODY_MASS
-
android.permission.health.WRITE_WEIGHT
-
com.owen282000.lifedashboard.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
5 MiB
PGP Signature
|
Build Log