Open lsiepel opened 1 month ago
cc @ccutrer
So to be clear, it's not that Home is not receiving updated values for characteristics as the items are updated in openHAB, it's that you've changed the structure of the Accessory, and Home is not necessarily reflecting that changed structure immediately? Can you check your logs for the line Created {} HomeKit items in instance {}.
? That line indicates we incremented the configuration revision we publish to Home, telling it to refresh its cache of the accessory structure. If you instead see Created {} HomeKit items in instance {} (no change from prior configuration).
, then we didn't increment the configuration revision, and it's a bug. It's also possible you won't see either of those log lines, but I think the probability of that is extremely low. But most likely, I expect it to be a similar case to what's described in the README - Home app simply has a hard time sometimes figuring out large structural changes to existing accessories.
You are right; it is me changing the structure in openHAB, and that is not reflected in home app.
Sorry to say, but I don’t see either log when adding a valve to an existing irrigation item.
When I rename the irrigation item id with a version suffix (like v2 or v3) I do see the log Created {} HomeKit items in instance {}
but only then all valves show up.
Did some testing after i encoutnered this weird issue, also mentioned here.
I have setup this irrigation system:
At some point in time it showed the Irrigation system without any valves. The steps i took where:
gr_buiten_achter_irrigatie_v2
, now it showed only one valve, due to me commenting out valves 2 and 3.gr_buiten_achter_irrigatie_v3
it reloaded ande the Home app now shoes all three valves.My first conclusion is that when the items file is reloaded and the definiton of the irrigation system changes, it is not propagated to the home app as it is not detected as a change. This might be due to the item revision logic (PR here not handling such case or maybe this PR that persists data that would need a refresh in this case ? Both are assumptions, it might be something totally different.