Announcing openHAB for Garmin

Just stumbled upon this thread and stopping by to share 2 things:

  1. When using beta app (v15) (only when I drop the phone at home and go out for a run and open front door with the watch over wifi) on my Fenix 7x I`m getting Sync Failed when try to send 2 commands to one and the same Item with minimal interval. Not biggy, just requires to stop and start watch wifi connection

  2. More importantly - I`m using your apps on a daily basis a lot and really appreciate for enabling me (and my family) to control stuff with a few click on the wrist. THANK YOU, SIR!

2 Likes

Version v1.2.0-beta16 has now been published and includes a workaround for the crashes.
@stonke, could you please test it and let me know whether it resolves the issue on your devices?

I am experiencing the same issue on my Epix Pro Gen 2. As in your case, it usually occurs when I send one command and then another shortly afterward. Unfortunately, that part of the process is handled by Garmin, and the app does not receive any error code or diagnostic information that would help identify the root cause.

What exactly do you mean by stopping and starting the Wi-Fi connection? In my case, simply waiting for a while or restarting the app often resolves the issue.

I have logged this issue here:

https://github.com/openhab/openhab-garmin/issues/227

Thanks! :slight_smile:

Fractional steps for setpoint items on beta 15 and 16 working well, no more crashes. :folded_hands:

1 Like

v1.2.0-beta17 is now available. It fixes an issue introduced by the potential workaround for the crash reported by @stonke. This problem affects all users, so please update as soon as possible.

Latest beta much looks much sharper on the Edge 840. I like the placement of the connection icons better as well.

1 Like

Thanks for the feedback. What does it look like when you activate the focus indicator? In particular, how are the menu item dividers rendered?

I have just uploaded v1.2.0-beta19.

Updates

This version fixes an issue affecting Wi-Fi sync on Edge 850 and potentially other Edge or newer-generation devices (#262). It turns out that the Connect IQ API handles Wi-Fi sync somewhat differently in the simulator compared to physical devices, and even between different device models. The implementation is now more robust and accounts for the cases encountered so far, although only broader real-world testing will reveal whether additional edge cases appear on other devices.

In addition, this beta addresses several cosmetic user interface issues (#277, #279, #281).

What remains to be done

I am still facing two Garmin firmware bugs that severely hinder usability on the Edge 850 and presumably also the 550. These issues cause the focus indicator to appear on the wrong menu item (#268) and prevent the settings menu from being reached (#253).

On the 850 this is still manageable because touch input works. The bigger problem is the 550, which relies entirely on buttons.

Does anyone here have a physical Edge 550 available for testing?

@g_g_rich, another request for testing:
On your Edge 840, when using the buttons to scroll down past the last menu item, does it enter the settings menu or wrap directly back to the first menu item?

The other open issue is the occasional “Sync Failed” error observed by @agrarina and myself (#227). I am still investigating whether there is anything the app can do to prevent this. So far, it appears to affect only certain devices. I see it regularly on my Epix Pro Gen 2, but I have not encountered it yet on the Edge 850.

Using the buttons on the Edge 840 the selector wraps to the top and you cannot navigate to the setting.

1 Like

Beta 17 works great - very smooth and stable to me

Thanks!

I have yesterday uploaded v1.2.0-beta21, which includes a workaround for this issue. On the Edge 540, 840, MTB, 550, and 850, the settings menu is now displayed as the last item in the homepage root menu. This approach was already implemented for touch-only devices such as the Venu series and the Edge 1040 and 1050, so the adjustment was straightforward.

This release also introduces a workaround for the focus indicator issue on the Edge 550 and 850. As a button-only device, the Edge 550 requires a focus indicator. Due to the nature of the bug, it was only possible to implement a subtle indicator on the left edge of the screen. It is slightly visible, but once you are aware of it, it works. On the Edge 850, the focus indicator has been disabled. The recommended way to operate the app on this device is via touch interaction.

Thanks! Where the crashes frequent enough before that you could say now they are gone?

Definetely gone! Tried intensively to catch any bug but beta build 17 looks really solid - well done :slightly_smiling_face:

1 Like

@stonke Great to hear that. I’m sure other developers in the Garmin forum who are dealing with the same issue will be happy about it as well.

1 Like

I have just uploaded v1.2.0-beta22.

This version mainly focuses on internal code improvements. I removed redundancies and streamlined how menu items send commands, as well as how text states are formatted.

From a user perspective, the only visible change should be that all text states are now responsively sized together with their labels. Previously, this was already implemented for text and generic switches, but not for setpoints, sliders, and some other widgets.

In addition, all states are now updated locally immediately after a command has been sent successfully. The app no longer waits for the next sitemap update to reflect the change. This behavior was previously implemented for some widgets, but not consistently across all of them.

Although I have not explicitly labeled it as such, I would now consider this version a release candidate. If no further issues are reported, I plan to publish the final v1.2.0 release in about a week.

@mvbergen Regarding displaying states on WiFi, let’s consider this for v1.2.1 so that v1.2.0 does not turn into a never ending story.

I have collected some ideas in GitHub ticket #258 and would appreciate your thoughts. If you are active on GitHub, feel free to comment there. Otherwise, I can open a new thread here so we can discuss it separately.

1 Like