# Lappy firmware v0.0.3

Track Session now renders faster-than-best values in green (#4ADE80), replacing blue. A native UI regression asserts the colour.

Drag now has a shared firmware/desktop timing engine for 0–100, 60–160, 100–200 and 200–300 km/h; 0–60, 40–80, 60–120 and 120–180 mph; standing quarter/half mile; and 100–0 km/h / 60–0 mph braking. All detectors are disarmed at boot and operate independently of the displayed page once explicitly armed. The release fixes rollout at zero and uses interpolated receiver timestamps, speed integration, conservative GPS quality/cadence gates and explicit invalidation.

Tap the Live timer to choose a test. Swipe through Live, three Results banks and Details; result cards select a test. ARM ALL / DISARM ALL control the batch, and NEW RUN starts another after active detectors have finished. Completed/invalid attempts are structured records in the raw capture; valid personal bests save asynchronously to NVS. The simulator generates GPS motion and runs the same engine, including completed and GPS-loss replay scenarios.

Both V1 and V2 images are included. The main task stack is now 24 KiB, with larger BLE worker/console/storage/telemetry task stacks for the expanded view and result handling. Tests cover analytic motion at 5/10/25 Hz, noisy/invalid/discontinuous inputs, fragmented encoded GPS, result extraction and UI controls. See DRAG_ENGINE.md and VALIDATION.md for the timing policy, limits and evidence.

Street retains its existing Drive/Trip/GPS implementation; STREET_STATUS.md lists remaining work. Track measurement, actual circuit packs and automatic battery shutdown remain unimplemented. Physical Dragy timing accuracy and electrical/display behavior still need hardware validation. Previous release archives remain unchanged.
