Zigbee2MQTT 2.13.0

2.13.0
Added 2
  • Add `clear_cache` option to device remove request
  • Home Assistant: add discovery support for Tuya infrared receiver (learn mode) and emitter features
Changed 17
  • SONOFF SNZB-09P: improve battery handling and expose more alarm options
  • Sunricher dimmers: add minimum PWM
  • Philips Hue plugs: expose Power-on behavior
  • NodOn SDO-4-1-00: add configureReporting for ssIasZone/zoneStatus
  • NodOn SEM-4-1-00: add energy reset, configureReporting and apparent power
  • Shelly Presence Gen4 (S4SN-0U61X): full sensor and zone configuration
Fixed 1
  • Home Assistant: discover device trigger when mqtt output = attribute_and_json and add warnings about incompatible settings
Removed 1
  • Support for Node.js 20 has been removed due to end-of-life status

Notes

  • In #32508, support for Node.js 20 has been removed due to end-of-life status. If you run Zigbee2MQTT on bare metal, please upgrade to Node.js 24 or 26.

Features

  • #32631 Add clear_cache option to device remove request (@Nerivec)
  • #32625 Home Assistant: add discovery support for Tuya infrared receiver (learn mode) and emitter features (@jbouwh)

Improvements

  • #12757 SONOFF SNZB-09P: improve battery handling and expose more alarm options (@CubeZ2mDeveloper)
  • #12787 Sunricher dimmers: add minimum PWM (@niracler)
  • #12764 Philips Hue plugs: expose Power-on behavior (@andrei-lazarov)
  • #12523 NodOn SDO-4-1-00:add configureReporting for ssIasZone/zoneStatus (@nthiers)
  • #12548 NodOn SEM-4-1-00: add energy reset, configureReporting and apparent power (@nthiers)
  • #12733 Shelly Presence Gen4 (S4SN-0U61X): full sensor and zone configuration (@krobipd)
  • #12758 Third Reality 3RDS17BZ: expose delay_open (@3reality-support)
  • #12727 SONOFF SONOFF SNZB-02B/02M/02UL: add dewpoint and VPD (@CubeZ2mDeveloper)
  • #12659 Shelly WS90: expose solar capacitor voltage (@sschwieb)
  • #12690 EWeLink CK-BL702-MSW-01(7010) / Mumubiz CZV20: expose countdown auto-off timer (@juslex)
  • #12670 Shelly WS90: expose battery voltage (@andrei-lazarov)
  • #12687 SONOFF SWV Gen 2: add unified imperial gallon support (@CubeZ2mDeveloper)
  • #12691 Tuya TS0002_power: expose per-endpoint countdown auto-off timer (@juslex)
  • #12662 Aqara SSWQD22LM: support more features (@blakegong)
  • #12665 Philips 929004308301: support color (@mrtncode)
  • #12654 Wiren Board WB-MSW-ZIGBEE_v.4_official: expose IR transceiver controls (@u236)
  • #12634 Zozung/Tuya based IR blasters: add support for Home Assistant infrared timings (@jbouwh)
  • #1825 Handle special in ZCL spec (@Nerivec)
  • #1819 Allow to remove device from cache on request (@Nerivec)

