Hey Connect IQ community!
I'm excited to share Breakfinder, a surf session tracking app I've been developing for the past months. As a surfer and software developer, I finally built the tool I always wanted on my wrist.
What is Breakfinder?
Breakfinder is a dedicated surf session tracker that automatically detects and counts your waves using accelerometer data combined with GPS speed validation. It syncs with the breakfinder.surf web platform for detailed session analytics.
Search "Breakfinder" in the Connect IQ Store to install.
Key Features
Automatic Wave Detection
- Uses accelerometer + GPS speed validation (minimum 11 km/h to trigger)
- Filters out false positives from walking, duck-dives, and wipeouts
- Haptic feedback when a wave is detected
- Manual wave counting via BACK button as backup
Activity Classification
- Distinguishes between Waiting, Paddling, and Riding states
- Tracks time spent in each activity
- Paddle rhythm detection (0.5-2 Hz frequency analysis)
Session Stats
- Total session duration
- Wave count (auto + manual)
- Average and max wave distance
- Heart rate monitoring
- Calories burned
- GPS track for each wave ride
- Paddle vs. ride time breakdown
Live Surf Conditions
- Real-time wave height, period, and direction
- Wind speed and direction
- Water temperature
- Tide information
- Data from your home spot before you paddle out
Offline Support
- Sessions queue locally when no connection
- Auto-syncs when connectivity returns
Supported Devices (60+)
Tested primarily on Instinct 2S, but compatible with:
- Instinct 2/2S/2X, Instinct Crossover, Instinct 3 series
- Fenix 6/7/8 series
- Forerunner 255/265/955/965
- Venu 2/3 series
- Enduro 2/3
- MARQ series
- Descent series
- D2 series
Requires Connect IQ 4.0+
Technical Details (for fellow developers)
Memory Management
The Instinct 2S only has 32KB available, so I implemented memory tiers:
- LOW memory (Instinct 2S): Core wave detection only, reduced buffers
- STANDARD memory: Adds ActivityClassifier for paddle/ride/wait tracking
- HIGH memory (Fenix 8, Venu 3): Adds experimental ManeuverDetector
Wave Detection Algorithm
The key breakthrough was GPS speed gating. Accelerometer alone triggers on everything (walking, arm movements, etc.). Adding a minimum speed threshold solved this:
- Minimum 3.0 m/s (11 km/h) to START wave detection
- Minimum 2.2 m/s (8 km/h) required DURING wave ride
- Minimum 3.3 m/s (12 km/h) average speed validation at wave end
Duck-Dive Filtering
Early versions counted every duck-dive as a wave. Fixed by analyzing vertical vs horizontal G-force ratio. If vertical G exceeds horizontal G by factor 2.0 and is above 0.8G, it gets filtered as a duck-dive.
Battery Consumption
Approximately 8% per hour with GPS + accelerometer active. Acceptable for 2-3 hour sessions.
Setup Requirements
This app requires a free Breakfinder account:
- Create account at breakfinder.surf
- Go to Sessions, then click "Connect Garmin"
- Copy your API token
- Paste in Garmin Connect Mobile, go to Apps, then Breakfinder, then Settings
Full setup guide available at breakfinder.surf/garmin-setup
Roadmap
Version 1.1 "Reading the Lineup" (Current):
- Wave intelligence: Paddle vs. Ride detection
- Dynamic wave duration tracking
- Max speed per wave
- Duck-dive false positive filtering
Version 1.2 (Planned):
- Maneuver detection on supported devices (Bottom Turn, Cutback, etc.)
- Improved GPS track visualization
- Session comparison
Feedback Welcome
I would love to hear from fellow surfers and developers:
- Feature requests?
- Bug reports?
- Questions about the implementation?
Drop a comment or email me at [email protected]
Links
Connect IQ Store: apps.garmin.com/.../6127de13-7f60-4360-9d45-7fa057de353f
Website: breakfinder.surf
Support: [email protected]
Made by a surfer, for surfers. No kook features, no public leaderboards, just pure session tracking.