Monitoring Evohome temperatures for multi-room zones with HGI80?

For heating/cooling related questions in Domoticz

Moderator: leecollings

Post Reply
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

Hi,

I'm running Domoticz under windows and I've successfully setup all my Evohome devices (Evotouch wifi controller, 12 zones with HR92s and Hot Water) and I'm monitoring the system using both the usb HGI80 device and the web scripts. I have 2 zones which are set-up as multi-room zones on the Evohome controller, but these two zones don't report their temperatures correctly in Domoticz via the HGI80 (the temperatures appear OK in the script-based devices). The temperatures just appear fixed for many hours and only change two or three times a day by a few degrees. I've managed to run Domoticz with the debug option set in the evohome code and I can see from the log that the two zones don't regularly report their temperatures via the HGI80. I've checked that it isn't a signal problem by testing the setup in multiple locations, but still get the same result. Does anyone else have a similar set-up with multi-room zones working with the HGI80 or any ideas how to extend the evohome code to work with these zones? I've started to examine the evohome code to see if I can work out why these zones might not be working, but I spent a few days just to work out how to successfully re-build Domoticz in Visual Studio 2015 to enable debugging in the evohome code, so it's going to be a slow process :) .

I've attached a graph for one of the multi-room zones temperatures reported by the HGI80 and the script to show the differences (pink:web script, orange:HGI80).

Thanks,

Dan
Attachments
Multi-room zone.jpg
Multi-room zone.jpg (81.66 KiB) Viewed 4728 times
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
PaulOckenden
Posts: 10
Joined: Friday 25 March 2016 12:59
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by PaulOckenden »

Did you get any further with this?
PaulOckenden
Posts: 10
Joined: Friday 25 March 2016 12:59
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by PaulOckenden »

a multi room zone can't use an external temperature sensor, if you think about it. The whole point of this zone type is that each rad is controlled independently.

I'm seeing exactly the same issue. A multi room zone with two HR92s. Oh, and no room stat!

P.
User avatar
StanHD
Posts: 347
Joined: Friday 12 July 2013 16:09
Target OS: Windows
Domoticz version:
Location: East Sussex, UK
Contact:

Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by StanHD »

I'm little confused by the above comments. I have the HGI80, 4 x radiator valves, 2 x zone actuators, and each are configured to act upon carefully placed individually associated remote thermostats. (Round Type). The data from the temperature sensors within the radiator valves is ignored because this is configured during the pairing process carried out during setup. In my system, both the Evohome controller and Domoticz report as expected. So the radiator valves become actuators only.
Domoticz Main - Intel nuc, Windows, RFXTRX433E. Lan Relay Boards, Aeon Z-Stick Gen 5, Evohome HGI80, Milight WiFi, MySensors Ethernet Gateway, Harmony Hub
Python:- Broadlink RM2, Sonos
HA-Bridge - Amazon Echo / Alexa
User avatar
StanHD
Posts: 347
Joined: Friday 12 July 2013 16:09
Target OS: Windows
Domoticz version:
Location: East Sussex, UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by StanHD »

I see what you mean. When I received my T87RF & BDR91 (Thermostat & Relay Box), they were "Pre-Paired", so I needed to reset them and then run through the Zone set-up from the controller.
Also I added the wireless thermostats after trialing the valves with their "In-Built" thermostats for a few weeks. Again the Zone set-up needed to be re-run to "detach" the in-built thermostat and "attach" the new external thermostats to the zones.

Also here is an extract from my log. It would appear that the data is received in a "burst" every 3-4 minutes, but with several results per zone:-

2016-04-06 13:46:35.590 (Evohome HGI80) Heating (Hall Evo)
2016-04-06 13:46:35.627 (Evohome HGI80) Heating (Bedroom Evo)
2016-04-06 13:46:35.660 (Evohome HGI80) Heating (Lounge Evo)
2016-04-06 13:46:35.690 (Evohome HGI80) Heating (Guest Room Evo)
2016-04-06 13:46:35.720 (Evohome HGI80) Heating (Living Room Evo)
2016-04-06 13:46:35.752 (Evohome HGI80) Heating (Kitchen Evo)
2016-04-06 13:46:35.782 (Evohome HGI80) Heating (Hall Evo)
2016-04-06 13:46:35.812 (Evohome HGI80) Heating (Bedroom Evo)
2016-04-06 13:46:35.842 (Evohome HGI80) Heating (Lounge Evo)
2016-04-06 13:46:35.872 (Evohome HGI80) Heating (Guest Room Evo)
2016-04-06 13:46:35.902 (Evohome HGI80) Heating (Living Room Evo)
2016-04-06 13:46:35.932 (Evohome HGI80) Heating (Kitchen Evo)
2016-04-06 13:46:35.962 (Evohome HGI80) Heating (Hall Evo)
2016-04-06 13:46:36.945 (Evohome HGI80) Heating (Bedroom Evo)
2016-04-06 13:46:37.995 (Evohome HGI80) Heating (Lounge Evo)
2016-04-06 13:46:39.045 (Evohome HGI80) Heating (Guest Room Evo)
2016-04-06 13:46:40.095 (Evohome HGI80) Heating (Living Room Evo)
2016-04-06 13:46:41.145 (Evohome HGI80) Heating (Kitchen Evo)
2016-04-06 13:46:42.195 (Evohome HGI80) Heating (DHW)