Fixes

  • #32535 experimental_event_entities and legacy_action_sensor require restart (@andrei-lazarov)
  • #32662 Avoid running resolveDefinition in parallel (@luar123)
  • #32619 Drop redundant types js yaml (@cany748)
  • #31947 Fix restartRequired flag (@andrei-lazarov)
  • #32603 Home Assistant: discover device trigger when mqtt output = attribute_and_json and add warnings about incompatible settings (@andrei-lazarov)
  • #32544 Home Assistant: fix action published to wrong topic (@luar123)
  • #32676 Publish groups on device leave (@Nerivec)
  • #32486 Refresh exposes after manual device configure (@MaxRink)
  • #32643 Remove json-stable-stringify-without-jsonify dep (@Nerivec)
  • #32683 Replace jszip with fflate (@cany748)
  • #32579 Replace rimraf with native fs.rmSync (@cany748)
  • #32620 Replace source-map-support with native Node source map support (@cany748)
  • #32508 Support Node 26, remove Node 20 support (@Koenkk)
  • #12770 Schneider Electric: fix dimming mode (@svhelge)
  • #12812 Shelly 1/1 Mini, 1PM/1PM Mini: merge identical variants into whitelabels (@krobipd)
  • #32703 Sinopé TH1400ZB: expose floor_temperature and room_temperature (@Koenkk)
  • #12814 SONOFF ZBM5: fix configure failing (@andrei-lazarov)
  • #12818 Tuya _TZ3000_w0qqde0g and _TZ3000_typdpbpg: remove switch_type_button (@andrei-lazarov)
  • #12817 Tuya TS011F_plug_1: fix current scale (@andrei-lazarov)
  • #12801 Tuya TS0601_water_valve and TS0601_water_meter: fix battery voltage expose (@Liionboy)
  • #12791 Expose Tuya infrared learning ir code switch as button to Home Assistant (@jbouwh)
  • #12772 LEDVANCE 4099854295232/4099854293276: silence periodic divisor-constant reports (@krobipd)
  • #12802 Namron 4512758: expose Namron custom attributes (@svhelge)
  • #12805 RTX ZVG1: Enable Tuya time sync (@andrei-lazarov)
  • #12811 Shelly S4SN-0071A/S4SN-0071Z: merge Flood and Flood S into one definition (@krobipd)
  • #12804 Smarthjemmet.dk devices: make switchType writable (@mortenmoulder)
  • #12795 Somfy Glydea: fix incorrect position reported (@darkl0rd)
  • #12793 Tuya AY-204Z: fix occupancy and battery reporting (@minorMismatch)
  • #12798 Tuya TS011F_with_threshold: change min over_voltage_threshold range to 90 (@galvesribeiro)
  • #12808 Wirenboard WB-MSW-ZIGBEE v.4: correct CO2 unit (@u236)
  • #12789 Haozee HZ-SL10: fix light sensor DP commands (@13717033460)
  • #12782 Nous L14: query on device announce (@andrei-lazarov)
  • #12769 Shelly: remove shellyPowerFactorInt16Fix (@hpuac)
  • #12778 Simplify template on infrared receiver entity to avoid warnings when the value is reset (@jbouwh)
  • #12777 Smarli S-ZB-COV1-R251: disable unintended optimistic write of cover position (@loocd)
  • #12774 Sonoff MINI-ZBRBS: add missing 'none' (0) value for motor_travel_calibration_action (@bueste)
  • #12771 Tuya IR: clear last published timings and add override option for HA value_template (@jbouwh)
  • #12760 HOBEIAN ZG-302ZM: fix auto on/off lookup (@nico1080)
  • #12738 Fix vendor casing to prevent duplicates (@andrei-lazarov)
  • #12737 Improve infrared emitter description (@jbouwh)
  • #12729 NodOn SIN-4-1-20/SIN-4-1-21/SIN-4-2-20: fix wired input, endpoint 242 and identify (@nthiers)
  • #12736 Shelly 2PM Gen4: switch input mode is mapped to the wrong endpoints in switch mode (@krobipd)
  • #12747 Shelly Gen4: harden switch and button input handling (@krobipd)
  • #12735 Shelly Gen4: stop offering settings the device cannot report (@krobipd)
  • #12732 Shelly Gen4: stop reading through the RPC cluster (@krobipd)
  • #12749 Shelly Gen4: write only the given Wi-Fi fields (@krobipd)
  • #12748 Shelly WS90: discard non-value markers and recover the rain rate after a counter reset (@krobipd)
  • #12750 Shelly: do not serialize RPC transactions of different devices against each other (@krobipd)
  • #32647 Tuya TS0601_floor_thermostat: fix date/time (@Koenkk)
  • #12069 Tuya ZY-M100-24GV3: drop bogus 0 sensitivity reads from device (@jameshobden)
  • #12755 Yale SOLIS01: fix operation event decoding and battery scale; drop state derivation from ymc_action (@juslex)
  • #12718 Add Legrand 600090A white-label (@andrei-lazarov)
  • #12711 SONOF MINI-ZBRBS: fix configure failing (@bueste)
  • #12708 Allow schema and type override for Home Assistant infrared discovery type (@jbouwh)
  • #12715 BTicino F20T60A and FC80GCS: remove unused converters (@andrei-lazarov)
  • #12704 Aqara DS-K02D/DS-K02E: fix ghost events (@glueckstein)
  • #12699 Aqara T3: improve definition (@blakegong)
  • #12701 EGLO 900878: add whitelabel of 900024/12253 (@krobipd)
  • #12648 HEIMAN M1-PE : optimize reporting config (@Leo2442926161)
  • #12676 Aqara ZNCLBL01LM: normalize terminal drift (@martinfrancois)
  • #12675 Change action_transition_time unit to seconds (@andrei-lazarov)
  • #12686 Innr RB 279 T: fix color temperature range (@Burki24)
  • #12685 Leviton DG3HL: expose and preserve dimmer configuration (@PaulMcMillan)
  • #12668 Paul Neuhaus lights: fix color and temperature control (@andrei-lazarov)
  • #12689 Tuya: TS1201: fix discovery and add expose zosung learned timings (@jbouwh)
  • #12650 Moes ZC-LS02: battery polling + stop mcuVersion flood (@Rhaiderr)
  • #12656 SONOFF MINIZB1GS: update inchingControlSet timeout (@CubeZ2mDeveloper)
  • #12647 SONOFF: restore composite exposes for irrigation settings (@CubeZ2mDeveloper)
  • #12651 Tuya RB-SRAIN01: invert cleaning_reminder (@andrei-lazarov)
  • #12644 HEIMAN HS1SA-E Plus: fix smoke level (@Leo2442926161)
  • #12646 Tuya: fix negative numbers in datapoints (@andrei-lazarov)
  • #12624 Aqara PS-S04D: fix battery never reporting (@hajarada)
  • #12626 Definition generator: fix occupancy sensor on multi endpoint device (@luar123)
  • #12628 ENGO E40: expose battery information of TRV and firmware info TRV (@henkiejan1)
  • #12629 Tuya ZN2S-RS02E: fix endpoints (@hesham1216)
  • #12605 Develco ZHEMI101: fix incorrect power report (@derabbink)
  • #12616 Moes BHT-002: fix max current_heating_setpoint (@emolenev)
  • #12622 Moes ZC-LS02: fix motor_direction (@Rhaiderr)
  • #32460 Müller Licht 404021: fix detection (@Koenkk)
  • #12612 Namron Simplify: refactor dimmer converter functions (@xses79)
  • #12615 NYCE NCZ-3011-HA: fix IAS enrollment during reconfigure (@derabbink)
  • #12620 Shelly: keep cover tilt controls visible when supported (@MaxRink)
  • #12593 Third Reality 3RVS01031Z: improve definition (@3reality-support)
  • #12619 Tuya cover moesCalibrationTime ENUM8 -> UINT16 (@junaidsurve)
  • #32204 Tuya TS0505B_2: fix color control (@Koenkk)
  • #12603 Tuya TS0726_1_gang and TS0726_2_gang: expose indicator_mode (@chou0706)
  • #12609 Universal Electronics Inc XHS2-UE: fix battery voltage curve (@klinquist)
  • #12597 Soma SmartShades3: remove tilt control (@smenzer)
  • #12600 SONOFF SWV: fix configure when optional attribute is unsupported (@klinquist)
  • #12598 Tuya TS011F_with_threshold: expose child_lock (@olegos37)
  • #12595 Tuya: fix weather crash due to missing await (@Nerivec)
  • #1830 Add support for some recent EzspValueId (@Nerivec)
  • #1816 Optimize attribute reads during interview logic (@Nerivec)
  • #1804 Greenpower: fix attr parsing (@Nerivec)
  • #1809 NYCE NCZ-3011-HA: enable interviewQuirks (@derabbink)

