3.1 KiB
Next steps
Scratch continuity note for resuming work (e.g. on another machine). The
authoritative design lives in specs/2026-07-02-padel-scoring-design.md and
plans/2026-07-02-padel-scoring.md.
Current status (2026-07-05)
- Scoring app is implemented and working: UI-free
PadelMatchengine (17 unit tests pass in the sim),CourtRenderer,HeartRateProvider, and the View/Delegate/App. Built and verified in the Connect IQ simulator and sideloaded to a real Venu 4 (venu445mm). - UI has been refined beyond the plan: top HR arc gauge in Garmin zone
colors (grey/blue/green/orange/red) with a marker on the current zone and
the bpm number below; proper padel court (net centered, service lines at
the 3m-from-back-wall proportion, center line only between service lines),
wider with a configurable blue surface (
bgColoronCourtRenderer); serve ball marks the back zone; games column white, sets accent green, "Pts"; HR + time on a matchedFONT_MEDIUM. - All committed on
mainand pushed to https://scm.vilanet.fr/kriss/garmin-padel.
Build / run reminder
developer_keyis git-ignored (private signing key) — provide it out of band.- SDK: connectiq-sdk-mac-9.2.0. Device:
venu445mm. - Build:
"$SDK/bin/monkeyc" -f monkey.jungle -o bin/garmin-padel.prg -y ./developer_key -d venu445mm - Run:
"$SDK/bin/connectiq" &then"$SDK/bin/monkeydo" bin/garmin-padel.prg venu445mm - Unit tests: build with
--unit-testthenmonkeydo bin/test.prg venu445mm -t(monkeydo's exit code 1 is a known simulator artifact; trust the in-apppassed/failedsummary).
Input gotcha (important)
The simulator merges the back-swipe and the physical back button into one
onBack, so swipe-left appears to exit the app there. On real hardware they
are separate: swipe-left reaches onSwipe(SWIPE_LEFT) (→ undo, consumed) and
the physical button triggers the default back (→ exit). The delegate relies on
this — test back/undo behavior on the watch, not the sim.
Next feature: record a padel activity
The app currently only displays the score + a live HR readout; it does not
record a Garmin activity (spec §8 deferred). Add session recording via
Toybox.ActivityRecording:
- create/start a session (find the best sport type — native padel/racquet if the Venu 4 exposes one, else a generic training/sport type),
- pause/resume, and save-or-discard at match end (appears in Garmin Connect with duration, HR zones, calories),
- likely show an elapsed activity timer on screen.
Open design questions to settle first (do a brief brainstorm/spec pass):
- Auto-start the session on launch, on the first point, or via an explicit start?
- Which sport type is available on venu445mm?
- Save prompt at match end (save / discard / resume)?
- Where to surface the elapsed activity timer in the layout?
Other deferred items (spec §8)
- Settings screen driving
RulesConfig(golden point, sets, tiebreak) and the top/bottom info slots (incl. the court color already wired asbgColor). - Match history.
- Resume-after-close persistence.