Improvements
- #21459 Add experimental Ember adapter (@Nerivec Koenkk/zigbee-herdsman#918)
- #18741 Add Home Assistant origin to discovery (@Koenkk)
- #19838 Add Home Assistant scene discovery (@mundschenk-at)
- #21372 Add support for button entity in Home Assistant (@mrskycriper)
- #20358 Support automatically generating device definitions (@Koenkk)
- #19994 Support bridge discovery for Home Assistant (@mundschenk-at)
- #18599 Support coordinator check (@Koenkk)
- #18667 Support scene renaming (@vanviegen)
- #18678 Use labels in Home Assistant entity naming (@Drafteed)
- #7201 Improve Aqara DJT12LM support (@mrskycriper)
- #7286 Improve support for Bosch 8750001213 Twinguard (@burmistrzak)
- #21960 Support
emergency_heating
mode for Zen-01-W (@Koenkk) - #7281 Improve Danfoss Icon2 support (@tomash345)
- #7251 Add
zclcommand
converter (@kirovilya) - #7239 Modern extend improvements (@mrskycriper)
- #7200 Remove legacy extend support (@Koenkk)
- #7191 Improve Aqara ZNCLDJ14LM support (@deiger)
- #7196 Support battery and OTA for IKEA E2202 (@thatslolo)
- #7177 Add additional exposes for 8719514440937/8719514440999 (@m00nyONE)
- #7178 Added OTA support for various Schneider Electric devices (@rmcleay)
- #7173 BAC-002-ALZB & BAC-003 fan control units support (@robvanoostenrijk)
- #7134 New modern extends and GS device converters update (@mrskycriper)
- #7074 Add status LED switch for WB-MSW-ZIGBEE v.4 and refactor to modern extend (@mrskycriper)
- #7162 Support
indicator_mode
for Schneider Electric EKO09716 (@Minims) - #7142 Add impulse mode configuration on SIN-4-1-2X devices from NodOn (@AlexisPolegato)
- #978 Add
zclCommand
(@kirovilya) - #977 Base support for channel switching without re-pairing, support it for Ember adapter (@Nerivec)
- #982 Support custom read responses (@Koenkk)
- #968 Add
tuyaAction
command (@kirovilya) - #966 Add more attributes for manuSpecificLumi (@deiger)
- #963 Update manufaturer codes (@Koenkk)
- #950 EZSP: Network restore from backup (@kirovilya)
- Support Node 21 and drop 16 (@Koenkk)
Fixes
- #21492
trigger_count
&power_outage_count
adjustments in HA (@Drafteed) - #19486 Add device class for soil_moisture sensor in HA (@dext0r)
- #20393 Add Home Assistant
entity_category
for various Ubisys D1 entities (@guydriesen) - #19207 Add in_progress attribute for Home Assistant update sensor (@Laxilef)
- #21652 Add more Home Assistant entity icons (@mrskycriper)
- #21610 Add noise and noise_detected to HA lookup (@mrskycriper)
- #20746 Added icon and device_class for some Aqara device entities (@mrskycriper)
- #19435 Adjust default entity category of updates in Home Assistant (@frenck)
- #20151 Allow
null
forzigbee_ota_override_index_location
option (@adeepn) - #19179 Bump semver version (@dupondje)
- #21494 Check if Zigbee2MQTT is running in
update.sh
(@Toniob) - #20313 Clear old Home Assistant discovery topics when exposes are changed (@slugzero)
- #19143 Correct typos (@Rotzbua)
- #20010 Don't crash on startup when external converters fails to load (@Koenkk)
- #19212 Enable Home Assistant force entity by default (@kds69)
- #19293 Enable incremental TSC builds (@FabianMangold)
- #18836 Fix
configuration.example.yaml
missing from container (@Koenkk) - #19542 Fix
in_progress
attribute for Home Assistant update sensor (@Laxilef) - #21653 Fix
set
endpoint name conversion (@Koenkk) - #20093 Fix availability checks not stopped on extension stop (@protyposis)
- #19983 Fix build on Node 20+ (@jirutka)
- #20526 Fix configure on startup crashing coordinator (@Koenkk)
- #21680 Fix crash due to race condition during interview (@srett)
- #20473 Fix crash due to unhandled Promise exception (@Koenkk)
- #19129 Fix device keeps requesting OTA due to incorrect transaction sequence number (@Koenkk)
- #21576 Fix endpoint matching for TuYa dummy endpoints (@Koenkk)
- #19474 Fix entity category for Home Assistant
binary_sensor
(@Koenkk) - #19474 Fix entity category of Home Assistant exposed enum sensors (@frenck)
- #19434 Fix entity category of Home Assistant exposed sensor entities (@frenck)
- #20252 Fix Home Assistant
Entity category
configis invalid for sensors
warning (@Koenkk) - #19597 Fix Home Assistant
in_progress
Erroneous JSON error (@Koenkk) - #19788 Fix Home Assistant
program
not truncated when too large (@Koenkk) - #12794 Fix incorrect update state when Z2M is restarted during OTA update (@Koenkk)
- #19659 Fix invalid JSON error in Home Assistant update entity (@mundschenk-at)
- #20289 Fix load of empty configuration
.yaml
file failing (@rhuss) - #21493 Fix parsing entity name that contains slash in the name and endpoint specification (@grafalex82)
- #19908 Fix unable to configure again after configure fails (@slugzero)
- #20903 Home Assistant: additional icons for Aqara TRV entities and various others (@mrskycriper)
- #21726 Home Assistant: remove button name if
device_class
is present (@mrskycriper) - #21521 Improve nested group and device name match (@grafalex82)
- #19660 Make frontend listen on both IPv4 and IPv6 by default (@n-thumann)
- #19965 Make update script work from anywhere (@Impact123)
- #19545 Map climate
idle
toidle
instead ofoff
in Home Assistant (@arnerek) - #21214 Match endpoint name in the MQTT topic based on endpoints listed in the definition (@grafalex82)
- #20482 Notify systemd for start, stop, watchdog (@chrthi)
- #21446 Only configure routers on startup (@Koenkk)
- #20248 Only republish changed scenes to Home Assistant when changed (@mundschenk-at)
- #20097 Prevent duplicate Home Assistant scene entities (@mundschenk-at)
- #20477 Prevent extension errors from crashing Zigbee2MQTT (@Koenkk)
- #20548 Prevent warnings for bridge entities with legacy_entity_attributes enabled (@mundschenk-at)
- #19364 Publish zigbee-herdsman/zigbee-herdsman-converters version to
bridge/info
(@Koenkk) - #21264 Remove dependency on predefined list of endpoints (
parseEntityID()
function) (@grafalex82) - #20861 Remove deprecated sendWhen (@slugzero)
- #21325 Remove predefined endpoint list, remove limits on device friendly name (@grafalex82)
- #20952 Republish correctly on scene changes to Home Assistant (@mundschenk-at)
- #20805 Revert "Enable incremental TSC builds (#19293)" (@Koenkk)
- #19631 Set entity category
config
for Home Assistanttemperature_display_mode
sensor (@devbis) - #20663 Set Home Assistant entity categories
config
anddiagnostic
according to expose categories (@slugzero) - #20547 Support legacy_availability_payload for Home Assistant connection_state (@mundschenk-at)
- #20868 Use Alpine 3.18.4 as base (@Koenkk)
- #18756 Use QOS1 for rarely sent discovery and availability messages (@ruifung)
- #21652 Add more Home Assistant entity icons (@mrskycriper)
- #21653 Fix
set
endpoint name conversion (@Koenkk) - #21680 Fix crash due to race condition during interview (@srett)
- #12794 Fix incorrect update state when Z2M is restarted during OTA update (@Koenkk)
- #21726 Home Assistant: remove button name if
device_class
is present (@mrskycriper) - #7287 Fix
XX has multiple 'ota'
when generating definition (@Koenkk) - #7291 Ignore GreenPower endpoint in definition generator (@Koenkk)
- #7272 Inovelli: fix some non-working parameters (@InovelliUSA)
- #7269 Set MCLH-02 color temp range and convert LifeControl to modern extend (@mrskycriper)
- #7261 Fix OWON PC321 current value (@dduransseau)
- #7252 Adding some parameters and fixing some ranges for Inovelli devices (@InovelliUSA)
- #21752 Fix negative temperature value for TuYa TS0601_temperature_humidity_sensor_1 incorrect (@Koenkk)
- #7259 Fix unrealistic pressure readings from Lumi WSDCGQ12LM (@rotdrop)
- #7257 Fixes for TuYa BAC-003 (@robvanoostenrijk)
- #7253 Set color temperature range for BDHM8E27W70-I1 and expose battery voltages (@mrskycriper)
- #7245 Fix Inovelli vzm35-sn and vzm36 not reporting fan speed correctly (@InovelliUSA)
- #21855 Fix TuYa ERS-10TZBVK-AA action not working (@Koenkk)
- #7233 Update Third Reality 3RTHS0224Z description (@weihuan1111)
- #7228 Fix pairing of Legrand devices failing (@Koenkk)
- #7219 Fix iasZoneAlarm extend (@mrskycriper)
- #21828 Increase TuYa
TS0601_thermostat_3
local temperature calibraion range (@Koenkk) - #7204 Properly define generated device to be multiEndpoint (@ffenix113)
- #7049 Support
auto
system_mode
for Bosch Radiator thermostat II (@dierochade) - #7223 Update manufacturer codes to use ZCL definition (@Nerivec)
- #7215 Fixes for ptvo.switch (@ptvoinfo)
- #21775 Fix crash when customTimeResponse fails (@srett)
- #7212 Fix for Legrand OTA updates (newer firmwares) (@FabianMangold)
- #7202 Fix Develco FLSZB-110 temperature reporting (@samuli-as)
- #7198 Refactor all switches to modernExtend (@Koenkk)
- #7192 Fix some Aqara modernExtend (@mrskycriper)
- #7194 Refactor more devices to modernExtend (@Koenkk)
- #7185 Don't allow sceneID 0 (@Koenkk)
- #7183 Fix 8719514440937/8719514440999 description (@m00nyONE)
- #7179 Fix alarm for HESZB-120 (@Rickth64)
- #7180 Fix battery modernExtend (@mrskycriper)
- #7164 Inovelli bug fixes (@nathanfiscus)
- #7155 Use writeStructure for Ubisys input configuration (@sjorge)
- #7159 Fix power source for Aqara WS-USC01 (@gtalusan)
- #7156 Add Aqara WB-R02D and DW-S03D whitelabels (@mrskycriper)
- #17148 Fix
led_indicator
reversed for Aqara ZNCWWSQ01LM (@Koenkk) - #21648 Fix
Value '4' is not allowed
for TuYa YXZBRB58 (@Koenkk) - #21661 Fix incorrect
long
click
send for WXKG01LM (@Koenkk) - #16900 Fix LEDVANCE ota failing (@Koenkk)
- #20692 Fix no
energy
for Aqara QBKG24LM (@Koenkk) - #7143 Fix occupancy extend undefined args (@mrskycriper)
- #7152 Fix the broken LED indicator for Schneider Electric wiser devices (@lucasteligioridis)
- #7149 Make Philips 324131092621 configure more reliable (@sjorge)
- #7144 Reference new named cluster and attribute for Schneider Electric switchActions (@lucasteligioridis)
- #21449 Remove unsupported electricity measurements from Samotech SM323_v1 (@Koenkk)
- #996 Ember: boost stack config (@Nerivec)
- #993 Ember: bugfixes (@Nerivec)
- #992 ZStack: emit network address change event on concentratorIndCb (@deviantintegral)
- #987 Action command 2 for Tuya-based device (@kirovilya)
- #986 Ember: remove
zigbeed
stack detection (@Nerivec) - #984 Remove
skipTimeResponse
in favourcustomReadResponse
(@Koenkk) - #976 Added non-CSA-assigned manufacturer codes currently used (@Nerivec)
- #974 Ember: workaround Aqara, Lumi devices not working properly (@Nerivec)
- #981 Fix
transactionSequenceNumber
not logged with readResponse (@Koenkk) - #21696 Conbee: fix sporadic
UnhandledPromiseRejection
error when permit join is enabled (@Koenkk) - #970 Ember: increase default NCP config + edge case device leave support (@Nerivec)
- #961 Don't allow groupID 0 (@Koenkk)
- #965 Don't emit deviceLeave event for devices that already left (@Koenkk)
- #964 Update Status against ZCL spec (@Koenkk)
- #959 Ember: Reworked multicast registration on coordinator (@Nerivec)
- #958 Ember: fix coordinator-only permit join (@Nerivec)
- #956 Ember: ZDO Match logging for req/rsp (@Nerivec)
- #952 Ember: comments/logging cleanups (@Nerivec)
- #949 Cleanup SerialPort async wrappers (@Nerivec)
- #951 Ember: Drastically lower default requests & callbacks processing delay & use existing setting for customization (@Nerivec)
- #945 Ember: skip port re-init on reset retry (@Nerivec)
- #19581 Correct misspell (@Rotzbua)
Frontend
- 42caa85 Fix release ci (@nurikk-sa)
New supported devices
This release adds support for 40 devices:
- #7287
929003621301
Philips Hue White & Color ambience Centris ceiling light (4 spots) (black) (@thk-socal) - #7279
EFEKTA_iAQ3
EFEKTA CO2 Monitor with IPS TFT Display, outdoor temperature and humidity, date and time (@kirovilya) - #7282
WS-K01D
Aqara Smart 20A Switch H1 (single rocker) (@TzeWey) - #7266
CTM_MBD_Dim
CTM Lyng MBD Dim, motion detector with dimmer (@soversk) - #7275
LH03121
iHORN Door contact DNAKE SH-DM-S01 (@cloudyngcloudy) - #7262
ZG-204ZM
TuYa PIR 24Ghz human presence sensor (@13717033460) - #7263
442296118491
Philips Hue Secure Camera Floodlight (@JohnConnett) - #7250
THPZ1
Tapestry Presence sensor Z1 occupancy and temperature/humidity sensor (@taby1) - #7258
LED2111G6
IKEA TRADFRI LED bulb E14 806 lumen (@leoshusar) - #7256
NAS-PS09B2
Neo Human presence sensor (@trinode) - #21339
SLZB-06M
SMLIGHT Router (@Koenkk) - #7246
DIO-300Z
ShinaSystem SiHAS DI/DO Module (@shinasys) - #7248
L2206
IKEA JETSTRÖM LED wall light panel, smart dimmable/wired-in colour and white spectrum, 30x30cm (@jamesonuk) - #7214
99106
EGLO Connect-Z motion (PIR) sensor (@Johannest85) - #21858
CK-BL702-ROUTER-01(7018)
eWeLink USB router (@Koenkk) - #7237
Nimly
Onesti Products AS Zigbee module for Nimly Doorlock series (@newlund) - #7132
SWV
SONOFF Zigbee smart water valve (@lukezxm) - #7222
MEG5126-0300/MEG5172-0000
Schneider Electric Merten MEG5172 PlusLink Dimmer insert with Merten Wiser System M Push Button (2fold) (@Nailik) - #7211
07767L
Immax NEO Smart outdoor button (@Tezar) - #7203
HCXDD12LM
Aqara Ceiling light T1 (@banister4728) - #7203
CL-L02D
Aqara Ceiling light T1M (@banister4728) - #7195
SR-ZS
Moes Smart switch (light + sence) (@kirovilya) - #21755
LED2109G6
IKEA TRADFRI LED bulb E27 806 lumen, dimmable, color, opal white (@millionsofjeffries) - #21741
TS0601_gas_sensor_3
TuYa Gas sensor (@onmobs) - #7189
929002401101
Philips Hue Iris silver limited edition (generation 4) (@folta) - #7190
SPM02-U01
BITUO TECHNIK Smart energy sensor (@script0803) - #7187
ZP1-EN
IMOU Zigbee ZP1 PIR motion sensor (@array81) - #7187
ZR1-EN
IMOU Zigbee ZR1 siren (@array81) - #7163
E2202
IKEA Water leakage detection sensor (@Mettchen) - #7160
ZNQBKG42LM
Aqara Smart wall switch Z1 Pro (single rocker) (@mrskycriper) - #7160
ZNQBKG43LM
Aqara Smart wall switch Z1 Pro (double rocker) (@mrskycriper) - #7160
ZNQBKG44LM
Aqara Smart wall switch Z1 Pro (triple rocker) (@mrskycriper) - #7160
ZNQBKG45LM
Aqara Smart wall switch Z1 Pro (quadruple rocker) (@mrskycriper) - #7166
Icon2
Danfoss Icon2 Main Controller, Room Thermostat or Sensor (@TautrimasM) - #7171
OSL 132 C
Innr Outdoor smart spot color (@philmtd) - #7158
EA4161C-BI
TuYa Single-phase multifunction energy meter (DIN Module) (@SKDS) - #7157
TRZB3
Third Reality Roller blind motor (@skosyi) - #21645
929003531502
Philips Hue white ambiance ceiling white Enrave M with Bluetooth (@galligan) - #7145
ZB-3008
RGB Genie 3 scene remote and dimmer (@ejpenney) - #20999
CK-BL702-AL-01
TuYa Zigbee LED bulb (@Koenkk)
Fixed device detections
- #19876 Detect
_TZ3000_ouwfc1qj
as TuYa TS0003_1 (@Koenkk) - #7283 Detect
_TZE200_wehza30a
as Zemismart ZM25RX-08/30 (@mnaser) - #7278 Detect
d90d7c61c44d468a8e906ca0841e0a0c
as HEIMAN HS3CG (@Jumaikhanova) - #7273 Detect
_TZE200_kb5noeto
as TuYa ZG-204ZM (@13717033460) - #21961 Detect
_TZE200_lpwgshtl
as TuYa TS0601_thermostat (@Koenkk) - #7264 Detect
_TZE200_eevqq1uv
as TuYa TS0601_cover_3 (@Koenkk) - #21926 Detect
_TZ3000_kycczpw8
as TuYa WHD02 (@sprut2) - #7236 Detect
_TZ3000_fdxihpp7
as TuYa WHD02 (@cbrunnkvist) - #7235 Detect
HK-SENSOR-4IN1-A
as Namron 4512770 (@Jumaikhanova) - #21711 Detect
_TZ3000_fdxihpp7
as TuYa WHD02 (@HD78) - #21844 Detect
_TZE204_7ytb3h8u
as GiEX GX02 (@dgaust) - #21744 Detect
_TZE204_xpq2rzhq
as TuYa TS0601_smart_human_presence_sensor_1 (@Koenkk) - #21787 Detect
_TZE200_lawxy9e2
as TuYa TS0601_fan_switch (@dotosouza) - #7209 Detect
_TZ3000_aaifmpuq
as Nous B3Z (@Koenkk) - #7207 Detect
_TZ3000_qlai3277
as Nous B2Z (@Koenkk) - #7175 Detect
_TZ3000_b3mgfu0d
as TuYa TS004F (@dhc25) - #21458 Detect
_TZ3000_uaa99arv
as TuYa TS0044_1 (@Koenkk)