Frontend

  • #644 fix: Replace jszip with fflate (@cany748)
  • #627 fix: translate remaining English strings in ptbr (@inacionery)
  • #628 fix: add Legrand OUI (@andrei-lazarov)
  • #634 fix: add STMicrolectronics OUI (@andrei-lazarov)
  • #638 feat: allow to clear cache when removing device (@Nerivec)
  • #612 fix: fix "disable periodic reporting" label (@andrei-lazarov)
  • #610 feat: change "support" display to use definition source (@Nerivec)
  • #614 fix: cleanup i18n (@Nerivec)
  • #615 fix: improve source labeling (@Nerivec)
  • #620 fix: fix rounded corners on some buttons (@andrei-lazarov)
  • #623 feat: Add "Zigbee manufacturer" tooltip (@andrei-lazarov)
  • #580 feat: Improve firmware versions display (@andrei-lazarov)
  • #613 feat: add vendor image lookup (@luar123)
  • #574 fix: use regions in icon_map and fix typo (@andrei-lazarov)
  • #576 fix: add Develco OUI (@burmistrzak)
  • #592 fix: min and max Group ID (@andrei-lazarov)

New supported devices

This release adds support for 51 devices:

  • #12813 BHT-209-GCZB Beca Battery Zigbee thermostat with dry contact for boiler control (@Rolleroo)
  • #12809 929004321001 Philips Hue Play Floor lamp large (@jonas0b1011001)
  • #12807 BAC-001 Tuya Heating/cooling thermostat with fan control (@dansity)
  • #12751 GWA1201 Gewiss Chorus on/off switch (@LucaCh92)
  • #12796 S4SN-0071Z Shelly Flood S Gen 4 (@krobipd)
  • #12794 TO-WK-2W/B Nova Digital Topazio 2 gang switch with socket (@raphic-nh)
  • #12800 ZBCMR-02 Nova Digital Roller Blind Motor (@bmnascimento)
  • #12776 EZ-104UPT Excellux Contact sensor and vibration sensor (@iotRobot)
  • #12784 SAV-DL6IN-24V-12W Savolar Zigbee 12W Downlight RGB+CCT with external antenna design (@Aogu181)
  • #12768 SWS-IZ Nobø Mode switch (Home/Sleep/Away/Vacation) (@jostein87-blip)
  • #12788 ZF24Pro Tuya Tuya Temperature & Humidity Human Presence Sensor (@tiankakeji-cloud)
  • #12765 TS0201-LCD-SlD Slacky-DIY Tuya temperature and humidity sensor with LCD display and custom firmware (@slacky1965)
  • #12765 Router-ZG-807Z-SlD Slacky-DIY Tuya router with custom firmware (@slacky1965)
  • #12734 _TZE200_rgeapp2c Tuya Semicom touch panel: 2 switches + 2 shutters (@Simchon)
  • #12746 _TZE28C1000000_jlbsptkl Tuya Human sresence sensor 1-gang smart switch (@tiankakeji-cloud)
  • #12746 _TZE28C1000000_jaunkx9g Tuya Human presence sensor 2-gang smart switch (@tiankakeji-cloud)
  • #12746 _TZE28C1000000_usmqzgdm Tuya Human presence sensor 3-gang smart switch (@tiankakeji-cloud)
  • #12742 91-943-PRO-RGBCW Light Solutions 5-in-1 RGBCCT LED controller (@andrei-lazarov)
  • #12754 RCL 241 T Innr Round Ceiling Light (42cm)- Warm to Cool White (@MrThyrox)
  • #12752 SEM-4-3-20 NodOn 3CT Energy Meter (@nthiers)
  • #12719 eMotion Air LinknLink Battery-Powered mmWave Presence Multi-Sensor (@andrei-lazarov)
  • #12722 EZMB-RGB-TW-I2C AwoX EGLO Connect-Z LED G95 13.5W RGB + tunable white (@GeGerardo)
  • #12728 POK018 PushOk Hardware Battery powered loudspeaker (@zombierzn)
  • #12712 CCT-I Paulmann Tunable white light controller with integrated motion sensor (tested with Skyla 948.64) (@SeoFood)
  • #12705 TP-WGZBA SONOFF Zigbee thermostat panel (@CubeZ2mDeveloper)
  • #12714 ZSS-QT-LTH-C Moes Smart 3-in-1 brightness, temperature and humidity sensor (@Hotelk52339)
  • #12700 TO-DM-W/B Nova Digital Topazio 1 gang Zigbee dimmer switch (@raphic-nh)
  • #12695 ZNYB01LM Aqara Smart bathroom heater T1 (@Kevin6872)
  • #12693 LPC-V1 Pulsar LLC Leak protection controller (@DmitryMolokanov)
  • #12658 NFZB-2 Nova Digital 2-Gang switch with backlight, countdown and inching (@trzenaro)
  • #12684 SR-2421-Z2D8C Sunricher Zigbee to DALI controller (@niracler)
  • #12678 TO-WK-1W/B Nova Digital Topazio 1 gang switch with socket (@raphic-nh)
  • #12663 SSWQDYH02 Aqara Spotlight V1 (@blakegong)
  • #11734 _TZE284_0kihjsys EyZEE 5-Gang TZExxx Zigbee Touch Switch (@shsurury)
  • #12649 100050060900 Atlantic Group Galapagos electric radiator (@ptondereau)
  • #12637 SMRZB-342 Frient Smart DIN Relay 2 (@OudeKaas69)
  • #12521 AY-601ZL AOYAN 1 gang switch module - without neutral wire (@zyjsmile857)
  • #12521 AY-602ZL AOYAN 2 gang switch module - without neutral wire (@zyjsmile857)
  • #12521 AY-603ZL AOYAN 3 gang switch module - without neutral wire (@zyjsmile857)
  • #12633 Dongle-PP10 SONOFF Dongle Plus CC2674P10 (CC2674P10) with router firmware (@CubeZ2mDeveloper)
  • #12630 ZRS-USC-WH Moes Smart curtain switch (@radinsky)
  • #12520 AY02SZ AOYAN Vibration sensor (@zyjsmile857)
  • #12518 AY205Z AOYAN PIR 24Ghz human presence sensor (@zyjsmile857)
  • #12519 AY208Z AOYAN 24G millimeter wave human presence sensor (@zyjsmile857)
  • #12623 EC1366 Villeroy & Boch My View mirror cabinet (@mkrle)
  • #12613 RCL 242 C Innr Round ceilng light (42cm) - white and colour (@hidrissi-hass)
  • #12604 SE-RZ11 Sercomm Boiler control relay module used in Enel Homix system (@matitalatina)
  • #12618 ZM6LT1 Moes Smart 1-phase energy power meter with CT sensor clamp (@pranjal-joshi)
  • #12517 AY-204ZX AOYAN 24Ghz millimeter wave and T&H sensor (@zyjsmile857)
  • #12602 TOQCB2-80-2P Tongou Smart circuit breaker (2P) (@aavdberg)
  • #12594 ZSN-03P Novato Temperature & humidity sensor (@bilgi-source)

