-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Irregular connection issues using Touch V3.10d #3
Comments
Have a look at https://github.com/stawen/okovision - the code is not particularly clean, but it works well...! |
Thanks for the hint, I was not even aware of that project. The nice thing is that it simply queries the JSON data in a lightweight python script, puts all data into an Influx database, and the monitoring then runs in Grafana and can be flexibly adjusted. For some reason, however, the JSON interface regularly has dropouts on my boiler or touch control. I don't think it's related to the python / influx / grafana framework, because it also happens when manually querying the JSON interface in a browser or via curl. |
Thanks for that tip, didn’t know oekofen-spy yet. but aren’t you hitting the rate limit? Had drop-outs too when I called more than once a time a 10 seconds if I’m correct. Did you have oekofen-spy running at the time you did the manual request? |
No, it does not look like I'm hitting the rate limit (should be 2.5s). oekofen-spy is running every 2 minutes, and the behavior is identical if I'm using manual requests (or even just query via a browser once every hour). Hitting a rate limit returns an error 401 with error message(curl - v):
Whereas the erroneous return looks like this:
Interestingly, if I quickly query the same "broken" URL again, it returns the 401 rate limit error - but never the complete data until it's back in a "working" state again after a few hours. |
i may confirm same behaviour in Touch V3.00b 04112019 Version. |
It seems that the issue is caused by German umlauts (äöü) in the JSON response. In my case http://IP:PORT/PASSWD/all and http://IP:PORT/PASSWD/hk1 did not work at all until I changed hk1.name from 'Heizkörper' to 'Heizkoerper'. The phenomenon that hk1 data is not available on nights with higher outside temperature is probaby caused by the 'ü' in hk1.L_statetext='Außentemp über Heizgrenze absenken'. Also pe1.L_statetext='Zündung' breaks the JSON interface. A simple workaround is to change the display language to English. |
Great finding, thanks! Indeed, I had a gut feeling about the name fields and already cleared all of them, but haven't thought about the varying "statetext" fields. It's all working exactly as you described: adding an Umlaut to a name field breaks the corresponding JSON block, removing them and changing the language of the heating control to English makes everything work as expected. Slightly related, oekofen-spy is now available here: https://gitlab.com/p3605/oekofen-spy |
Are there known issues querying the JSON API, especially using the Touch panel of a Oekofen Pellematic Compact running V3.10d ?
I'm querying the JSON API regularly, and over 24h there are multiple time intervals where there is no data returned. E.g. manually running "curl" on all data regularly returns incomplete (broken) data, while querying all sections separately returns most (but not all) data.
Examples:
A few hours later, querying all data work again. From my logs, it affects mostly the "ww1", "hk1", "pe1", or a combination of them.
The heater is connected via cable (all cables and router already swapped and tested, with no success). Known bug?
The text was updated successfully, but these errors were encountered: