Lock into your zone. Hit the start line ready.
ZoneLock is an autonomous Wear OS application for Samsung Galaxy Watch 7 that guides athletes through intelligent warm-up sessions before competition — no phone required. Using real-time heart rate monitoring, ZoneLock dynamically instructs you with cues like "Sprint!" or "Easy pace" to progressively build your heart rate into the optimal performance zone.
Built for water sports, rowing, and endurance athletes.
- 🫀 Real-time heart rate monitoring via Health Services API
- 🎯 Dynamic warm-up guidance — adaptive cues based on your current HR zone
- 📴 Fully autonomous — works without a phone connection
- 🚣 Sport-specific profiles — optimized for rowing and water sports
- 💾 Local session storage — sessions saved on-device, synced to phone later
- 📊 Post-session sync — review progress and competition readiness on the companion app
ZoneLock uses your maximum heart rate (220 − age) to define training zones. During a warm-up session, it reads your live HR every second and instructs you to speed up or ease off to hit the target zone progressively.
Zone 1 (50–60% HR max) → "Easy pace — keep it light"
Zone 2 (60–70% HR max) → "Steady rhythm"
Zone 3 (70–80% HR max) → "Pick it up"
Zone 4 (80–90% HR max) → "Sprint!"
Zone 5 (90–100% HR max) → "Peak zone — hold it"
| Layer | Technology |
|---|---|
| Language | Kotlin |
| Watch UI | Jetpack Compose for Wear OS |
| Heart Rate | Health Services API (Wear OS) |
| Local Storage | Room Database |
| Phone Sync | Wearable Data Layer API |
| Mobile App | Kotlin + Android (companion) |
ZoneLock/
├── wear/ # Wear OS app (Galaxy Watch 7)
│ ├── sensor/ # Heart rate reader (Health Services)
│ ├── logic/ # Warm-up zone engine
│ ├── ui/ # Compose for Wear UI
│ └── storage/ # Room DB — local session storage
│
├── mobile/ # Android companion app
│ ├── sync/ # Wearable Data Layer sync
│ ├── history/ # Session history & charts
│ └── profile/ # User profile (age, sport, HR max)
│
└── shared/ # Shared models & constants
- Samsung Galaxy Watch 7 (Wear OS 5)
- Android phone with Android 10+
- Android Studio Hedgehog or newer
- Wear OS emulator or physical device for testing
# Clone the repository
git clone https://github.com/NorbertAguilera/ZoneLock.git
# Open in Android Studio
# Select the 'wear' module to run on Galaxy Watch 7
# Select the 'mobile' module to run the companion app- Open the project in Android Studio
- Connect your Galaxy Watch 7 via ADB over Wi-Fi
- Run the
wearmodule on the watch - Set your profile (age, sport) on the mobile companion app
- Start a warm-up session directly from your wrist
- Project setup & architecture
- Heart rate sensor integration
- Zone detection engine
- Warm-up cue system (vibration + screen)
- Local session storage
- Mobile companion app
- Phone sync & session history
- Sport profiles (rowing, running, cycling)
- Pre-competition countdown mode
Norbert — built for real competition prep, on the water and off it.