Honeywell Evohome

try deleting all the evohome devices. open each device and click remove device then remove to confirm. then open the evohome connect app and click done this should recreate all the devices.

interesting ly i just deleted one of my zones to confirm this and started getting errors on the new zone but making the changes to line 897 of the device driverthat guido mentioned above fixed it.

@ApriliaEdd @TUllman. I've now got it working after a few attempts. With the EvoHome app open on my phone, I can adjust using the commands on the individual zone device page and see that it updates straight away and it can be adjusted using a tile in Hubitat own dashboard.

What's caused some confusion is the operation via SharpTools dashboard (not sure if either of you are using SharpTools). With the tile set as Thermostat the up and down arrows to directly alter the temperature are greyed out and can't be used - you have to click adjust to open a panel and do it from there. If you set the icon as "double height thermostat" you get the unused cooling function and the previously inactive arrows are usable. I'm not sure how this is possible as I've been using the Sharptools dashboard to control the Evohome through SmartThings with the standard single height thermostat and those arrows are active. I'm confused. See pics:

Screenshot 2021-01-17 at 22.02.20 Screenshot 2021-01-17 at 22.02.53

The Quick Adjust buttons on the single height thermostat tile in SharpTools are disabled if a Thermostat device is in 'Auto' mode as the tile can't determine if It should attempt to adjust the heating setpoint or cooling setpoint.

If the device is explicitly in a heat or cool mode, the quick adjust buttons on the single height thermostat tile will be enabled.

glad its working

I to use sharptools but mostly just for viewing the thermostats on my tablet in the office I've never changed it from 1x2 tiles though or tried to change a temperature with it

1 Like

thanks for the clarification @josh i'll have a play tomorrow.

1 Like

Over the last few weeks I've messed around so much with different things that it's easy to get mixed up over what is/was working in a particular way.

Firstly I've been trying out ActionTiles and SmartTools against one another to see which was best for what I wanted. This was prior to my move from SmartThings to Hubitat which has pushed me to toward SharpTools.

I know with some certainty that when I was using ActionTiles that the tile could be used to increase or decrease the temperature in Auto Mode. The EvoHome system is meant to work this way, with the set point temperature being raised or lowered until the next set point time, when the normal schedule would resume. I thought (though I could be wrong) that while I've been using SharpTools to control the heating via the SmartThings integration that the adjustment while in Auto mode was also possible. I could be wrong here as I've had the system in Day Off mode a lot recently.

I'll try it now by adding one of the zones from SmartThings and report back...

@josh @ApriliaEdd So this is what I've found so far with SharpTools linking to EvoHome via Hubitat and SmartThings:

On the left - Lounge is authorised in Hubitat and the up/down won't function. On the right Cloakroom is authorised in SmartThings and up/down work as desired.

When authorising the device in SmartThings the heating zone only presents itself as "Temperature Sensor", once added, editing the tile layout from Temperature Sensor to Thermostat enables the functionality.

When authorising the device in Hubitat the heating zone presents itself as both "Thermostat" and "Temperature Sensor" and I've authorised both. When adding the tile to the dashboard from the Things list although I've authorised both Thermostat and Temperature sensor, there is only one item for each room in the list. So I guess the Thermostat is overriding Temperature Sensor in the tile behaviour?

I've tried denying SharpTools access to the 8 Evohome Thermostats listed while allowing access to the 8 Evohome Temperature Sensors to see if it then mimics what's available in SmartThings but no joy. Whether I allow access to just Temperature Sensor or just Thermostat, the result is the same and I'm unable to control temperature in the correct way.

the issue seems to be in the way sharptools handles the single height tile, which to be honest makes sense from @josh's explanation, but for our use case where there is no cooling option. unless it can be added as an option for the single height tile to have a choice between heating, cooling or the current auto quick controls in sharptools (which seems like a lot of work for 2 of us) then it looks like you'll either have to have 2x2 tiles and redundant arrows or use the adjust screen to change the setpoint.

I have all my zones in a separate dashboard linked to each page so making them 2x2 is not too much of an issue and doesn't interfere with the main dashboards.

I use google home voice activation to raise or lower temperature setpoints which works fine its a direct link though not through HE.

Yeah understood. But SharpTools is handling the single height tile differently when it's attached to EvoHome via SmartThings rather than Hubitat - that's what doesn't make sense to me - I have it working now. For now my choice seems to be either:

