Home Depot recently began selling an excellent wifi enabled thermostat for around $100USD that has an accessible API for talking to it over the network. As of build 824 XTension includes a plugin to enable to monitor and remote control this thermostat directly even if you choose not to enable the “cloud” features that are advertised as part of the stat itself. At HD the stat is 3M Filtrete branded, specifically on their website it is described as: Filtrete 7-Day Touchscreen WiFi-Enabled Programmable Thermostat with Backlight. But they also carry them in the stores. There may be other brands selling this stat as well, if it links back to the radiothermostat.com website for remote control then it should be the same model under the label.
The only difference between their documented settings that are necessary for this to be used in XTension is that you must give it a static IP address on your network. You can do this either directly from it’s own configuration or use it’s MAC address and your wifi router to reserve a specific DHCP address for it. Without a static address XTension cannot reliably connect to it.
While in beta the plugin will be free but eventually will be a standard purchasable XTension plugin.
To setup with XTension you need to create an interface to it. In the preferences create a new interface and select “Radio Thermostat” from the port popup select “remote IP address” and enter the static IP address of the stat and the number 80 for the port. As of this beta you cannot connect to it on a different port but you must include the port.
save that configuration and then create some new units to accept the data.
Current Temperature
Thermostat Override
Thermostat State
Fan State
Heat Runtime Today
Cool Runtime Today
Heat runtime yesterday
Cool runtime yesterday
Thermostat Hold
Fan Mode
Heat Setpoint
COOL Setpoint
Thermostat Mode
LED
address:LED
dimmable
0=off, 1=green, 2 and 3 are yellow on mine, 4=red. The led’s flash on the front face of the thermostat. Used to display pricing information if you have that setup. The setting of them can be changed by the stat and cannot report back to the computer so this is set only, no way to read it back out.
When you first connect and every hour the click on the thermostat will be set to the time on the computer.
I see a couple of gotchas that are not yet resolved in this first beta. Only the setpoint, heat or cool, that is active based on the mode is reported by the thermostat. Meaning that if you have the mode turned to 0/off the values in the computer are not updated. In heat mode only the heat setpoint is sent and in AC only the cool setpoint is sent. If you change one of the setpoints the mode of the stat is automatically changed to heat or ac depending on which you set. The fan state doesn’t seem to display the state of the fan in heat mode. but the thermostat state does update to reflect what it’s doing. (update: I got so fed up with it turning off the HOLD mode whenever I made a change that I have updated the code in XTension build 826 to maintain the hold status. So if you have HOLD on and change a setpoint, it will restore the hold setting after that, I also fixed a bug where the current temperature could return -1 sometimes)
It may be possible to pass ludicrous values to the stat, please sanity check your values before you set the temperature to a billion degrees or something.
Some models may also support a humidity sensor, if you have this let me know and I’ll add it it’s not supported in this first pass.
Make sure you’ve read the General Thermostat Notes