An iOS coaching project that uses live heart-rate input to guide run/walk sessions. The interface can be simple; the behaviour underneath has to account for a changing signal.
How do you turn a live signal into calm, useful guidance?
The interesting problem
A sensor reading is not an instruction. Heart rate changes over time, readings can arrive unevenly, and a wireless connection can disappear. Coaching has to translate those changing inputs into guidance that a person can understand while moving.
From signal to state
Pacewise brings iOS, BLE and state machines together around adaptive run/walk coaching. Representing coaching as states makes transitions a concrete part of the design: what input justifies a change, and what should the runner hear next?
Questions that shape the system
What should happen when a reading is stale? How should guidance behave near a transition? What does a disconnected sensor mean for the current session? These are the kinds of edge cases that make a small interface an interesting systems problem.
Conceptual signal and state diagram. The illustration is not a recorded workout or a training recommendation.