luc-ass / homebridge-evohome

Homebridge plugin for Honeywell Evohome
29 stars 16 forks source link

Not all rooms can we changed #14

Closed jeroen7103 closed 6 years ago

jeroen7103 commented 7 years ago

Hi, I have 6 rooms setup in my Evohome system. All 6 rooms are shown in the HomeKit app. Unfortunately only 2 (' Woonkamer' and ' Badkamer kids' ) of them seems to work. 4 of them show are not responding.

On the raspberry Pi I can see that all 6 rooms are read:

[12/19/2016, 9:44:39 AM] [Evohome] Current temperature of Speelkamer Thermostat is 12.55° [12/19/2016, 9:44:39 AM] [Evohome] getCurrentHeatingCooling [12/19/2016, 9:44:39 AM] [Evohome] Temperature unit for Speelkamer Thermostat is set to Celsius [12/19/2016, 9:44:39 AM] [Evohome] Device type is: EMEA_ZONE. Target temperature should be there. [12/19/2016, 9:44:39 AM] [Evohome] Target temperature for Speelkamer Thermostat is 5° [12/19/2016, 9:44:39 AM] [Evohome] getCurrentHeatingCooling [12/19/2016, 9:44:39 AM] [Evohome] Current temperature of Charlotte Thermostat is 11.13° [12/19/2016, 9:44:39 AM] [Evohome] Temperature unit for Charlotte Thermostat is set to Celsius [12/19/2016, 9:44:39 AM] [Evohome] Device type is: EMEA_ZONE. Target temperature should be there. [12/19/2016, 9:44:39 AM] [Evohome] Target temperature for Charlotte Thermostat is 5° [12/19/2016, 9:44:39 AM] [Evohome] Temperature unit for Badkamer kids Thermostat is set to Celsius [12/19/2016, 9:44:39 AM] [Evohome] Device type is: EMEA_ZONE. Target temperature should be there. [12/19/2016, 9:44:39 AM] [Evohome] Target temperature for Badkamer kids Thermostat is 10° [12/19/2016, 9:44:39 AM] [Evohome] Current temperature of Badkamer kids Thermostat is 13.63° [12/19/2016, 9:44:39 AM] [Evohome] getCurrentHeatingCooling [12/19/2016, 9:44:39 AM] [Evohome] Temperature unit for Woonkamer Thermostat is set to Celsius [12/19/2016, 9:44:39 AM] [Evohome] Device type is: EMEA_ZONE. Target temperature should be there. [12/19/2016, 9:44:39 AM] [Evohome] Target temperature for Woonkamer Thermostat is 21° [12/19/2016, 9:44:39 AM] [Evohome] Current temperature of Woonkamer Thermostat is 20.29° [12/19/2016, 9:44:39 AM] [Evohome] getCurrentHeatingCooling [12/19/2016, 9:44:39 AM] [Evohome] Current temperature of Badkamer Thermostat is 14.09° [12/19/2016, 9:44:39 AM] [Evohome] getCurrentHeatingCooling [12/19/2016, 9:44:39 AM] [Evohome] Temperature unit for Badkamer Thermostat is set to Celsius [12/19/2016, 9:44:39 AM] [Evohome] Device type is: EMEA_ZONE. Target temperature should be there. [12/19/2016, 9:44:39 AM] [Evohome] Target temperature for Badkamer Thermostat is 5° [12/19/2016, 9:44:39 AM] [Evohome] Temperature unit for Sophie Thermostat is set to Celsius [12/19/2016, 9:44:39 AM] [Evohome] Device type is: EMEA_ZONE. Target temperature should be there. [12/19/2016, 9:44:39 AM] [Evohome] Target temperature for Sophie Thermostat is 5° [12/19/2016, 9:44:40 AM] [Evohome] Current temperature of Sophie Thermostat is 11.42° [12/19/2016, 9:44:40 AM] [Evohome] getCurrentHeatingCooling

Any ideas?

luc-ass commented 7 years ago

Strange, is this consistend with different apps? I noticed, that the Apple Home App sometimes ignores updates.

jeroen7103 commented 7 years ago

It appears that the target temperature must be 10 degrees or higher. A target temperature below that value results in the behaviour I mentioned in my previous post.

luc-ass commented 7 years ago

I.e. HomeKit doesn't understand values below 10 degrees? That would be a critical flaw...

luc-ass commented 7 years ago

Okay, I had a look into HAP NodeJS and found the following for Characteristic.TargetTemperature:

[...]
unit: Characteristic.Units.CELSIUS,
maxValue: 38,
minValue: 10,
minStep: 0.1,
[...]

I'll check how to fix the problem!

brownad commented 7 years ago

I have same problem. Is there a way to override this directly or needs a PR on HAP?

luc-ass commented 7 years ago

Ok, seems possible to implement custom values: https://github.com/KhaosT/HAP-NodeJS/pull/135

I'll try to work something out as soon as I return from ski vacation ;)

brownad commented 7 years ago

Very cool :+1:

I've set all thermostats to min of 10c for now, to keep it working in homekit

luc-ass commented 7 years ago

Okay - took me some time but I implemented it - could someone try it out? I won't be able for the days to come...

brownad commented 7 years ago

Yes I'd be happy to try tonight.