Fixed device detections

  • #32707 Detect _TZE284_qvzsq3s2 as Tuya PA-44Z (@Koenkk)
  • #12781 Detect _TZE204_zhiqbr7l as Skydance WZ5_rgbcct (@Gridban)
  • #12786 Detect _TZE2841000000_bw4ayyeh as Tuya ZD24_Presence_Sensor (@tiankakeji-cloud)
  • #12762 Detect _TZ3210_r3wubmyh as Nous P8Z (@andrei-lazarov)
  • #12753 Detect _TZ3210_htdm5hvw as Nous P4Z (@andrei-lazarov)
  • #12741 Detect _TZE284_aoah6bv8 as Moes JKD-513COM-Z (@wilsto)
  • #12724 Detect _TZ3000_46vasa5h as Tuya TS011F_2_gang_wall (@arpena)
  • #12721 Detect SLZB-06Mg26U as SMLIGHT SLZB-06M (@Psykosoldier)
  • #12698 Detect _TZ3000_w0qqde0g as Nous A1Z (@andrei-lazarov)
  • #12702 Detect _TZE28C1000000_68utemio as Tuya TS0601_dimmer_1_gang_1 (@andrei-lazarov)
  • #12703 Detect _TZE28C1000000_xvywzhmi as Zemismart ZN-USC1U-HT (@andrei-lazarov)
  • #12696 Detect Shyugj MotionSensor-ZB3.0 as HZC Electric S902M-ZG (@andrei-lazarov)
  • #12692 Detect AY-101Z as Tuya TS0203 and AY301Z as Tuya WHD02 (@zyjsmile857)
  • #12661 Detect AY222Z as TS0207_water_leak_detector and AY201Z as ZG-227ZL (@zyjsmile857)
  • #12664 Detect FB56-COS02HM1.4 as Feibit SCA01ZB (@svhelge)
  • #12660 Detect LGT011 as Philips 046677590161 (@Koenkk)
  • #12645 Detect _TZE204_qtnjuoae as RTX ZVG1 (@molusk)
  • #12636 Detect _TZE28C1000000_hgeqeyuv as ZT24 and _TZE28C1000000_pzm3wab5 as ZX24 (@tiankakeji-cloud)
  • #32496 Detect _TZE2841000000_rccxox8p as Tuya PA-44Z (@Koenkk)
  • #12610 Detect _TZ3210_lqb7lcq9 as Nova Digital SA-WK (@felipemathies)
  • #12621 Detect LIGHTIFY Conv Under Cabinet TW as Sylvania 72569 (@SiliconAvatar)
View original

Upgraded? How did it go?

Discussion