Data Field: Surf Tracker

[FONT=Arial Black]Surf Tracker[/FONT]

Version 1.20

Track your surfing sessions in real time! This data field estimates the number of waves ridden using a speed and time threshold to mark the start and end of a wave ride.

Info shown (from left to right):

  • your total number of waves ridden and the total wave ride time (min:sec)
  • for your latest wave ride: wave ride time (seconds), maximum speed during the wave ride (km/hr or mph) and the distance covered (meters or yards)
  • the numbers in red show the maximum values for the wave ride time, speed and distance during the activity
  • For square watches, the bottom line shows the time of day and elapsed time of the activity. For round watches and the Vivo HR, the top line shows the time of day and the bottom line shows the elapsed time.


1) This data field must be used in a 1-field data screen and should be set up before starting the activity. I use an Activity > Other > Paddle, but any activity with GPS ON should work. Open water swim will work but the GPS tracks are noisier since the sampling rate is lower, but it may be the better option for surfing when your arm is in and out of the water. Some activities smooth the speed data more than others and will give less accurate results (eg. a walking activity will not work as well as paddling or cycling). Vivoactive users try the Cycling activity, the Run activity will smooth the speed values to much to even out the Pace and this won't work well with the wave detection.

2) The summary stats and a speed plot are saved to Garmin Connect once the Activity is ended and saved:

3) This has been tested many times with standup paddle surfing. It has taken a while to get the thresholds working accurately. The detection thresholds can be changed using the Garmin Connect Mobile app (see for help):

There are four settings to mark a wave ride based on speed, time and distance.

An event starts when the speed is >= 9 kph, it must last at least 6 seconds (above 9kph) and have a max speed of at least 13 kph to be counted. The event ends when it falls below 9kph. The min distance is set to 0m, but this can be changed to avoid false detections. These thresholds work well for standup paddle surfing, but try changing them and post your results. It should work for: standup paddle surfing, surfing, kayak surf, surf ski and maybe standup paddle downwinding.

Threshold ranges and defaults:
1) Start/stop threshold: default 9kph, range 5-50 kph
2) Time threshold: default 6s, range 2-60s
3) Max speed in event has to be >= 13kph, range 0-50kph
4) Min distance: default 0m (disabled), range 0-1000m

Typical values:
Standup paddle surfing: general setting for all waves
9kph, 6s, 13kph, 0m

Standup paddle downwinding (Hood River)
10kph, 10s, 12kph, 20m

4) The stats from each wave ride can be saved to a text file using the instructions at the bottom of the page (advanced users only, unsupported).

----------------- Planned Updates------------------

1) none hopefully

----------------- Version History ------------------

0.2 datafield now updates even when not visible.

0.3 added min distance to threshold test (now min 9km/hr for 5s and 15 m) to avoid paddling out/false wave counts, especially for SUP (eventually these values will be user selectable).

0.4 more tweaks after on-water tests (now min 9km/hr for 6sec), 19 waves and only 2 false readings and that was when I was chucked over the falls...

0.5 changed totdist and elapsed time to use the last good point of the event, instead of first one below the threshold, since when falling in it might take a while to get gps fix again and this will add to the waveride time. This should only decrease the wave ride time. The threshold test is now: >= 9km/hr for >= 6 sec and maxspeed >= 13 km/hr, redesign screen, add total wave ride time in min:sec

0.6 add fenix support.

0.7 bug fixed- crash when data field is in view and GPS just becomes active

0.8 D2Bravo, Epix and Vivoactive (separate app) support, compile using SDK 1.1.4. Latest numbers are green during an event (shows green if above speed threshold, even if below time threshold).

v0.9 new SDK 1.2.1, support for fr230/fr235

v0.95 new SDK, 2.1.3, support for Vivoactive HR

v1.0 added GCM settings for thresholds, changed distance calculation (should be shorter and more accurate), added 1 field Vivoactive support (got rid of the separate version)

v1.20 Garmin Connect summary stats and wave speed plot output
** Advanced user only+unsupported method to save each wave ride to a text file on your device:

