Essent
This page describes a way to integrate the Essent "E-thermostaat" (ICY) into Domoticz. This thermostat is manufactured by ICY[1] and can be controlled through the Essent E-thermostaat website and a smartphone app. But there are also unofficial ways to control this thermostat and that's where the fun part starts! Credit: large pieces of the code have it's origin on the Micasaverde-forum[2].
Note: this page is still under heavy construction!
Note 2: As of Version 2.0.2025 (September 28th 2014) the ICY / Essent thermostat is implemented as supported hardware in Domoticz!
1: Reading the current temperature and update a virtual thermometer in Domoticz
To read the current temperature, we need to connect to the ICY-portal. You need the credentials you're using on the E-thermostaat website.
Create the following bash-script (inside the "domoticz/scripts"-folder)
TOKEN=`curl -s --request POST 'https://portal.icy.nl/login' --data 'username={username}&password={password}' | awk -F":" '{print $12}' | awk -F'"' '{print $2}'`
TEMP=`curl -s -H "Session-token:$TOKEN" --request GET 'https://portal.icy.nl/data' --data 'username={username}&password={password}' |awk -F":" '{print $11}' | awk -F',' '{print $1}'`
if [[ $TEMP == ?(-)+([0-9.]) ]]; then
curl "http://{domoticz-ip}:8080/json.htm?type=command¶m=udevice&idx={virtualtemp-idx}&nvalue=0&svalue="$TEMP
fi
Replace the following placeholders:
{username} = your e-thermostaat username
{password} = your password
{domoticz-ip} = ip-address of your domoticz-installation
{virtualtemp-idx} = the idx of the virtual thermometer
Run this script in a cronjob every 5 minutes and the virtual thermometer will reflect the actual temperature on your thermostat!