I have 8 rooms

Sent from my iPhone

On 22 Feb 2017, at 11:28, Lucas Gasenzer notifications@github.com wrote:

Okay - took me some time but I implemented it - could someone try it out? I won't be able for the days to come...

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

brownad commented 7 years ago

Wasn't happy:

2/22/2017, 8:14:49 PM] [Evohome] Evohome Failed: TypeError: Cannot read property 'CurrentTemperature' of undefined at Object.getServices (/usr/local/lib/node_modules/homebridge-evohome/index.js:327:26) at Server._createAccessory (/usr/local/lib/node_modules/homebridge/lib/server.js:378:36) at Server. (/usr/local/lib/node_modules/homebridge/lib/server.js:364:32) at /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/util/once.js:15:19 at Object. (/usr/local/lib/node_modules/homebridge-evohome/index.js:81:5) at _fulfilled (/usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:787:54) at self.promiseDispatch.done (/usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:816:30) at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:749:13) at /usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:557:44 at flush (/usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:108:17) at _combinedTickCallback (internal/process/next_tick.js:67:7) at process._tickCallback (internal/process/next_tick.js:98:9)

brownad commented 7 years ago

The above was pulling it down directly. I had to revert back

luc-ass commented 7 years ago

Sorry hearing that. I'll gave it another shot... Let's see wether this works. Can't really wrap my head around the things nfarina did there to modify proprietary values...

brownad commented 7 years ago

That's fine easy to check and rollback

I'll take another look later.

Btw was there any useful ideas in the waterstock api to set temp to next schedule?

Sent from my iPhone

On 23 Feb 2017, at 07:21, Lucas Gasenzer notifications@github.com wrote:

Sorry hearing that. I'll gave it another shot... Let's see wether this works. Can't really wrap my head around the things nfarina did there to modify proprietary values...

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

brownad commented 7 years ago

same:

[2/23/2017, 4:35:59 PM] [Evohome] Evohome Failed: TypeError: Cannot read property 'CurrentTemperature' of undefined at Object.getServices (/usr/local/lib/node_modules/homebridge-evohome/index.js:327:26) at Server._createAccessory (/usr/local/lib/node_modules/homebridge/lib/server.js:378:36) at Server. (/usr/local/lib/node_modules/homebridge/lib/server.js:364:32) at /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/util/once.js:15:19 at Object. (/usr/local/lib/node_modules/homebridge-evohome/index.js:81:5) at _fulfilled (/usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:787:54) at self.promiseDispatch.done (/usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:816:30) at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:749:13) at /usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:557:44 at flush (/usr/local/lib/node_modules/homebridge-evohome/node_modules/q/q.js:108:17) at _combinedTickCallback (internal/process/next_tick.js:67:7) at process._tickCallback (internal/process/next_tick.js:98:9

luc-ass commented 7 years ago

As it should be working with the latest merge I will close this threat

brownad commented 7 years ago

Is it merged yet?

Sent from my iPhone

On 26 Feb 2017, at 20:51, Lucas Gasenzer notifications@github.com wrote:

As it should be working with the latest merge I will close this threat

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

luc-ass commented 7 years ago

now

brownad commented 7 years ago

Is the latest pushed to NPM yet?

Didn't see any changes come through only the merge in GH

Sent from my iPhone

On 26 Feb 2017, at 21:46, Lucas Gasenzer notifications@github.com wrote:

now

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

brownad commented 7 years ago

What is eyebrows minimum temp set to?

I tested the off feature on evohome to 5 degrees, it took out the plugin straight away. Is it still set as 10?

luc-ass commented 7 years ago

Sorry to hear that. Did you update from npm?

As far as I can see the temperature is set to 0 for target temperature and current temperature.

brownad commented 7 years ago

Yep I did but will triple check later..

Sent from my iPhone

On 15 Mar 2017, at 07:20, Lucas Gasenzer notifications@github.com wrote:

Sorry to hear that. Did you update from npm?

As far as I can see the temperature is set to 0 for target temperature and current temperature.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

brownad commented 7 years ago

I checked, am running 0.1.6 and its still set to 10, cannot lower it. also crashes if you turn Evhome to "off" - which sets temp to 5 degrees

luc-ass commented 6 years ago

check wether it works now. Version was bumped to 0.2.0

luc-ass commented 6 years ago

Just checked this again. It now works in v0.3.1.

Siri can change the temperature to 5°

[1/26/2018, 6:31:47 PM] [Evohome] Schedule points for today (Friday)                                     
[1/26/2018, 6:31:47 PM] [Evohome] - 08:00:00                                                             
[1/26/2018, 6:31:47 PM] [Evohome] - 23:00:00 -> next change                                              
[1/26/2018, 6:31:47 PM] [Evohome] Setting target temperature for Arbeitszimmer Thermostat to 5° until 23:00:00                                                                                                    
[1/26/2018, 6:31:48 PM] [Evohome] Successfully changed temperature!                                      
[1/26/2018, 6:31:48 PM] [Evohome] { id: '7703459' }   

Turning the heating off results in being ignored now. In the future I want to change that to 5° permanent/return to schedule.

[1/26/2018, 6:31:28 PM] [Evohome] attempted to change targetHeatingCooling: 0 - not yet implemented