Originally posted by paulockenden
View Post
Beginners guide to graphing Evohome temperatures using python and plot.ly
Collapse
X
-
Originally posted by paulockenden View Post
For me, integrating ST with Evohome was a must, because Mrs O often likes to leave the back doors open, and I'm buggered if I'm going to pay to heat the garden! So I use a cheap ZigBee door sensor, and a ST app which stores the current heating mode, then restores it when she closes the door.
Must have paid for the ST kit by now in gas savings ;-)
P.Originally posted by freeranger View PostDisappointingly simple
I have exactly the same problem - Mrs O must be a doppleganger of my Mrs
I though the TRV's "open window" sensing function would help here because there is a rad right next to the back door, but it's not that helpful if the temp doesn't drop significantly enough - ie it's not the middle of winter!
Hmm..could be the excuse I've been looking for to treat myself to ST. Does this all work out of the box - If door open THEN shut off evohome heating in ZONE XX?Originally posted by paulockenden View PostEvo's open window function only works for 30mins, then resets!
I set the system to off (which is at system rather than zone level), but you could easily tweak the code to just lower the setpoint of a zone instead.
Comment
-
-
Originally posted by paulockenden View PostEvo's open window function only works for 30mins, then resets!
Also I'm sure you already know but its worth pointing out to other readers that the HR92 supports a remote switch for direct triggering of window mode - you could fit a reed switch to the door similar to what you would use for an alarm and run that to the HR92 for direct window mode. This would turn the radiator off as soon as the door was opened regardless of whether there was a temperature drop, and with the maximum 90 minute setting it would be a workable alternative. As soon as the door was closed it would come back on again too. This is quite a bit faster than the temperature based window mode detection which I've found takes about 10 minutes to detect a door has been opened or closed - and only if its pretty cold outside and/or quite windy.
One other point I'd make is that window mode using temperature based detection always works directly on the HR92 using its internal sensor - it doesn't matter whether you have a remote sensor like a DTS92, its the rate of temperature drop measured at the HR92 that triggers window mode. In a multiple radiator single room mode zone an individual HR92 would first detect the drop and enable window mode - this sends a window mode command back to the evotouch and I believe (but can't test as I don't have multiple radiator zones) the evotouch will then send out the 5 degree set point to other radiators in the zone.
I assume this would also happen if you used a window mode switch - in which case the HR92 that the door was wired to would turn off and on immediately with the door but any other radiators in the same zone would respond with up to a 4 minute delay.Last edited by DBMandrake; 18 June 2016, 09:06 PM.
Comment
-
-
Hi,
Sorry to bring up an old thread. I have been using the method posted by the OP since I got Evohome around a year and a half ago and in the most part it has done all that I need.
That is until I checked my graphs this morning and notice my Emoncms feeds hadn't received data in 18hrs. I tried running the Python script (evologger.py) manually and notice some errors (when I believe previously, it would have given the current temps within the DOS window.Evo.jpg
Could anyone shed any light at all please? Whilst I do work in IT, programming is pretty far removed from my day job to be honest, so I am out of my depth here
Comment
-
-
Originally posted by Tempted View PostHi,
Sorry to bring up an old thread. I have been using the method posted by the OP since I got Evohome around a year and a half ago and in the most part it has done all that I need.
That is until I checked my graphs this morning and notice my Emoncms feeds hadn't received data in 18hrs. I tried running the Python script (evologger.py) manually and notice some errors (when I believe previously, it would have given the current temps within the DOS window.[ATTACH=CONFIG]1217[/ATTACH]
Could anyone shed any light at all please? Whilst I do work in IT, programming is pretty far removed from my day job to be honest, so I am out of my depth here
As you were.
Comment
-
-
Zones that have no temperature reported (hour glass on the controller or - - on the iphone app) are actually still reported by the API as a number, 128.0 degrees C.
I added a patch to evohome-munin a couple of years ago to handle this and prevent it literally being graphed as 128 degrees. (Which kind of ruins an autoscaling graph )
Comment
-
-
Enhancement to the originalscript
First of all, a big thank you for the posters in this section.
I had my app up and running in very little time.
I collect the data in rrdtool repositories, and use the simple graphing of that toolset for my use. It's adequate as far as I'm concerned.
I did however notice a little problem while querying the server. I use cron to do that every 5 minutes, and just about every 5 to 10 queries results in an exception ( TypeError: list indices must be integers, not str) from this line:
Code:userId = userData ['userInfo']['userID']
Code:userData = [{u'message': u'Request count limitation exceeded, please try again later.', u'code': u'TooManyRequests'}]
To test this, I have used a try-except around the above line, and simply wait for an additional 30 seconds and try again. This always solves the problem. The better solution is to add a few seconds to the 5 min. repetition rate, or use an appropriate sleeptime in the code to extend the 5 min of the cron timer.
The net-net is that it seems that a repetition of 5 minutes is just about on the border.
Comment
-
-
The TypeError is caused by the server sending you a message that you exceeded the number of times with a request. The maximum time seems to be just over 5 minutes. I have put the statement in a try-except and simply wait 30 secs before I try again.
Comment
-
-
Authentication attempts are severely rate limited since about August 2018, so if the script re-authenticates for every polling period you will have problems, even with a 5 minute polling period.
Actual API requests are not rate limited only authentication requests so if the script is re-written to cache the session id or access token (depending on API used) between runs it will solve the issue.
For a very long winded discussion on this issue and how it was solved for the evohome-client library have a look here:
In recent months Honeywell have made substantial changes to their API servers, one of these is that new, aggressive rate limiting has been applied for client connection authentication attempts. Thi...
Without looking back through this thread I'm not sure if it uses watchforstock's evohome-client library - if it does, you'd want to update to the latest version in master and then make some modifications to the script to save and restore session id or access token between runs.
Comment
-
Comment