Don't know if any of that helps? (Apologies if not) :)
Domoticz Main - Intel nuc, Windows, RFXTRX433E. Lan Relay Boards, Aeon Z-Stick Gen 5, Evohome HGI80, Milight WiFi, MySensors Ethernet Gateway, Harmony Hub
Python:- Broadlink RM2, Sonos
HA-Bridge - Amazon Echo / Alexa
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

Hi,

Thanks for all your posts. Apologies for not replying for a long time, I didn't realise that my profile was set to not receive notifications. I've not had the chance to spend much time debugging the evohome.cpp code until today. I'm understanding the code a little more now, but not made any breakthrough :(. I was hoping that my system might be issuing a command that wasn't known to the code, but this currently doesn't look to be the case as the only command which is flagged in the error log is the known short 0x1f09 command which looks to be something like a reset/keep-alive type message. I also get about 2-5 'invalid message structure' messages per hour, but I think these are probably just the corrupted messages due to interference. Weirdly, I did see an unknown 0x0100 command during initial testing this morning, but after a further 3hours of monitoring after a recompile to add some more debugging these have disappeared, so I assume they were just a couple of corrupted messages. With the debugging switched on I see a regular bunch of messages of the following structure which are the temperatures sent from each HR92 sensor every 10min:

evohome: ZONE_TEMP: Zone sensor msg: 0x11e46d: 0: 2020

The msg: value appears to be the device ID, but I can't see a way of linking these back to the actual zones defined in the Evohome controller. I assume that the controller maintains a list of these which are obtained during binding, but it's odd that it omits the multi-room zones when the controller spits out the batch of temperature for all zones. The ZONE_TEMP messages direct from the controller all contain the zone number and a fixed msg: value which matches the controller ID.

I had wondered as some of you have mentioned that possibly my Evohome set-up is the problem and my 2 multi-room zones may be incorrectly bound. Paul, it's reassuring to hear that you see the same issue on your Domoticz setup. So I'm currently not planning to mess with all my Evohome device binding to test whether this has any effect. I'll continue to mess with the evohome.cpp code to see if I can make any progress. Keep the ideas coming!

Dan
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

Hi,

Thanks for your reply and thoughts on the Evohome setup. I believe that both of the multi-room zones are set-up and working OK and the temperatures appear to being managed well by the system. The scripting method of monitoring Evohome with Domoticz confirms this. An example of one of my multi-room zones is 'Bathroom' which is actually two separate bathrooms in different parts of the house. By setting these up as a multi-room zone only 1 setpoint is required and the individual HR92s work independently, monitoring their own room temperatures, but share the same setpoint. However, only one of the HR92s is used by the main controller for reporting the 'zone' temperature. As I have 16 radiators all with HR92s, I needed to group some of them into zones as the controller is limited to a maximum of 12. I also have 2 zones set-up as single room zones with 2 HR92s in each which work OK.
Another funny thing with the HR92 is that if you turn the dial on it, the radiator valve will go into override mode but this will not register on the central controller. This is explained by Honeywell that the HR92 is primarily an actuator and not a zone controller, and apparently this is even the case if it is the only device configured for a zone. In my view this hints towards a software issue in the Honeywell system itself: it essentially ignores whatever the HR92s report back, except for current temperature if there is no (report from any) dedicated sensor.
I have the new version of the Evohome controller (in-built wifi and colour screen) which does report HR92 overrides and you can see the changed setpoints on the controller screen after a few minutes if you turn the dial on the HR92. Possibly, there's been an update to the Evohome controller code since the version of the controller that you're using?

