My living room has west facing windows that admit a lot of heat even with the blinds closed. And my thermostat is in a hallway on the other side of the house. So in the afternoon my living room can heat up to over 80°F while my thermostat reads 68°F. Another problem is that the Winter sun shines on my thermostat around noon through a south facing window so my thermostat effectively stops working in the middle of the day when it heats up above 68°F. What I needed was a remote sensor for my thermostat and now I have one.
This is because I noticed that my Philips Hue motion sensors also measure temperature.
Here’s what the sensor looks like in the Hue CLIP API Debugger (https://www.developers.meethue.com/documentation/getting-started)
"18": {
"state": {
"temperature": 1700,
"lastupdated": "2018-04-16T19:50:48"
},
"swupdate": {
"state": "noupdates",
"lastinstall": null
},
"config": {
"on": true,
"battery": 100,
"reachable": true,
"alert": "none",
"ledindication": false,
"usertest": false,
"pending": []
},
"name": "Hue temperature sensor 2",
"type": "ZLLTemperature",
"modelid": "SML001",
"manufacturername": "Philips",
"productname": "Hue temperature sensor",
"swversion": "6.1.0.18912",
"uniqueid": "00:17:88:01:02:00:9e:44-02-0402",
"capabilities": {
"certified": true
}
},
"19": {
"state": {
"presence": false,
"lastupdated": "2018-04-16T17:59:31"
},
"swupdate": {
"state": "noupdates",
"lastinstall": null
},
"config": {
"on": true,
"battery": 100,
"reachable": true,
"alert": "none",
"ledindication": false,
"usertest": false,
"sensitivity": 2,
"sensitivitymax": 2,
"pending": []
},
"name": "Living room lamps sensor",
"type": "ZLLPresence",
"modelid": "SML001",
"manufacturername": "Philips",
"productname": "Hue motion sensor",
"swversion": "6.1.0.18912",
"uniqueid": "00:17:88:01:02:00:9e:44-02-0406",
"capabilities": {
"certified": true
}
},
Note that the name you give the motion sensor will appear for the motion sensor item (e.g “name”: “Living room lamps sensor” - item 19 above) but the temperature sensor name will be like “Hue temperature sensor 2”, so you can tell your temperature sensors apart by finding your motion sensor by name and then the item before it will be the temperature sensor and the item after the motion sensor is the ambient light sensor associated with that motion sensor.
With this info I created OpenHAB items like this
Number HUE_Temp_Livingroom "Livingroom temp [%.2f f]" <temperature> (gSkur) { http="<[HTTP://10.0.0.126/api/<API KEY>/sensors/18:300000:JS(getHueTemperature.js)]"}
and getHueTemperature.js
(function(i) {
var json = JSON.parse(i);
return (((json['state']['temperature']))/100*9/5+32).toFixed(2);
})(input)
Unfortunately I have not mastered the API of my Honeywell Lyric thermostat and there is no OpenHAB binding for it. But IFTTT supports both OpenHAB and the Lyric, so I just needed two IFTTT applets. One applet uses an OpenHAB trigger for when “Item state raises above” 74°F, then set the thermostat fan to ON. Another applet uses an OpenHAB trigger for when "Item state drops below " 74°F, then set the thermostat fan to OFF.
Now for the 1st time in 19 years, when the sun blasts down on my living room windows in the afternoon, cool air from my bedroom (which was always the coldest room in the house) gets circulated with the warm air in the living room making both rooms more comfortable.