Chyuang

Back
Health Tracker

Health Tracker

Grafana dashboard for visualizing Amazfit Helio Strap data via Gadgetbridge. Tracks heart rate, HRV, sleep, stress, SpO2, steps, and more.

Architecture

Helio Strap syncs to Gadgetbridge (Android)
Syncthing syncs DB from phone to Mac
SQLite backup via sqlite3 .backup
Dashboard

Panels

Stat panels (avg values)

Total steps, avg resting HR, avg sleep/night, avg HRV, avg stress, avg SpO2. Color thresholds:

Resting HR: green <60, yellow 60-75, red >75 bpm
Sleep:      red <5h, yellow 5-7h, green >7h
HRV:        red <30, yellow 30-50, green >50 ms
Stress:     green <40, yellow 40-60, red >60
SpO2:       red <90%, yellow 90-95%, green >95%

Timeseries (HR, HRV, SpO2, steps, stress, temp)

SELECT TIMESTAMP as time, HEART_RATE
FROM HUAMI_EXTENDED_ACTIVITY_SAMPLE
WHERE HEART_RATE > 0 AND HEART_RATE < 255
  AND (RAW_KIND & 15) NOT IN (3, 6)  -- exclude not-worn, charging

Filters invalid readings (255 = no data) and excludes not-worn/charging states via RAW_KIND bitmask.

Sleep (state-timeline)

CASE WHEN (RAW_KIND & 15) = 8 THEN 1 ELSE 0 END as sleeping

RAW_KIND 8 = sleep. Value mapping: 1 = "Sleeping" (dark blue), 0 = "Awake" (transparent).

Device Status (state-timeline)

CASE
  WHEN (RAW_KIND & 15) = 3 THEN 2  -- Not Worn (red)
  WHEN (RAW_KIND & 15) = 6 THEN 3  -- Charging (orange)
  ELSE 1                           -- Worn (green)
END as status

Shows when watch is worn, charging, or off-wrist.