Returning to the problem with monitoring the multi-room zones via the HGI80, I agree with your description of how the HGI80 works and that it is listening to the wireless traffic coming from all the Honeywell Evohome devices; controller, HR92s, DHW sensor etc. Hence, I think my problem is to identify which of the HR92 ZONE_TEMP messages relate to ones in my 2 multi-room zones and manually link these in the evohome.cpp code. If I manage to get this working, then I need to find a way of automating this, possibly in a similar way that devices are bound to the main controller.

Today's plan is to try disabling each HR92 by unlatching them one by one and look for which device ID disappears in the ZONE_TEMP messages. Hopefully this will be a simple way of identifying each device and then I need to see if I can mess with the code to link these device IDs to the zone numbers.

Dan
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

After some of my testing today I need to correct one of my statements above:
I have the new version of the Evohome controller (in-built wifi and colour screen) which does report HR92 overrides and you can see the changed setpoints on the controller screen after a few minutes if you turn the dial on the HR92. Possibly, there's been an update to the Evohome controller code since the version of the controller that you're using?
Manual overrides on the HR92s are reported on the Evohome controller screen for all zones except multi-room zones! No change in setpoint is shown on the screen of the controller if you change the target temperature on a HR92 in a mult-room zone set-up.
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

Hi,

Not made as much progress today as I'd hoped. It seems that for some reason the Evohome controller only transmits the temperatures for any multi-room zone during the initial Domoticz startup and also possibly when there's a setpoint change for the zone. Here's a snapshot of the first batch of decoded controller temperature messages immediately after starting up Domoticz (ignore the error text, I was just using the Domoticz error log to capture these messages). Notice that zones 4 and 11 are missing from the second group of temperatures, these are my 2 multi-room zones. Over the next few hours of monitoring, the controller only ever transmits temperatures for the second group of zones, omitting the 2 problem multi-room zones.

--------------------------------------------------------------------------------------------------Zone Temp
2016-04-17 20:28:31.873 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 1: 2003
2016-04-17 20:28:37.124 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 2: 1860
2016-04-17 20:28:42.374 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 3: 1982
2016-04-17 20:28:47.623 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 4: 2029
2016-04-17 20:28:53.924 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 5: 1835
2016-04-17 20:28:58.127 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 5: 1835
2016-04-17 20:29:03.373 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 6: 1867
2016-04-17 20:29:08.624 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 7: 2019
2016-04-17 20:29:14.924 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 8: 1950
2016-04-17 20:29:28.574 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 9: 1944
2016-04-17 20:29:34.874 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 10: 2008
2016-04-17 20:29:49.574 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 11: 1960
2016-04-17 20:29:49.574 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 12: 1775

2016-04-17 20:29:56.374 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 1: 2003
2016-04-17 20:29:56.374 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 2: 1860
2016-04-17 20:29:56.374 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 3: 1982
2016-04-17 20:29:56.375 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 5: 1835
2016-04-17 20:29:56.375 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 6: 1867
2016-04-17 20:29:56.375 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 7: 2019
2016-04-17 20:29:56.375 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 8: 1950
2016-04-17 20:29:56.375 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 9: 1944
2016-04-17 20:29:56.375 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 10: 2008
2016-04-17 20:29:56.375 Error: evohome: ZONE_TEMP: Controller msg: 0x51d74: 12: 1775

As mentioned in my previous posts, each of the HR92s also transmit their temperatures in the same way, but without the zone number and instead the "0x51d74" controller ID is replaced with a unique device ID. The evohome.cpp code currently only uses the controller transmitted temperatures and doesn't appear to attempt to decode any of the device ID temperatures. What I'm now thinking is possibly the easiest solution is to get the HGI80 to repeat the appropriate initialisation command to the controller to trigger the full set of temperatures to be transmitted again. I now need track down the initialisation command in the code.....

Dan
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

Hi,

I had another thought this morning. I'd be really interested to know if anyone is using the non-wifi Evohome controller with the RFG100 gateway set-up with a HGI80 and Domoticz. The reason I'm interested is that I'd like to know whether this set-up also has the same problem with monitoring temperatures in multi-room zones via the HGI80? The Domoticz Evohome code was originally developed by decoding the communication between the controller and the RFG100 and I think that it's very unlikely that the non-wifi controller and RFG100 communication have this problem with multi-room zones. Hence, either the original Domoticz Evohome code is missing this functionality (possibly it was never tested in this set-up?) or more likely in my opinion, the new wifi Evohome controller is using a slightly different code which is causing this problem.

