GarminHomeAssistant (Application)
· v3.14
About
** When contacting for support, you must include an email address, or we can't reply. **
Warning! Those who fail to read the copious documentation provided tend to look really silly when making a bad review (and we call you out by reply).
NB. The widget version of this application is available as a separate item in the App Store at https://apps.garmin.com/en-US/apps/559f5174-177f-4f46-b170-f31c7e74dea3 .
A Garmin application to provide a "dashboard" to control your devices via Home Assistant, https://www.home-assistant.io/. The application will never be as fully fledged as a Home Assistant dashboard, so it is designed to be good enough for the simple and essential things. Those things that can be activated via an on/off toggle or a tap. That should cover lights, switches, and anything requiring a single press such as an automation. For some things it will always be quicker and simpler to reach for your phone or tablet... or the device's own remote control!
The application is designed around a simple scrollable menu where menu items have been extended to interface with the Home Assistant API (https://developers.home-assistant.io/docs/api/rest/ ), e.g. to get the status of switches or lights for display on the toggle menu item. It is possible to nest menus, so there is a menu item to open a sub-menu. This can be arbitrarily deep and nested in the format of a tree of items, although you need to consider if reaching for your phone becomes quicker to select the device what you want to control.
The intended audience for this application are those comfortable with configuring a HomeAssistant (e.g. editing the YAML configuration files) and debugging why URLs don't work. It does not require programming skills, but the menu is configured via JSON which feels like "coding".
It is important to note that your homeassistant instance will need to be accessible via HTTPS with public SSL or all requests from the Garmin will not work. This cannot be a self-signed certificate, it must be a public certificate (You can get one for free from Let's Encrypt or you can pay for homeassistant cloud).
Configuration instructions are provided via the GitHub repository at https://github.com/house-of-abbey/GarminHomeAssistant/blob/main/README.md. This is essential reading due to the need to configure a "dashboard" via a JSON definition file served from your Home Assistant instance. Discussion and support will be offered via the Home Assistant Community at https://community.home-assistant.io/t/home-assistant-app-for-garmin/637348 .
Need Help?
1. Read the instructions, https://github.com/house-of-abbey/GarminHomeAssistant/blob/main/README.md
2. Did you copy & paste the settings? Don't re-type its too error prone!
3. Read the known issues, https://github.com/house-of-abbey/GarminHomeAssistant/blob/main/README.md#known-issues
4. Self help from the the trouble shooting guide, https://github.com/house-of-abbey/GarminHomeAssistant/blob/main/TroubleShooting.md
5. Community help from Home Assistant Forums, https://community.home-assistant.io/t/home-assistant-app-for-garmin/637348
6. Double check your settings for copy & paste errors, and your JSON passes both formatting and schema checks.
7. Contact the authors, but be prepared to be embarrassed if its something in the instructions ;-)
More fully thought out bug reports and feature requests best go via the GitHub project (https://github.com/house-of-abbey/GarminHomeAssistant/issues ) please, after you have checked previous posts on the forum and previously closed issues. Check for known issues at https://github.com/house-of-abbey/GarminHomeAssistant/blob/main/README.md#known-issues.
This application is offered FREE to the community in order to give back to it when we have personally taken so much from the contribution of others. Comes with a full money back guarantee ;-) Please be kind and helpful with your feedback! Or better still offer code contributions to the project.
What's new
See https://github.com/house-of-abbey/GarminHomeAssistant/blob/main/HISTORY.md for the full application history.
3.14 Numeric items now support `tap_action.data` fields so service call options like `transition` are catered for. See the documentation on Additional Action Data at https://github.com/house-of-abbey/GarminHomeAssistant/blob/main/examples/Numeric.md#additional-action-data. This features has been provided by @StumblingGamer. Now prevent PIN enabled menu items from being enabled on non-touch screen devices. The PIN must be removed for the menu item to function. Fix for initialising numeric pickers with no user defined template.
3.13 Added support for new devices: d2mach2pro, fr170, fr170m, fr70.
3.12 Amended GPS accuracy values used by the background service.
3.11 Better handling of menus larger than the Glance view can handle. As a result the Glance can no longer verify the availability of the JSON menu as fetching it might cause an "Error: Out Of Memory Error". Provide two user supplied HTTP Headers. Bug fix for the numeric picker.
3.10 Bug avoidance for a fatal "out of memory error" in the glance when caching the menu to Storage. This is now delayed until the main application is opened. Added support for two new devices, D2 Mach 2 and eTrex Touch.
3.9 Small update to warn users with empty menu definitions to read the instructions!
3.8 Added icon for 'numeric' menu items and revised icons in general.
3.7 Bug fix for 'numeric' menu items not working over Wi-Fi & LTE.
3.6 Added 'numeric' menu item type thanks to @thmichel. This allows you to select a numeric value to set for an entity. Confirmations can now display a user supplied message. Schema update to keep pace with HomeAssistant and correct a previous decision.
3.5 Added support for Edge 550, 850 & MTB, Fenix 8 Pro 47mm, GPSMAP H1, Instinct Crossover AMOLED, Venu 4 41mm & 45mm, & Venu X1 devices which also required an SDK update to 8.3.0. The simulation of the Edge 850 device was off, as it failed to update the display and text was the wrong colour, but the buttons menu items operated HA correctly. The assumption is the simulation model is buggy until someone reports otherwise.
3.4 Fixed a bug where templates failed to display in toggle menu items (at least on some devices). Fixed a bug where a menu item requesting to exit on completion appeared to indicate failure when using Wi-Fi or LTE. The fix uses a delay in exiting the application modelled as sufficient for a Venu 2 device, so this might need tweaking for other devices. Attempt to fixed an "Out of Memory" bug caused by v3.3 by making automatic checking for menu updates both optional and automatically turned off when insufficient memory is available. This last bug is device dependent and may require another attempt. Internationalisation improvements with thanks to @krzys_h for a new automated translations script.
3.3 Providing automatic detection for menu definition updates, but still requires an application restart.
3.2 Only enable or disable sensors on Home Assistant when the background service options is changed, i.e. do not call the API to enable on start up every time.
3.1 Added the ability for users to provide custom HTTP headers for their Home Assistant server. Improved German language translations. Removed all groups in settings as the SDK is buggy. Fixed a bug with templates in glances causing application crash on startup.
3.0 First version with the ability to use Wi-Fi or LTE instead of Bluetooth but with limited functionality, thanks to vincentezw.