Why Single-Metric Alerts Fail
Standard Garmin alerts watch one number at a time. Power creeps up a little, heart rate drifts up a little — neither triggers an alert alone, but together you're quietly cooking yourself. By the time one metric finally crosses the line, you've been overcooked for minutes.
The Problem
Single-metric alerts miss the compound effect. Power at 95% of threshold plus HR at 95% of threshold equals a rider heading for a bonk — but no alert fires.
The Solution
Z2 Training Monitor watches power and heart rate together. When both approach their limits simultaneously, it triggers a combined alert — even if neither has individually crossed the threshold.
Key Features
Everything you need for intelligent zone 2 training on the Edge 840
Four-Row Display
Instant power + 30-second normalized power, heart rate, distance, and W' Balance + EF Drift — all visible at a glance with high-visibility typography, plus a sensor-battery overlay on the distance row
Two-Stage Alerts
Inverse video when approaching thresholds, flashing at ~0.5 Hz when exceeded — progressive urgency without taking your eyes off the trail
Dual-Threshold Detection
When both power and heart rate breach warning levels simultaneously, both tiles flash — catching quietly overcooked efforts that single-metric alerts miss
Durability-Scaled W' Balance
Skiba 2012 drain/recovery model with effective CP and W' that shrink as cumulative kJ accumulates (Spragg/Maunder durability research) — a 175 W push that didn't dent W' on trail 1 drains it quickly on trail 9
EF Drift
Coggan/Friel Efficiency Factor decoupling — the cumulative-fatigue gold standard from Allen & Coggan. Validity-gated baseline auto-locks during warmup; never saturates over a 24-hour event the way TRIMP-based Strain does
Fully Configurable
All thresholds plus W' capacity (20000 J), Critical Power (171w), HRrest, and HRmax adjustable via Connect IQ settings — no recompile needed
How the Alert System Works
Three layers of protection keep you in zone 2
- Warning stage — tile background inverts when approaching threshold (e.g., power nearing limit)
- Alert stage — tile flashes at ~0.5 Hz when threshold is exceeded
- Combined alert — if both power AND heart rate are in warning simultaneously, both tiles flash even though neither has individually crossed the alert threshold
- W' Balance alert — warns below 40% anaerobic reserve, flashes below 20%; effective CP and W' shrink as cumulative kJ accumulates so the alert reflects real durability loss
- EF Drift readout — display-only power-to-HR decoupling % vs morning baseline; validity-gated to sustained-aerobic windows ([0.55×CP, 1.05×CP] and HR > HRrest+20) so bursty MTB doesn't contaminate the signal
- Event-day accumulation — baseline and drift persist across activity stop/start and reboot via Application.Storage, resetting at 5 AM local so a pre-event warmup seeds the baseline cleanly
Technical Details
Built With
- Monkey C (Garmin Connect IQ SDK 9.x)
- Connect IQ Data Field API
- Coggan 30-second rolling normalized power
- Durability-scaled W' Balance (Skiba 2012 + Spragg/Maunder)
- EF Drift (Coggan/Friel decoupling, 10-min rolling, validity-gated)
- Persistent Application.Storage with 5 AM event-day reset
- Configurable threshold engine
Requirements
- Garmin Edge 840 (or compatible)
- Connect IQ 4.x+
- Power meter (ANT+ or Bluetooth)
- Heart rate monitor