It would be really helpful if anyone with a non-wifi Evohome controller could confirm whether their set-up correctly handles multi-room zones, either via the RFG100 or HGI80? I'm optimistically think that if I fix the problem for the wifi Evohome controller, I'll obviously want to make sure that I don't create problems for the non-wifi controller so it would be great if someone is willing to test out my thinking.

Thanks,

Dan
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

Thanks for your reply.

Here's how I think the Evohome.cpp code within Domoticz handles the zone temperature information received by the HGI80. I think it only makes use of the zone temperatures sent from the controller (which all contain zone numbers), hence I think it's actually the controller which does the zone ID / zone number decoding rather than the HGI80. The temperatures sent directly from each of the zones are correctly read by the HGI80 and visible to Domoticz, but there is no code in Evohome.cpp which attempts to link zone ID and zone number. Here's an attempt at a sketch of the message flow:

1 Zone temperature sensor -> Controller -> HGI80 -> Domoticz (all OK)
-------------------------------\
2 ------------------------------> HGI80 -> Domoticz (can't use these readings as don't have zone numbers)

For some reason the Controller only transmits zone temperatures for all zones once, shortly after the HGI80 serial port is opened and the initial request is sent. After this initial request, the controller only sends the non-multi-room zone temperatures. I have a pretty limited understand of the Evohome.cpp code and c++, but I've tried hacking the code to get it to regularly resend what I think is the appropriate request from the HGI80 to the controller, triggered by the 'RequestCurrentState()' command. However, this doesn't seem to have the desired effect and the controller repeats all of the initial messages (sysinfo etc),but not a full set of zone temperatures :x . I'll keep trying as I don't want to admit defeat and simply hard-code the zone decoding for my set-up.
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

I made more progress last night and I've been testing a fix that I'm pretty happy with!

I came up with I a pretty simple modification to the Do_Work() function in Evohome.cpp to request each zone temperature every 5mins from the controller. The controller still sends out its incomplete batch of zone temperatures, but also sends each zone separately responding to the individual zone temp requests. I need to do some more testing to make sure that it's working OK and hasn't broken something else and then I'll see how I get on navigating the Github processes, as I've not done this before. It'll be particularly important to check that this update works OK with the earlier versions of the controller.

I've attached a picture similar to my original post showing a comparison of the script temperatures (pink) with the HGI80 temperatures (orange) for one of the problem zones. The updated Domoticz code's only been running since about 9am and hence prior to this the HGI80 temperatures are pretty static except for an hour or so the previous evening when I was doing some initial testing.

Dan
multi-room fix.jpeg
multi-room fix.jpeg (67.4 KiB) Viewed 4482 times
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

The issue has been fixed in pull request #627 which has now been merged.

Dan
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
stuiow
Posts: 139
Joined: Saturday 18 April 2015 18:56
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.6857
Location: Isle of Wight, United Kingdom.
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by stuiow »

DadnD, the modifications you are making, will these be implements into Domoticz itself or is this going to be a modification/addon?
I'm liking what I am seeing.
Now setup on a RPI3.
Also using Evohome HGI80, RFXTRX433E and a Aeotec Gen5 stick. Mainly a Gen5 Z-Wave system.
My weather (Davis vantage Pro2) data is obtained by weatherunderground
Now collecting rtl_433 data from Apollo Ultrasonic meter
DanD
Posts: 159
Joined: Saturday 05 March 2016 9:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: UK
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by DanD »

will these be implements into Domoticz itself or is this going to be a modification/addon?
Sorry if my update message was a little too brief. The changes I've made have now been merged into the Master Domoticz code. If you git pull the Domoticz source you'll be able to compile a version of Domoticz with these changes and test it out. As they have now been merged into the Master, they should be included when the next formal release comes along.

Dan
Windows 7, Raspberry Pi3, Honeywell Evohome Wifi, HGI80 + RFBee(s)
stuiow
Posts: 139
Joined: Saturday 18 April 2015 18:56
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.6857
Location: Isle of Wight, United Kingdom.
Contact:

Re: Monitoring Evohome temperatures for multi-room zones with HGI80?

Post by stuiow »

I will wait for a stable release for now, just had issues with moving from the stable so a little "spooked" for now, but i am certainly looking forward to that coming now.
Thanks for your efforts for helping to improve Domoticz and Evohome functionality!
Now setup on a RPI3.
Also using Evohome HGI80, RFXTRX433E and a Aeotec Gen5 stick. Mainly a Gen5 Z-Wave system.
My weather (Davis vantage Pro2) data is obtained by weatherunderground
Now collecting rtl_433 data from Apollo Ultrasonic meter
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest