All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add report based daily energy consumption for all devices.
- Guard against zero Ata device energy meter reading. Latest firmware returns occasional zeroes breaking energy consumption integrations.
- Round temperatures being set to the nearest temperature_increment using round half up.
- Boiler flow and mixing tank temperatures for Atw devices.
- Increate ListDevices poll rate to match the sensor poll rates.
- Read zone specific flow/return temperatures from the actually working global temperature variable.
- Prevent forbidden request to
ListDeviceUnits
on guest devices.
- Add actual fan speed status for Ata device.
- Read
wifi_signal
from device conf instead of state.
- Support for Erv devices.
wifi_signal
strength anderror_code
for all device types.
- Add Atw zone operation mode control.
- Remove heat/cool simplification from Atw zone operation modes.
- Add individual get/set for Atw zone flow temperatures in heat and cool modes.
- Add Atw zone flow temperature control.
- Use fixed tank temperature minimum.
- Map Atw zone
"curve"
mode toheat
zone operation mode.
- Add
cool
operation mode toAtwDevice
zones. - Add zone flow and flow return temperature read.
- Fix search for devices assigned to Structure/Areas.
- Update
User-Agent
. - Rename Atw status
"off"
to"idle"
.
- Remove
holiday_mode
set logic after testing with real devices.
- Add a settable
holiday_mode
property toAtwDevice
.
- Return same device types from
get_devices
andDevice
device_type
. - Use
MaxTankTemperature
as maximum target tank temperature and calculate minimum using the previously usedMaxSetTemperature
andMinSetTemperature
. - Remove keyword arguments from
login
. These values are not retained after the function call.
- Make
AtwDevice
status
consistent in out of sync state.
- Add
temperature_increment
property toDevice
. - Add
has_energy_consumed_meter
property toAtaDevice
.
- Forward AtaDevice
target_temperature_step
calls totemperature_increment
. - Rename ATW zone
state
tostatus
. - Rename ATW
state
tostatus
. - Return heat statuses to
heat_zones
andheat_water
- Fix
get_devices
type hints. - Fix
conf_update_interval
anddevice_set_debounce
forwarding inlogin
. - Fix detached ATW zone state.
- Convert zone operation mode set to no-op instead of raising
ValueError
. - Fix ATW zone name fallback.
- Add
None
state guards to ATW zone properties.
- Experimental operation mode logic for ATW zones.
- Use device type specific set endpoint.
- Return devices in a device type keyed dict from
get_devices
so that caller does not have to doisinstance
based filtering.
- Removed slug from fan speeds.
- Use underscores instead of dashes in state constants.
- Remove invalid assertion from fan speed conversion.
get_devices
module method.Client
does not need to be accessed directly anymore.
- Support for multiple device types. Implemented
AtaDevice
(previous implementation) andAtwDevice
. operation_modes
,fan_speeds
and other list getters are implemented as properties.login
method returns only acquired access token.
- Base
EffectiveFlags
update on current state and apply only new flags. - Use longer device write and conf update intervals.
- Fix target temperature flag logic.
- Moved login method to module. Original staticmethod implementation is still available and forwards calls to the module method.
- Token exposed as a property.
- Removed destruct.
- Removed
TypedDict
usage to support Python <3.8.
total_energy_consumed
property returning kWh counter reading.units
model information.
- Horizontal and vertical vane support.
- Use proper async
set
function forDevice
.asyncio.Event
is used to signal a in-progressset
operation. Multiple calls toset
will all wait for the same event that is set when the eventual write has been performed.
- Return
None
when trying to read stale state instead of crashing.
- Reset pending writes after they are applied to prevent rewriting them on every subsequent write.
Initial release