Refresh delay in openHAB Android

Hello!

Have you experienced too much delay in OHAB app?
In my case:
when i access through the URL: IP:8080/openhab.app?sitemap=home
i see no delay at all, any change is inmediate (i’m using MQTT binding)
BUT:
when using the Android app i have to refresh it manually, i mean, reload the actual map, or entering a group and going back…afterwards, i beleive the app realizes the “icons” have changed and reflect that change

Thanks!!!
Max

I experience the same. I get the spinning buffering indication and white screen on the android app and have to go to the menu option at the top left and select “Main Menu” to get the screen to refresh/appear.

-tp

i think it’s not quite the same …

i exactly experienced that when some item changes (example: switches) its state it’s not reflected in the app, the icons are not changed, but it does in the sitemap webpage

thanks!
Max

I’ve seen the same in Habdroid and the iOS app. Contacts and Switches tend to refresh OK but if I try to do something fancy like use visibility or color I have to either reload the app or go into another frame and come back. Its a bit of a pain but since I rarely use the interface beyond debugging the system I haven’t looked that closely into why.

Yes, I too have inconsistent refreshing in the iOS app.

Is there any way to access the classic UI with a browser on iOS without having to enter user authentication each time?

On iOS the answer is no as far as I can tell. Apple won’t let you create a bookmark with the username and password as part of the URL. :frowning:

That format is https://<username>:<password>@<rest of url>.

That was the first thing I tried when trying to set up my wife’s phone.

One thing you can do is install, configure, and run a VPN on your phone which would put your phone on your local network where ever you may be and set your openHAB security to External.

I also spent a little bit of time looking into adding a certificate to the phones and putting a proxy between openHAB and the external world that would only allow devices with approved certificates through, obviating the need for username and password. But I could never get the certificate to install on my Android so abandoned that long before I could get it to work.

thanks, yes - it’s very annoying of Apple, isn’t it? I suppose that means in practice we have to use the iOS app. Whilst it is in many respects perfect, and I hugely appreciate all the work that was done putting it together, it does have its little quirks…

Frankly, I don’t actually use either app very much on either iOS or Android.

My home automation philosophy is if I have to interact with it routinely it is a failure in the automation. So in my setup there are very few buttons (garage door openers and lights basically). For my wife I created IFTTT Do recipes so she has a dead simple big button to press to activate things (basically three buttons, one for each garage door opener and one for all the lights). I’m on Android so I use Tasker widgets on my home screen to interact with the REST API but usually I only have to use location based triggers. For example, when I get close to home it brings up a dialog asking if I want to open the garage.

Everything else (lights, HVAC, presence detection, door sensors, etc) just does its thing in the background. I generate alerts to my phone in rare cases where something needs my attention (e.g. a door is left open after dark, a sensor stops reporting, etc).

I only ever use the openHAB UIs on any platform when I’m developing or debugging so these limitations on the UIs aren’t that big of a deal to me right now.

Rich, you should write a book about all your hard work!

i’m in the course of learning, everyday a little bit, and seems to be endless. The webpage (local) + android app (using it locally too, same wifi network) + system logs, seems the best option to learn in the stage i am right now, so i can’t do without them. Hope to get a mobile app update or any tip or trick that improves user experience.

Thanks
Max

Don’t think I haven’t considered it. :smile:

But with the amount of time I have these days with a full time job and a toddler at home OH 3 would be out before I finished the book for OH 1.

Besides, spending time updating the wiki and other online docs would probably be more useful over all.

You might be interested in reading some of the ideas presented on this thread.

I’ve toyed with the idea of getting a cheap tablet and building this sort of display myself, even if it does violate my HA philosophy. :slight_smile:

I guess our uses are very different. Only some of my devices are automated. For most, openHAB is mostly a convenient way to put light, heating, door, security control all in one place, rather than with half a dozen different and very poorly written apps. The automation is the icing on top of that…

One thing that accelerated my understanding of openhab was keeping two terminal windows open at all times: one showing events.log and one showing openhab.log. That plus lots of logInfos in my rules really helped clarify what was going on.

This is probably obvious to many people - but it wasn’t for me!

1 Like

I also have this problem with the Android app. Sometimes it refreshes just fine and sometimes it doesn’t refresh and I have to select the sitemap from the menu, or enter a group and go back, to make it refresh.

@belovictor , is this perhaps a known issue with a bug report already raised?

1 Like

It is some kind of known problem. It appears from time to time to some users. It is a problem with REST API long polling in openHAB, not with the apps. As far as I know @teichsta and @digitaldan have spent quite a bunch of time on it and made it working better, but it was not 100% fixed and even happens from time to time to myself. It works 100% fine in openHAB 2 cause @Kai changed the whole mechanism and made it much simpler as far as I know.

FTR: It is a critical issue since January 2014 and nobody was able to fix it so far: https://github.com/openhab/openhab/issues/765

For openHAB 2, I have removed Atmosphere and replaced it with Server Sent Events (SSE). The native Android and iOS apps do not use this mechanism yet, but I have done a very simply long-polling support implementation for backward-compatibility, which seems to work quite well.

1 Like

I understand that OH1 long polling only supports single items. Does this mean that OH2 supports long polling on sitemaps, or am I confusing two separate things?

Separately, does the Android refresh issue go away with OH2, or not yet?

Thank you!

I have implemented a simple long-polling for sitemaps to keep backward compatibility. It is the same mechanism that was in place in openHAB 1 before Atmosphere was introduced. It should work alright, it might only miss updates in case they come in faster than the UI processes the last response, but this is imho acceptable and better than openHAB 1.8.

Hi,

This PR:

resolve for me some problemes of refresh - now I don’t see any delays