The ‘Heating Controller’ is a device for easily controlling temperatures and modes for thermostats and sockets for heating.
To switch between ‘Comfort’ and ‘ECO’ modes, just two flows are necessary:
- one ‘Comfort’ flow with comfort temperatures and modes,
- and one ‘ECO’ flow with ECO temperatures and modes.
Each ‘HeatingController’ device has its own schedule that can be changed from ‘Advanced settings’. Several devices can be used, each with their own schedule.
The app has support for public holidays for several countries, and utility prices for Austria, Belgium, Germany, Luxembourg, France, Netherlands, Nordic and Baltic countries.
Install
To install the device:
- Add the ‘Heating Controller’ device.
- Go to ‘Advanced settings’ and adjust the schedule.
- Select ‘Price area’ and ‘Currency’ for utility prices.
- Select ‘Country for holidays’ for public and bank holidays.
Default schedule
Default schedule:
- Comfort mode for working days: 05:00 - 22:30
- Comfort mode for weekends and holidays: 07:00 - 23:00
- Work hours: 07:00 - 14:00
Modes
The device has modes for:
- Home / Away
- Night / Day
- At work / Not at work
- Home override
The device can be turned ‘On’ / ‘Off’ to switch between ‘Home’ and ‘Away’ - modes. If going away for a few days or on a holiday the device can be switched off to enable energy saving mode. The device must be switched on again to switch back to ‘Home’ mode, or the ‘Set away, and automatically switch to home mode on next schedule’ action can be used to automatically go back to ‘Home’ mode when the next ‘Night / Day’ or ‘At work / Not at work’ modes triggers.
It is not neccessary to switch to ‘Away’ mode if going to work, ref. the ‘At work’ - mode.
The ‘Night’ and ‘At work’ modes are automatically set based on time, day of week and public holidays. The start and end hours can be configured for both ‘Night’ and ‘At work’.
The ‘Home override’ mode can be used to keep comfort mode on, even if ‘At work’. The ‘Set home override on, and automatically off on next schedule’ action can be used to automatically turn the ‘Home override’ mode off when the next ‘Night / Day’ or ‘At work / Not at work’ modes triggers.
Comfort and ECO mode triggers
The ‘Comfort mode’ and ‘ECO mode’ triggers can be used to turn heaters on / off, or set the thermostat temperatures or thermostat modes, and will trigger if the ‘Home’, ‘Night’, ‘At work’ or ‘Home override’ modes changes.
Rules
- ‘Comfort mode’: ‘Home’ and ‘Day’ and ‘Not at work’ or ‘Home override’ and ‘Day’
- ‘ECO mode’: otherwise
Example
Adjust the target temperature for thermostats based on comfort / ECO modes. The target temperature for a thermostat is set to 22 ℃ for the period between 05:00 - 07:00 and 14:00 - 22:30, and 19 ℃ in the period from 07:00 - 14:00 and 22:30 - 24:00.
Needs two flows:
-
Flow 1: WHEN: Comfort mode is enabled
THEN: Set thermostat temperature to 22 ℃. -
Flow 2: WHEN: ECO mode is enabled
THEN Set thermostat temperature to 19 ℃.
Utility price changed trigger
The ‘Utility price changed’ will trig every hour, based on utility prices in the Nordpool area. The price area and currency can be configured.
‘Current price is among the X hours of lowest between START and END’ condition
The ‘Current price is among the X hours of lowest between START and END’ condition can be used to find the X lowest prices in a period of the day.
Example
Charge the car for four hours between ‘22:00’ and ‘06:00’ with the lowest prices.
Needs one flow:
-
Flow: WHEN: Utility price changed
AND: Current price is among the 4 hours of lowest between ‘22:00’ and ‘06:00’
THEN: Start charging
ELSE: Stop charging
‘The following X consecutive hours have the lowest total price between START and END’ condition
Use the ‘The following X consecutive hours have the lowest total price between START and END’ condition to find a period of X consecutive hours with the lowest total price in a given period.
Example
Start the washing machine for four hours with the lowest total price between ‘20:00’ and ‘08:00’ the next day.
Needs one flow:
-
Flow: WHEN: Utility price changed
AND: The washing machine is not running
AND: The following 4 consecutive hours have the lowest total price between ‘20:00’ and ‘08:00’
THEN: Start the washing machine
Average price condition
The ‘Current price is X percent above / below today’s average’ conditions will compare the current price to the average price for the whole day.
Example
Turn the socket for the water heater ‘Off’ when the price is 3 % higher than the average for the whole day, and ‘On’ otherwise.
Needs one flow:
-
Flow: WHEN: Utility price changed
AND: Current price is 3 percent above today’s average
THEN: Turn socket off,
ELSE: Turn socket on
High prices trigger
The ‘High prices X hours of the day’ trigger can be used to turn heaters off or lower the thermostat temperatures if ‘ECO mode’ is enabled and the utility prices are high. The number of hours for high prices can be selected.
Rules
- Only hours where ‘ECO mode’ is enabled are controlled
- The selected number of hours with the highest prices are found
- If there are two consecutive hours with high prices the second hour is skipped, to avoid having heaters turned off too long, or having thermostat temperatures to low too long
Example
Set the target temperature for a thermostat to 22 ℃ during daytime, not at work and not away, 19 ℃ during the night, at work or away, and 17 ℃ when prices are high and at night, at work or away.
Needs three flows:
-
Flow 1: WHEN: High prices 6 hours of the day
AND: Logic ‘Heating’ is Yes
THEN: set thermostat temperature to 22 ℃. -
Flow 2: High prices 6 hours of the day
AND: Logic ‘Heating’ is No
AND: Logic ‘High price’ is No
THEN: set thermostat temperature to 19 ℃. -
Flow 3: High prices 6 hours of the day
AND: Logic ‘Heating’ is No
AND: Logic ‘High price’ is Yes
THEN: set thermostat temperature to 17 ℃.
Low prices trigger
The ‘Low prices X hours of the day’ trigger can be used to keep a heater on if the utility price is low and off if the utility price is high. The ‘Comfort mode’ / ‘ECO mode’ is not taken into consideration for this trigger.
Example
Turn the socket for the water heater ‘On’ during the 18 hours with the lowest prices of the day, and ‘Off’ the other 6 hours.
Needs one flow:
-
Flow: WHEN: ‘Low prices 18 hours of the day’
AND: Logic ‘low price’ is Yes
THEN: Turn socket on
ELSE: Turn socket off
Mode triggers
The ‘Home mode set to on’, ‘Home mode set to off’, ‘Home override set to on’ and ‘Home override set to off’ will trigger based on changes to ‘Home’ and ‘Home override’ modes.
The ‘Night starts’, ‘Night ends’, ‘At work starts’ and ‘At work ends’ will trigger based on changes to the ‘Night’ and ‘At work’ modes.
Price areas
- Austria: AT
- Belgium: BE
- Denmark: DK1, DK2
- Estonia: EE
- Finland: FI
- France: FR
- Germany and Luxembourg: DE-LU
- Latvia: LV
- Lithuania: LT
- Netherlands: NL
- Norway: Oslo, Kr.sand, Bergen, Molde, Tr.heim, Tromsø
- Sweden: SE1, SE2, SE3, SE4
Currencies
- EUR, DKK, NOK, SEK
Flow cards
Device: HeatingController
Triggers
- Comfort mode is enabled
- ECO mode is enabled
- Home mode is disabled
- Home mode is enabled
- Home override is disabled
- Home override is enabled
- Workday starts
- Workday ends
- Night starts
- Night ends
- Utility price changed (tokens: price, heating, price ratio, min price, max price, price level, price level description)
- High prices X hours of the day (tokens: heating, high price)
- Low prices X hours of the day (tokens: heating, low price)
Conditions
- Is home / away
- Is home override on / off
- Is night / day
- Is at work / not at work
- Is comfort mode / ECO mode
- Is current price below / above
- Current price is among / is not among the X highest hours before TIME
- Current price is among / is not among the X lowest hours before TIME
- Current price is among / is not among the X highest hours in the next Y hours
- Current price is !among / is not among the X lowest hours in the next Y hours
- Current price is among / is not among the X hours of the days lowest prices
- Current price is among / is not among the X hours of the days highest prices
- Current price is among / is not among the X hours of lowest between START and END
- Current price is among / is not among the X hours of highest between START and END
- Current price is / is not X % above today’s average
- Current price is / is not X % below today’s average
- Current price is / is not X % above the average of the next Y hours
- Current price is / is not X % below the average of the next Y hours
- Current price is / is not lower than prices next X hours
- Current price is / is not higher than prices next X hours
- Difference between highest and lowest price is less / more than X %
- Difference between highest and lowest price is less / more than X
- The following X hours are among / are not among the Y hours of today’s lowest prices
- The following X hours are among / are not among the Y hours of today’s highest prices
- The following X consecutive hours have / have not the lowest total price between START and END
- The following X consecutive hours have / have not the highest total price between START and END
- Is public holiday today / yesterday / tomorrow.
- Is bank holiday today / yesterday / tomorrow.
- Is observance holiday today / yesterday / tomorrow.
- Is holiday (public, bank or observance) today / yesterday / tomorrow.
- Is working day today / yesterday / tomorrow.
Actions
- Fetch prices
- Set home
- Set away
- Set away, and automatically switch to home mode on next schedule
- Set home override on
- Set home override on, and automatically off on next schedule
- Set home override off
- Set holiday today. Holiday can be overridden with this action
- Use automatic holiday
Capabilities
- On / off (home / away)
- Home override (true/false)
- Night (true/false)
- At work (true/false)
- Heating (true/false)
- Price (per kWh)
- Price ratio (calculated from all hours on a day, with 1 for the lowest price and 0 for the highest price)
Price levels
The ‘Price level’ tag on the ‘Utility price changed’ trigger is defined like this:
- VERY_CHEAP: The price is smaller or equal to 60 % compared to average price
- CHEAP: The price is greater than 60 % and smaller or equal to 90 % compared to average price
- NORMAL: The price is greater than 90 % and smaller than 115 % compared to average price
- EXPENSIVE: The price is greater or equal to 115 % and smaller than 140 % compared to average price
- VERY_EXPENSIVE: The price is greater or equal to 140 % compared to average price
Feedback:
Please report issues on the community forum page.
Release Notes:
1.13.0
- Added condition ‘Current price is !{{|not}} among the X highest hours before TIME’
- Added condition ‘Current price is !{{|not}} among the X lowest hours before TIME’
- Added condition ‘Current price is !{{|not}} among the X highest hours in the next Y hours’
- Added condition ‘Current price is !{{|not}} among the X lowest hours in the next Y hours’
1.12.3
- Bug fix for the ‘Holiday today’ / ‘Not a holiday today’ action
- Added conditions ‘Current price is !{{|not}} among the [[hours]] hours of lowest / highest between [[start]] and [[end]]’ and ‘The following [[hours]] consecutive hours have !{{|not}} the lowest / highest total price between [[start]] and [[end]]’ with hours as numbers
- Added action card ‘Fetch prices’
1.11.1
- Bug fix for the ‘Holiday today’ / ‘Not a holiday today’ action
- Added ‘Use automatic holiday’ action to go back to automatic holidays
1.11.0
- Added ‘Price level’ tag on ‘Utility price changed’ trigger
1.10.4
- Fixed ‘Home mode is enabled / disabled’ triggers
1.10.3
- Fix Is working day condition
1.10.2
- Option to receive prices from the Utility Bill app
1.9.0
- Added condition: ‘Difference between highest and lowest price is less / more than X’
- Added conditions: ‘Current price is / is not lower / higher than prices next X hours’
- Added ‘Min price’ and ‘Max price’ tags to ‘Utility price changed’ trigger
1.8.0
- Added condition: ‘Difference between highest and lowest price is less / more than X %’
1.7.0
- Added condition: ‘The following X consecutive hours have / have not the lowest total price between start and end’
- Added condition: ‘The following X consecutive hours have / have not the highest total price between start and end’
1.6.1
- Adjustments to the two new conditions ‘Current price is among / not amount the X hours of lowest between start and end’ and ‘Current price is among / not amount the X hours of highest between start and end’
1.6.0
- Added condition: ‘Current price is among / not amount the X hours of lowest between start and end’
- Added condition: ‘Current price is among / not amount the X hours of highest between start and end’
1.5.12
- Added ‘heating’ token to ‘Utility price changed’ trigger
1.5.11
- Fix for timezone
1.5.10
- Fixed date handling
1.5.9
- Updated
price ratio
calculation
1.5.8
- Added
price ratio
, which is a number between 0 and 1 for today’s prices - Updated flow titles
1.5.7
- Reduced memory consumption
1.5.6
- Fixed bug in settings
1.5.5
- Fixed issues with ‘High prices hours of the day (tokens: heating, high price)’ and ‘Low prices hours of the day (tokens: heating, low price)’ triggers
- Fixed issues “Utility price changed” trigger
- Reduced memory consumption
1.5.4
- Fixed issue with timezones
- Reduced memory consumption
1.5.3
- Reduced memory consumption
1.5.2
- Fixed bug when changing settings
- Fixed bug in ‘The following hours are !{{|not}} among the [y] hours of today’s lowest prices’ condition
1.5.1
- Utility prices for more countries
- Added ‘The following X hours are among the Y hours of today’s lowest prices’ condition
- Added ‘The following X hours are among the Y hours of today’s highest prices’ condition
1.5.0
- SDK3 - changes
- “Presence for modes” option removed
- Updated holidays
- Fixed decimals for Insights
- Fixed issue with timezones
1.4.0
- Added ‘Current price is among / is not among the hours of the days highest prices’ condition
- Added ‘Current price is / is not % above the average of the next [y] hours’ condition
- Added ‘Current price is / is not % below the average of the next [y] hours’ condition