4.7 KiB
4.7 KiB
Changelog
2.0.0
New features:
- Added support for the
iconproperty in theHABinarySensor(you can set the icon usingHABinarySensor::setIcon("iconName")) - Added support for changing the current state of the
HABinarySensorusingHABinarySensor::setCurrentStatemethod - Added support for forcing
setStateinHABinarySensorusing a second argument as followsHABinarySensor::setState(true, true) - Added support for the
device_classproperty in theHACover(you can set the class usingHACover::setDeviceClass("className") - Added support for the
iconproperty in theHACover(you can set the icon usingHACover::setIcon("iconName")) - Added pointer of the sender to the
HACovercallback function - Added support for
optimisticproperty in theHACover(you can change the mode usingHACover::setOptimistic(true)) - Added support for forcing
setPositioninHACoverusing a second argument as followsHACover::setPosition(100, true) - Added support for the
device_classproperty in theHASwitch(you can set the class usingHASwitch::setDeviceClass("className") - Added support for the
optimisticproperty in theHASwitch(you can change the mode usingHASwitch::setOptimistic(true)) - Added support for the
force_updateproperty in theHASensor(you can set the mode usingHASensor::setForceUpdate(true)) - Added support for the
HAButtondevice type - Added support for the
HADeviceTrackerdevice type - Added support for the
HACameradevice type - Added support for the
HALockdevice type - Added support for the
HASelectdevice type - Added support for the
HANumberdevice type - Added support for the
HAScenedevice type - Added support for the
HALightdevice type
Bugs fixes:
- Last Will Message is now retained (#70)
- Compilation error on SAMD family (#82)
New examples:
- Button - adding simple buttons to the Home Assistant panel.
Breaking changes:
- Changed structure of all MQTT topics used in the library.
- Changed constructor of the
HABinarySensorclass (removeddeviceClassandinitialStatearguments) - Renamed
HABinarySensor::getState()method toHABinarySensor::getCurrentState() - Replaced
HATriggerswithHADeviceTrigger- the new implementation is not backward compatible. Please check the updated example of themulti-state-button. - Renamed
HADevice::isOnline()method toHADevice::isAvailable() - Renamed
HASwitch::onStateChangedmethod toHASwitch::onCommand. - Renamed
HAFan::onStateChangedmethod toHAFan::onStateCommand. - Renamed
HAFan::onSpeedChangedmethod toHAFan::onSpeedCommand. - Changed logic of the
HASwitchcallback. Please check theled-switchexample. - Refactored
HASensorlogic. It's now divided into two different classes:HASensorandHASensorNumber. - Removed all legacy constructors with
HAMqttargument - Removed
onConnectionFailedcallback from theHAMqttclass - The position in the
HACoveris now available as configurable feature. It's disabled by default. - Refactored
HAHVACclass to support more features of the MQTT discovery. Please check the update example.
1.3.0
New features:
- Added
onMessage()method to HAMqtt class - Added support for HA Covers
- Added support for setting different prefix for non-discovery topics (see Advanced MQTT example)
- Added
setNamemethod to HASensor - Added
setNamemethod to HASwitch - Added
onBeforeStateChangedcallback to HASwitch
Improvements:
- Removed legacy properties from HAFan (Home Assistant 2021.4.4). Deprecated methods will be removed after a quarter (2021.7)
- Separated
uniqueIDfield fromnamein all devices types
1.2.0
Breaking changes:
- Refactored HASensor implementation. Please take a look at updated example
New features:
- Added support for HVAC
- Added support for excluding devices types from the compilation using defines (see src/ArduinoHADefines.h)
- Added support for setting icon in HASwitch and HASensor
- Added support for setting retain flag in HASwitch
- Added support for text (const char*) payload in HASensor
- Added support for fans (HAFan)
- Added support for connecting to the MQTT broker using hostname
- Added
onConnected()method in the HAMqtt - Added
onConnectionFailed()method in the HAMqtt - Added support for MQTT LWT (see Advanced Availability example)
Improvements:
- Optimized codebase and logic in all devices types
- Updated all examples
- Fixed compilation warnings in all classes