Custom component to read and write data from Ensto BLE thermostats.
- This is a development version. It's a hobby project and will be developed slowly for my own purposes. Please be patient.
- Integration tested on Raspberry PI 4, Home Assistant OS 14.2, Supervisor 2025.02.1, Core 2025.2.4
- Integration tested with Ensto ELTE6-BT and ECO16BT thermostats but should work with all Ensto thermostat supporting the same BLE Interface Description
- The version v0.3.5 onwards works with multiple thermostats.
- The version v0.2.1 onwards works with ESP32 Bluetooth proxies
- Navigate to your Home Assistant configuration directory (where
configuration.yaml
is located) - Create a
custom_components
directory if it doesn't exist - Create a directory called
hass_ensto_ble
insidecustom_components
- Download all files from this repository
- Place the downloaded files in the
custom_components/hass_ensto_ble
directory - Restart Home Assistant
- Go to Settings > Devices & services > Add Integration
- Search for "Hass Ensto BLE"
The integration will automatically scan for Ensto BLE thermostats in pairing mode.
During installation, you must choose a currency for energy calculations (only stored in the thermostat)
To put your thermostat in pairing mode:
- Hold the BLE reset button for >0.5 seconds
- The blue LED will start blinking when pairing mode is active
- Navigate to Developer Tools > Services
- Select service
hass_ensto_ble.set_device_name
- Select a thermostat name entity if you have multiple thermostats
- Enter a new name in the Name field (maximum 25 characters)
- Click "PERFORM ACTION"
The new name will be visible:
- In the Devices & services > Integrations page
- In the device card when you click on the device
- Please note that entity names for the device are not renamed
The name is stored directly in the thermostat's memory and persists through restarts.
- 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 > Services
- Select service
hass_ensto_ble.set_device_time
- Select your thermostat's DateTime entity
- Click "CALL SERVICE"
- 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.