Place a *.TXT file in the /GARMIN/APPS/LOGS folder on your device, where * is the name of the .PRG file in the /GARMIN/APPS folder. Look for a file that is ~12 kilobytes. On my device it is 69SI5820.PRG, so I would create an empty file in /GARMIN/APPS/LOGS/69SI5820.TXT

To find out the filename, uninstall Surf Tracker, make a note of the *.PRG files in the /GARMIN/APPS folder, install Surf Tracker then note which PRG file is new.

Sample output format:
Wave# TimeofDay WaveRideTime(sec) WaveRideMaxSpeed(kph) WaveRideDistance(m)
1 07:26 20 28.8 113.4
2 07:28 13 27.6 76.8
3 07:33 21 30.2 122.2

Copy the file to your computer after a few sessions. I copy and paste the details into the notes section of the activity on Garmin Connect. The file will be appended to until it gets too big (10KB), then it will be overwritten. I had 3 days of sessions saved and it was only 1.8KB.
  • Mate, this looks awesome. Haven't got a chance to try it yet but well done.
    Wondering if this could also be worked for ski/boarding runs - dunno if the chairlift speed would set it off though?
  • Thank you for the comments ADCORDS. If you mean will it work to track sections of your ski/board run that were above a certain speed for a set time, then yes it should. I think eventually the threshold settings will be user selectable (Garmin may add this at some point) so you could tweak it to work using any speed/time values you want. As for the chairlift you could either pause/resume manually, or I think the ski/board profile pauses automatically on the lift?
  • Hi BWD, I installed you surf tracker on my Fenix3 running firmware 2.3. On first install attempt the watch reset itself. Second attempt installed ok. I added it to a 1 field data screen in activity-other-paddle which I renamed Surf. However once I start the activity and scroll to your data field all I see is a green screen. Watch also reboots sometimes when your screen is showing. Maybe I am doing something wrong or it is a Fenix3 issue. Actually I just tried the graphical heart rate data block. While it is not causing resets, it is only showing a green screen too. So must be a firmware issue.
  • The Fenix 3 will not start ConnectIQ data fields until the activity is started. When the activity is not started it should show a ConnectIQ logo. Previously the device filled the field with the green color because the ConnectIQ logo had not been added. The device is working as intended, but your software is out of date.

    You should update to the 2.90 version of Fenix 3 software. This will replace the green screen with the ConnectIQ logo, and is likely to improve the stability issues you are seeing.
  • My understanding is the 2.90 update has been withdrawn. So I cannot update to it. But I take your point about the green screen and missing logo.

    If I start the activity and scroll down to the BWD data field, the watch crashes and resets.

    So for now I have disabled BWD and will await a new firmware.
  • Hi Ticka: thank you for testing it out and for the feedback. Sorry for all of the problems. Hopefully it is a Fenix 3 firmware issue and a new version will be out soon. If it still crashes then I may be able to reduce the memory size a bit, but it does seem to run fine on the 920 and in the simulator.
  • A data field (or any Connect IQ app) should not cause the device to reset, so I've filed a ticket to investigate this crash. Generally, a buggy app should only crash the app (display the IQ logo with and exclamation mark like Brian described). This may be more related to the Fenix 3 firmware than anything, so I'll give it a test on 2.90, and then try a newer release. We've had a couple of internal releases to address some of the known issues, and I believe we have a 3.xx release that should be made available to the public soon. I'll update here once I know more.
  • This may be more related to the Fenix 3 firmware than anything, so I'll give it a test on 2.90, and then try a newer release.

    It will be interesting to hear how the surfing is in Kansas :)
  • It will be interesting to hear how the surfing is in Kansas :)

    You just need the right equipment. I generally recommend the Conestoga line of boards, since they're more resilient to our abundant flint and limestone. Plus, if you sharpen your rails, you can bring in the harvest while having fun at the same time!
  • Hello,

    I just bought my fenix 3, i can't wait to try your app !
    Such a good job !
    Well done.

    As i said i will compare with the Rip Curl watch that a friend has. Maybe it will help you to increase accuracy ?!?

    See you