SurfBuddy
· v0.38.2
About
https://www.surfbuddy.net
SurfBuddy is a newly developed watchface for Garmin watches that resembles a really great discontinued watchface (For more info see "The story behind the app" below). It is able to display surf forecast and other marine related information on the watch. You can visit https://www.surfbuddy.net for more information, and please support the app (it costs me to run the servers for forecast translation): https://www.buymeacoffee.com/JanSurft :)
Use my feedback boards if you encounter problems or have new ideas or feature requests: https://surfbuddy.hellonext.co
You could also use "Contact Developer", but the feature board helps me to better track issues and feature requests.
# How does it work
Currently you need to set the spot name and set your location hints manually in the settings. The location hint helps choosing the correct spot if there are ambiguous spot names.
The spot information update can take up to 5 minutes after changing the name.
Currently you cannot enter regions as spot names, it must be an actual surf spot.
# Main Features:
- customizable chart view for tide information
- sunrise, sunset, surf conditions (min max)
- swell height, period and direction
- wind speed, gust and direction
Its also possible to customize various colors and layout options for the chart.
# How to set the surfing spot:
Go into the settings of the watchface and set the "Spot name" to your desired surfing spot and save, optionally also set your location hints latitude and longitude so ambiguous spot names are resolved better. The spot information update on the watch can take up to 5 minutes after changing the name, It's a limitation of the watch about the frequency of background requests.
# Where does the forecast data come from:
Currently the app is using Surfline (https://www.surfline.com) forecast data, thanks a lot guys! But because the responses from the surfline api do not fit the size requirements of the Garmin watch I'm hosting my own translation server that offers an API with responses that fit the requirements.
Also in the future this will make the app independent from Surfline-API changes and availability because then I can easily adjust the data source or plug in another data source as backend-API.
# The story behind the app:
About a year ago my most favorite watchface for my Garmin watch was discontinued: https://apps.garmin.com/en-US/apps/d819f156-de65-41c6-8c97-26b997546460#0. A lot of people were sad about this and kept writing into the comments desiring the return of this great companion.
Since then I worked from time to time on a new watchface that resembles it. I'm looking forward to hear about your feedback.
# How to support me:
I'm running some server capabilities for allowing the surf information to be translated into proper responses that are small enough to be handled by the watch. You can support me by "buying me a coffee" here: https://www.buymeacoffee.com/JanSurft. :)
I would be really thankful and of course motivated and able to keep the translation-server running and further develop on the watchface.
What's new
# 0.38.2
- improve api call feedback for retry timeout (5 min)
# 0.38.1
- fix for new api call
# 0.38.0
- discontinue storage compat layer
- support new devices
# 0.37.0
- reduce memory usage
# 0.36.7
- fix clocktime issues
# 0.36.6
- fix screen update on venu devices
- overall stabilization
# 0.35.0
- energy saving update
# 0.34.0
- always show primary swell
- high mem devices (e.g. Fenix6 etc.): rotating swell info when looking on watch
# 0.33.6
- major memory improvements
# 0.33.1/.2/.3/.4/.5
- bug fixes
- add mph to windspeed units
# 0.32.1
- optionally display seconds on highmem devices
# 0.31.0
- reduced memory footprint (fix fr735xt memcrash?)
- bugfixes
# 0.30.1
- layout improvements for some devices
- burn in protection for devices like venu
- elevation unit can be set to: system-default, meters, feet
- major improvements in the source-code and resources (more reuse between all devices)
# 0.29.0/1
- established stable release cycle (with beta app)
- fixed errors by reverting to version 0.27.3 and adding the screen clipping fixes
# 0.27.x
- fix app crashing on settings change
- memory fixes
- new plot style (segmentation plot) -- not available for instinct, fr735xt, and other lowmem devs yet
# 0.26.0
- first support for more devices
Still need some layout fixes for 416x416 and others
# 0.25.0
- caching spots and their values (on some devices over a 100 spots could be cached) - not available for fr735xt, Instinct2/s
- memory watcher
- indicate when data is outdated
# 0.24.1
- caching plot types on highmemory devices
- improved status messages
# 0.23.1
- reduced memory footprint on some devices
- 10-day forecast on plot types wave and wind
# 0.22.1
- support negative tides on restricted devices
# 0.21.0
- support for forerunner735xt
# 0.20.0
- display country of spot on status display
# 0.19.0
- add sunrise/sunset times and tidal times for instinct2 watches
# 0.18.0
- add wind and swell info to instinct watches
# 0.17.2
- better default margin for big devices (280x280) like the Descent Mk2
# 0.17.1
- compat for Instinct Solar 2s
# 0.17.0
- compatibility support for Instinct Solar 2 and 240x240 devices like the delta
- fixing memory problems for very restricted devices
Currently the support for the Instinct Solar 2 is very rudimentary, but I will design and update a fitting UI.
# 0.16.2
Migrating an API change of the translation server to properly handle sunrise/sunset timestamp instead of strings
- fixing a key access error that occured because of updated data queries
# 0.16.0
- properly format times as 24hour, 12hour according to system settings
# 0.15.2
- can show next low + high tide if configured in settings (instead of sunrise/sunset)
- high units reflect the configured unit system (metric vs statute)
- wind speed unit can be configured in settings (kph, knots)
# 0.13.0
- on app update clear storage and recover
- fix possible zero-division error
# 0.11.1
- make plot type selectable (tides, wave, wind)
- make plot style selectable (bar, line) -- possibility to add more in future
# 0.10.0
- location changes and spot-name changes are now properly triggering updates
# 0.9.7
- default to no GPS
- reflect unavailable GPS option in settings
# 0.9.5
- fix null exception on spot-name formatting
- improve and fix layout
- other default properties
# 0.9.1
- fix connection status
- fix update time info format
# 0.9.0
- fix selection of latitude and longitude hints
- print better status information (next update time + possible error state)
# 0.7.2
- improve settings layout
# 0.7.1
- fix out of memory error when no y axis is plotted