Custom component to read and write data from Ensto BLE thermostats.
- Integration is tested on Raspberry PI 4, Home Assistant OS 16.3, Supervisor 2025.11.1, Core 2025.11.1.
- Integration tested with Ensto ELTE6-BT and ECO16BT thermostats but should work with all Ensto thermostat supporting the same BLE Interface Description.
- The integration works with multiple thermostats and ESP32 Bluetooth proxies.
- Integration is developed and tested only with Home Assistant OS. Other HA installation types are not guaranteed to work.
- This is a hobby project under development.
Some users have needed additional pairing in the terminal to establish a Bluetooth connection.
- In Home Assistant terminal, run bluetoothctl. You can continue entering commands while Bluetooth messages appear on screen.
- If you added the thermostat to HA before and then paired it to another device, you will probably have to remove XX:XX:XX:XX:XX:XX first
- First type trust XX:XX:XX:XX:XX:XX (replace with your device's MAC address)
- Second type pair XX:XX:XX:XX:XX:XX (replace with your device's MAC address)
- Set your Ensto BLE thermostat to pairing mode (blue light blinking)
- Proceed adding the Ensto BLE thermostat in Home Assistant
Common cause for the thermostats to display incorrect internal time (e.g., years in the future or past) is weak or dead RTC backup battery.
- See the device installation manual on replacing the CR1225 battery
- Set correct time using the set_device_time service in Developer Tools after battery replacement
Device name cannot be changed anymore via Home Assistant on systems using BlueZ 5.82 or newer (Home Assistant OS 16.2+).
- BlueZ 5.82+ enforces strict Bluetooth standards and blocks client-side writes to GAP (Generic Access Profile) characteristics, including UUID 2A00 (Device Name).
- Workaround is to use Ensto's official mobile application (iOS/Android) to change the device name. The integraion reads and displayes the device name in Home Assistant.
- Search the repository
HASS Ensto BLEfrom HACS default repositories - Download the latest release to HACS
- Restart HA
- Go to Settings > Devices & services > Add Integration
- Search for "Hass Ensto BLE"
- Navigate to your Home Assistant configuration directory (where
configuration.yamlis located) - Create
custom_components/hass_ensto_bledirectory - Download and place all repository files in the directory
- Restart Home Assistant
- Add integration via Settings > Devices & services
- Put thermostat in pairing mode (hold BLE reset button >0.5 seconds until blue LED blinks)
- Select your thermostat from the discovered devices list
- Choose currency for energy calculations (stored in thermostat)
- Settings > Devices & services > Helpers > Create helper
- Generic thermostat
- Temperature sensor: Select floor or room temperature sensor which ever you prefer
- Actuator switch: "Boost Mode" -switch
- Cold/Hot tolerance: "0.5" is fine
- Next > Submit > Finish
- Add Thermostat card to UI using this new helper climate-entity
- Navigate to Settings > Devices & services > [Your thermostat]
- Select a mode from the drop down menu.
All Ensto BLE thermostats do not support all modes.
Floor temperature min / max values are only used in the Combination heating mode. Boost power offset and vacation power offset are only used in the Power heating mode
- Navigate to Settings > Devices & services > [Your thermostat]
- Set Boost duration in minutes
- Set Boost temperature offset (-20C to 20C) or boost power offset (-100% to 100%) if you're using Power heating mode
- Enable "Ensto Boost Mode"
- Sensor "Ensto Boost Remaining" will start counting from set boost time to zero and turn off automatically.
- Navigate to Settings > Devices & services > [Your thermostat]
- Enable "Ensto Adaptive Temperature Control". Note! This is a simple switch to enable/disable adaptive temperature change on the device.
- Navigate to Settings > Devices & services > [Your thermostat]
- Change the Floor sensor type from the drop down menu
- After a while, the thermostat will return a new temperature value based on the new floor sensor type
- Home Assistant shows a notification if the device time differs more than one minute from Home Assistant time
- Time is handled internally in UTC to ensure consistent operation across time zones
- To synchronize the time:
- Go to Developer Tools > Actions
- Select service
hass_ensto_ble.set_device_time - Select your thermostat's DateTime entity
- Click "PERFORM ACTION"
- Navigate to Settings > Devices & services > [Your thermostat]
- Verify that the DateTime sensor shows the correct local time
- The notification will automatically disappear once the time is synchronized
The notification will automatically disappear once the time is synchronized.
- Navigate to Settings > Integrations > [Your Ensto thermostat] > Entities
- Find the Daylight Saving switch
- Turn the switch on or off as needed
- The device will automatically convert between UTC and local time based on this setting
- Navigate to Settings > Integrations > [Your Ensto thermostat] > Entities
- Find the Floor Min and Max Temperature
- Adjust as needed
- The minimum temperature must always be at least 8 degrees lower than the maximum limit
- These settings are only used in combination heating mode
- In other heating modes, the sensors will be disabled
- Navigate to Settings > Devices & services > [Your thermostat]
- Find the Room Sensor Calibration number entity
- Set a value between -5.0°C and +5.0°C to calibrate the room temperature sensor
- Positive values increase the displayed temperature
- Negative values decrease the displayed temperature
- Navigate to Settings > Devices & services > [Your thermostat]
- Find the Heating Power entity
- Adjust the power level
Changes are stored in the thermostat's memory
- Navigate to Settings > Devices & services > [Your thermostat]
- Find the Floor Area entity
- Set the floor area
Changes are stored in the thermostat's memory
- Navigate to Settings > Devices & services > [Your thermostat]
- Find the power usage sensor. It includes the following information as attributes:
- Last 24 hour thermostat on/off ratio tracking
- Last 7-day thermostat on/off ratio tracking
- Last 12-month thermostat on/off ratio tracking
- Hourly floor and room temperature readings
- Navigate to Settings > Devices & services > [Your thermostat]
- Find and configure the vacation end times
- Configure the vacation temperature offset (-20C to 20C) or vacation power offset (-100% to 100%) if you're using Power heating mode
- Enable the vacation mode switch. The thermostat will turn on the vacation mode on and off when the vacation start and end times are reached.
Temperature and power offset values and date settings will automatically update in the UI.
- Navigate to Settings > Devices & services > [Your thermostat]
- Find the Calendar Mode switch
- Enable to activate weekly scheduling, disable for manual control
When calendar mode is enabled, the thermostat follows your programmed weekly schedule instead of manual temperature settings.
- Navigate to Developer Tools > Actions
- Select service
hass_ensto_ble.get_calendar_day - Select any of your thermostat's sensor entities
- Enter day number (1=Monday, 7=Sunday)
- Click "PERFORM ACTION"
- Navigate to Developer Tools > Actions
- Select service
hass_ensto_ble.set_calendar_day - Select any of your thermostat's sensor entities
- Configure the day and programs (up to six):
- start_hour: 6
start_minute: 0
end_hour: 8
end_minute: 30
temp_offset: 2.0
power_offset: 0
enabled: true
- start_hour: 17
start_minute: 0
end_hour: 22
end_minute: 0
temp_offset: 1.5
power_offset: 0
enabled: true- Navigate to Settings > Devices & services > [Your thermostat]
- Find the Heating Power entity and set your thermostat's actual power rating (e.g., 900W)
- The Current Power sensor will become available and show:
- Full heating power when the relay is ON
- 0W when the relay is OFF
- To track energy consumption (kWh):
- Go to Settings > Helpers > Create Helper > Integral Sensor
- Select your thermostat's Current Power sensor as input
- Set Method to "Left Riemann sum" and Unit prefix to "kilo (k)"
- The resulting kWh sensor can be added to Home Assistant's Energy Dashboard
This enables complete energy monitoring including real-time power usage, daily/monthly consumption tracking, and cost calculations.