a - Keep the EvoHome running via SmartThings with the functional single height tile (which is what I've done)

b - Link to another page with 2x2 tiles and switch EvoHome across to Hubitat (I could always have a set of 1x1 tiles on the main page with the current temp for info purposes only)

Option a is better currently, as I do find myself adjusting the temperature up down frequently. However I'll need to move to Option b if I want to use the EvoHome in any automations. I really want to do away with SmartThings completely - my devices are moved across so at least I've removed the hub for now.

Another query. Is there a means to having an Away, Auto, Day Off button directly as a tile? As the modes adjusted in one zone will affect all, could I create virtual switches and link those to the functions in one zone maybe?

which driver/app do you use in ST? maybe i can learn something from it.

I went with option b but like I said we use google home voice to change it mostly

Yes create virtual switches.

i recently completely changed how we use the system so all of our days are now programmed as "Saturday" i.e. as if someone was home then I let the presence sensors that control the house mode switch to economy when no one is home and if it stays in economy mode for 48 hours it goes to away. as I work a 4 weeks on 4 weeks off rota it saves me having to reprogram the heating for me being home all the time then changing it back for when I'm away and no one is in.

I used this one:


It's also based on the Codersaur one.

cool I'll take a look see if I can figure out where its different.

Thanks for sharing. The SmartThings device handler you linked to implements the new Thermostat Heating Setpoint capability.

SmartThings originally had a single 'monocapability' called Thermostat which comprised all of the functionality of a thermostat which supports both Heating and Cooling (and modes, fans, etc). Unfortunately, this doesn't doesn't work well in regions where the device might be controlling a heating-only furnace, radiator system, etc... so the Thermostat capability was deprecated in favor of individual capabilities like Thermostat Heating Setpoint, Thermostat Cooling Setpoint, Thermostat Mode, etc.

So with the SmartThings version of the driver, SharpTools looks at the capabilities that are exposed and sees that the devices is only a Heating capable device and thus even if it's in 'auto' mode, it knows to set the heating setpoint.

definition (name: "Evohome Heating R1.2", namespace: "Andremain", author: "Andreas Christodoulou", deviceTypeId:"Thermostat",ocfDeviceType:"oic.d.thermostat", vid: "3c7f0c66-08c2-37e5-b3f0-6c5199eb2701", mnmn:"SmartThingsCommunity") {
    capability "Refresh"
    capability "Temperature Measurement"
    capability 'Health Check'
    capability "thermostatOperatingState"
		
    //New Smartthings Capabilities
    capability "Thermostat Heating Setpoint"
    capability "Thermostat Setpoint"
    capability "Thermostat Mode"
    ...

I didn't think these individual thermostat related capabilities were supported in Hubitat, but I just created a dummy driver with them and all of the associated commands became available, so one option would be to switch from the Thermostat monocapability to the individual Thermostat related capabilities.

--

Briefly looking through the code, it looks like this device not support a 'Heat' mode and 'Auto' seems to effectively be the equivalent of 'Heat'. Is that right?

(The reason I ask if if the device reported that it was in 'Heat' mode the buttons would also be enabled.)

--

You could create SharpTools Rule to change the thermostat mode and then add that rule to your dashboard. When you tap on the rule tile, it would execute your rule and any of the commands in it.

1 Like

I'm not sure but I'd say so yes. We don't need cool - this is the UK so it's generally not needed. We have heating systems and cooling would normally be taken care of by separate Air Con but most of the country would never need that as the weather is generally cool year round!

"Auto" just follows a 7 day schedule with multiple time and temperature changes. "Eco" drops every zone by 3 degrees, "Away" set all zones to a preset low temp (15C in my case" and "Day Off" sets all zones to follow the schedule for a given day (normally Saturday". You can alter the heating set point up or down from the current one on "Auto" and it'll stay at the altered temperature until the next scheduled change.

It might be that @ApriliaEdd amended Codersaurs original SmartThings code for Hubitat, prior to the changes that Andremain made. That would explain the difference in the capabilities you mention.

that is exactly the case @johnwill1 I just took the code that worked in my ST hub (I'd already updated it for the new TCC api) and "modded" it to fit here. I'll take a stab at either updating the original or importing the newer one tomorrow. I fear the later might be easier but we'll see tomorrow.....

be good to get this sorted.

@josh thanks for the detailed description. I may need to pick your brains again tomorrow if thats ok?

2 Likes

OK I've managed it (I think)

I nearly gave up there for a while seems strange to me that the new Thermostat Heating Setpoint capability does not show up in sharptools or webcore you have to add it as a temperature sensor first (big thanks to @johnwill1 for pointing that one out earlier)

But anyhow I decided to have one more crack at it today and here's my SharpTools dashboard for heating now.

let me give it a couple of days to make sure that it seems ok and I'll update the Repo

3 Likes

Awesome work! Glad to hear you made some good progress!

The authorization model is based on Capabilities, so the main authorization list covers the most common capabilities (eg. most devices will have at least one of those). And once a device is authorized under any capability, the apps get access to all capabilities of the device.

The challenge is that a lot of devices support a number of overlapping capabilities. For example, "Switch" is a common choice as that covers most things that can turn on/off... if "Switch Level" was added to the authorization list, 99% of things that are dimmable also can be turned on/off so they'd show up in both lists and that's confusing too. :man_facepalming:

1 Like

Cool. Don't be too long now! - once I have this I think I can ditch Smartthings.

Oh boy, I only now came back to this threat and you guys have been working on this, full steam! I put this on a back-burner as I had more pressing firefighting to do -- various switches & sensors not pairing, disconnecting, etc. Seems I have sorted it for now, so can come back to this. Not sure I'm following all your comments, given I don't use SharpTools (looks pretty much the same as a standard Hubitat dashboard, or am I not appreciating what it actually offers?), but I suspect I should update my code to the version @ApriliaEdd will be uploading, as it further tidies up things...?

@TUllman - The thing it addresses is that on the current driver (at least when using the SharpTools dashboard - not sure about the Hubitat one) you can't alter the temperature directly from the tile without clicking adjust to open another window unless you use a double height tile. The double height tile however shows settings for cooling which are redundant to folk like us in the UK who are cold enough year round due to the weather!

Take a look at SharpTools. It can do so much more and looks a lot nicer than the Hubitat one. My work in progress shown below.

I'm also having all sorts of issues with other kit. My Fibaro Dimmer 2 has given me disco lights in the living room that I can't turn off. At some point something will go right...