tonesto7 / homebridge-smartthings

SmartThings Homebridge Plugin
385 stars 767 forks source link

(BUG) {Thermostats in 2.3.1} #338

Open adavison007 opened 4 years ago

adavison007 commented 4 years ago

Verify the following before opening an trouble issue

Go over all the following points, and put an x in all the boxes that apply. If you're unsure about any of these, don't hesitate to ask. We're here to help!


About Your Setup

I have 2.3.1 installed for Smart App and Homebridge

Expected Behavior

Thermostats appear in homekit from smart things if they are selected as "Other Device" in smart app.

If I remove them from other device and add them as either heating only or standard thermostat, they do not appear....

If I remove them from Thermostat and add them back in as "other Device" they work

tonesto7 commented 4 years ago

I can confirm this. I'm working on a way to validate a thermostat device has the required capabilities/attributes. I need to build out a list of attributes to translate It's going to take me some time though.

HammerAce42 commented 4 years ago

Will the resolution to this also address tonesto7/homebridge-smartthings-v2#19?

tonesto7 commented 4 years ago

@adavison007 I was able to determine the cause of defining the device types manually not working (I can't guarantee that just by adding a thermostat to the tstat input will make it work), but it's a start.

I've just pushed out v2.3.2 of SmartApp and Plugin

adavison007 commented 4 years ago

Thanks, I’ll take a look and let you know

Adam Davison adavison@me.com 07748 761448

Sent from my iPhone

On 24 Feb 2020, at 20:13, tonesto7 notifications@github.com wrote:

 @adavison007 I was able to determine the cause of defining the device types manually not working (I can't guarantee that just by adding a thermostat to the tstat input will make it work), but it's a start.

I've just pushed out v2.3.2 of SmartApp and Plugin

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

adavison007 commented 4 years ago

@tonesto7 Thanks for the hard work, I updated the home bridge and smart app.. I have managed to add the thermostat under specific device type "Heat Only" Thermostat... that worked... Unfortunaltey it still shows a heat range in auto.? I didn't;t try normal thermostat, I presumed that one would have the range? let me know.

Thanks again

IMG_1274

tonesto7 commented 4 years ago

yea, I was afraid of this. I didn't have time to work on these non-standard thermostats.

tonesto7 commented 4 years ago

Please post the output of the device data viewer in the smartapp.

Just select the thermostat and copy the JSON output into this issue

adavison007 commented 4 years ago

Please post the output of the device data viewer in the smartapp.

Just select the thermostat and copy the JSON output into this issue

@tonesto7 here is a normal Tado wall thermostat

{ "name": "Hallway", "basename": "Hallway", "deviceid": "96c3fdf5-56a9-4b71-81b5-b2c70df6113d", "status": "ACTIVE", "manufacturer": "Unknown", "model": "Tado Heating Thermostat", "deviceNetworkId": "1|HEATING|9ece1b1f-710a-45a0-ab7a-ce9fd1a71d5e|null", "lastActivity": null, "capabilities": [ "Actuator", "Polling", "Refresh", "Relative Humidity Measurement", "Temperature Measurement", "Thermostat", "Thermostat Heating Setpoint", "Thermostat Mode", "Thermostat Operating State", "Thermostat Setpoint" ], "commands": [ "auto", "cool", "emergencyHeat", "endManualControl", "fanAuto", "fanCirculate", "fanOn", "heat", "heatingSetpointDown", "heatingSetpointUp", "off", "on", "poll", "refresh", "setCoolingSetpoint", "setHeatingSetpoint", "setSchedule", "setThermostatFanMode", "setThermostatMode", "temperatureDown", "temperatureUp" ], "customflags": [

],
"attributes": {
    "coolingSetpoint": null,
    "coolingSetpointRange": null,
    "heatingSetpoint": 20.00,
    "heatingSetpointRange": null,
    "humidity": 50.80,
    "schedule": null,
    "supportedThermostatFanModes": null,
    "supportedThermostatModes": null,
    "tadoMode": "MANUAL",
    "temperature": 20.4,
    "thermostatFanMode": null,
    "thermostatMode": "heat",
    "thermostatOperatingState": "heating",
    "thermostatSetpoint": 20.00,
    "thermostatSetpointRange": null
},
"eventHistory": [
    "Tue Feb 25 20:03:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:02:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:01:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:00:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:00:55 UTC 2020 | [null] | (setThermostatMode)",
    "Tue Feb 25 20:00:32 UTC 2020 | [tadoMode] | (MANUAL)",
    "Tue Feb 25 20:00:32 UTC 2020 | [null] | (setThermostatMode)",
    "Tue Feb 25 19:59:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:58:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:57:56 UTC 2020 | [humidity] | (50.80 %)",
    "Tue Feb 25 19:57:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:56:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:55:54 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:54:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:53:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:52:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:51:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:50:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:49:55 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:48:55 UTC 2020 | [null] | (refresh)"
]

}

adavison007 commented 4 years ago

@tonesto7 here is a Tado radiator value thermostat

{ "name": "Study", "basename": "Study", "deviceid": "473acd4b-5a1d-4c4a-93a1-649be6b2af35", "status": "ACTIVE", "manufacturer": "Unknown", "model": "Tado Heating Thermostat", "deviceNetworkId": "7|HEATING|9ece1b1f-710a-45a0-ab7a-ce9fd1a71d5e|null", "lastActivity": null, "capabilities": [ "Actuator", "Polling", "Refresh", "Relative Humidity Measurement", "Temperature Measurement", "Thermostat", "Thermostat Heating Setpoint", "Thermostat Mode", "Thermostat Operating State", "Thermostat Setpoint" ], "commands": [ "auto", "cool", "emergencyHeat", "endManualControl", "fanAuto", "fanCirculate", "fanOn", "heat", "heatingSetpointDown", "heatingSetpointUp", "off", "on", "poll", "refresh", "setCoolingSetpoint", "setHeatingSetpoint", "setSchedule", "setThermostatFanMode", "setThermostatMode", "temperatureDown", "temperatureUp" ], "customflags": [

],
"attributes": {
    "coolingSetpoint": null,
    "coolingSetpointRange": null,
    "heatingSetpoint": 20.00,
    "heatingSetpointRange": null,
    "humidity": 45.10,
    "schedule": null,
    "supportedThermostatFanModes": null,
    "supportedThermostatModes": null,
    "tadoMode": "HOME",
    "temperature": 20.1,
    "thermostatFanMode": null,
    "thermostatMode": "heat",
    "thermostatOperatingState": "heating",
    "thermostatSetpoint": 20.00,
    "thermostatSetpointRange": null
},
"eventHistory": [
    "Tue Feb 25 20:06:57 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:05:57 UTC 2020 | [humidity] | (45.10 %)",
    "Tue Feb 25 20:05:57 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:04:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:03:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:02:56 UTC 2020 | [humidity] | (45.30 %)",
    "Tue Feb 25 20:02:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:01:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 20:00:58 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:59:56 UTC 2020 | [temperature] | (20.1 C)",
    "Tue Feb 25 19:59:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:58:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:57:57 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:56:57 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:55:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:54:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:53:57 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:52:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:51:56 UTC 2020 | [null] | (refresh)",
    "Tue Feb 25 19:50:56 UTC 2020 | [null] | (refresh)"
]

}

adavison007 commented 4 years ago

@tonesto7 modes = Home, Away or manual.

I’d love home to be auto (sets temp for that time of day from settings) Away (sets temp for away mode) manual = heat

The plugin I use for Tado to smart things is shown below.. thanks for the help in advance.

49EE86CE-7934-4243-AD2A-0F831840788C

tonesto7 commented 4 years ago

@adavison007 So I think I sorted out the issue with it showing auto and cool from on the thermostat when you select a heat-only device.

I'm really nervous about trying to support all these custom thermostats. I'm a nightmare to maintain once you step outside the capability standards of the platform. I'm not saying no just that I need to think about it.

For the time being update your smartapp and open it and press done.
It should remove the auto/cool characteristics for now.

adavison007 commented 4 years ago

@adavison007 So I think I sorted out the issue with it showing auto and cool from on the thermostat when you select a heat-only device.

I'm really nervous about trying to support all these custom thermostats. I'm a nightmare to maintain once you step outside the capability standards of the platform. I'm not saying no just that I need to think about it.

For the time being update your smartapp and open it and press done. It should remove the auto/cool characteristics for now.

@tonesto big thanks for looking into this, I updated the smart app, still shows as 2.3.2 and have rebooted homebridge, COOL and AUTO still remain....see attactched

IMG_1284

adavison007 commented 4 years ago

@tonesto7 will you be supporting thermostat mode only... European customers don't have cool and heat on same thermostats, we just need heat on and off, no need for the range...