Zigbee2MQTT 2.14.0

2.14.0
Added 1
  • Allow to preserve device config when removing device
Changed 18
  • Bosch BTH-RM230Z: add humidity alarm led toggle
  • PushOk Hardware POK001: support offline_action and inverted
  • Rti-Tek STHZB: add STH2Z support
  • Schneider Electric CCTFR6400: expose hub-less operation (cluster registration, read responses, boost)
  • Tuya SPM02V1-GT: expose ac_frequency
  • Add nerivec's smlight router variants
Fixed 1
  • Apply debounce to messages without payload

From Zigbee2MQTT

Features

  • #32765 Allow to preserve device config when removing device (@cmiguelcabral)

Improvements

  • #13068 Bosch BTH-RM230Z: add humidity alarm led toggle (@akarikuu)
  • #13062 PushOk Hardware POK001: support offline_action and inverted (@zombierzn)
  • #13055 Rti-Tek STHZB: add STH2Z support (@QuAnnan2019)
  • #13053 Schneider Electric CCTFR6400: expose hub-less operation (cluster registration, read responses, boost) (@PCR-2020)
  • #13060 Tuya SPM02V1-GT: expose ac_frequency (@SamHartleyFixes)
  • #13001 Add nerivec's smlight router variants (@Nerivec)
  • #13006 Aqara KD-R01D: expose level configuration (@k-lofnes)
  • #12979 Aqara: expose identify cluster on seven devices (@krobipd)
  • #12977 EGLO 900024/12253: expose identify cluster (@krobipd)
  • #12978 L&S Lighting 756200027: expose identify cluster (@krobipd)
  • #12976 LEDVANCE 4099854295232/4099854293276: expose identify cluster (@krobipd)
  • #13004 Make Tuya time sync configurable (@andrei-lazarov)
  • #13002 Moes ZS-SF-EUC-WH-MS: expose more features (@jaimebarez)
  • #12971 Namron Zigbee Edge Thermostat: expose writable sensor_mode (@papatistos)
  • #12999 Shelly BLU TRV: add external occupancy support (@Burki24)
  • #12975 Shelly: expose identify cluster (@krobipd)
  • #13028 SONOFF BASIC-ZB1GSP: support export-energy (@CubeZ2mDeveloper)
  • #13016 SONOFF SNZB-02DR2: improve support (@CubeZ2mDeveloper)
  • #13017 SONOFF SNZB-02UL: improve support (@CubeZ2mDeveloper)
  • #12997 SONOFF TP-WGZBA: hysteresis and time period exposes (@CubeZ2mDeveloper)
  • #12974 StuckAtPrototype AirCube: expose identify cluster (@krobipd)
  • #13012 Support HVAC clusters in definition generator (@kirovilya)
  • #12980 Tuya TS011F_with_threshold, COOLO CS-201Z: expose identify cluster (@krobipd)
  • #12941 Fix IAS max_duration limits and move to modernExtend (@andrei-lazarov)
  • #12958 SONOFF SNZB-06P24: improve description (@CubeZ2mDeveloper)
  • #12938 Ubisys: Expose identify cluster (@burmistrzak)
  • #12919 Expose Power-on behavior in generated support (@andrei-lazarov)
  • #12933 Heiman HS2NVL and HS2VDT: support more features (@Leo2442926161)
  • #12905 Philips Hue: Expose identify cluster (@burmistrzak)
  • #12908 Excellux EZ-500FL: expose fertility_calibration (@iotRobot)
  • #12906 HEIMAN S1-TL: expose shielding_sensor_detection (@Leo2442926161)
  • #12901 Heiman S1-TL: expose alarm_state (@Leo2442926161)
  • #12872 Ubisys J1: Add operational_status converter (@burmistrzak)
  • #12834 Philips 929002376101: support effects (@Foldman)
  • #12799 Schneider Electric S520567: expose more features (@Zehir)
  • #1837 Accept the Control4 custom profile ID on the EZSP adapters (@bharat)

Fixes

  • #32791 Apply debounce to messages without payload (@ChillZwix)
  • #32937 Clamp availability ping delay to the maximum supported timeout (@venglin)
  • #32784 Fix crash on a null color in attribute output (@luantaraschi)
  • #32780 Fix stringify don't emit invalid JSON for an empty typed array (@luantaraschi)
  • #32779 Fix stringify emit every element of a typed array (@luantaraschi)
  • #32752 Home Assistant: avoid duplicate door names (@clemencov)
  • #32702 Home Assistant: fix motor_state not exposed for SONOFF MINI-ZBRBS (@AT0myks)
  • #32842 Home Assistant: Improve various discovery mappings (@burmistrzak)
  • #32900 Preserve duration in state (@luantaraschi)
  • #32685 Replace express-static-gzip and finalhandler with srvx (@cany748)
  • #32684 Replace object-assign-deep with local utility (@cany748)
  • #32975 Require Node <=26.2 for serialport (@Koenkk)
  • #32928 Warn when setting unsupported device option (@andrei-lazarov)
  • #13064 Legrand 067797: fix transition not working (@SamHartleyFixes)
  • #13066 Level_config convertGet: fix logs discarded read errors at debug (@SamHartleyFixes)
  • #13058 Zemismart ZMZ609-2: fix date/weather sync (@lboue)
  • #13049 Tuya PJ-1203A: Ignore proprietary messages (@AndreKR)
  • #13036 Fix unspecified error with unknown Parameter in utils.ts (@asgothian)
  • #12953 Konke KK-WA-J01W-2020: add battery support (@CCZU1623)
  • #12968 Publish button hold length as action_duration, not duration (@luantaraschi)
  • #12960 SONOFF MINI-ZBRBS and SWV-ZF* / ZN* OTA matching (@CubeZ2mDeveloper)
  • #13018 Aqara SP-EUC01: enable event mode during configure (@LucaFriedrich)
  • #13019 Dowsing & Reynolds DR3000: configure reporting (@andrei-lazarov)
  • #12987 Dresden Elektronik BN-600085: remove unsupported battery expose (@ftonat)
  • #12988 FrankEver FK-BV05: correct water consumption unit and enum datapoints (@gluoncompany)
  • #12986 HEIMAN S1-TL: separate the reading (@Leo2442926161)
  • #13007 Legrand K4027C: improve moving state detection (@managerfx)
  • #12982 Namron 4512763: expose battery (@asmundg)
  • #12984 Namron 4512792: fix power and current scaling (@mariusvollen)
  • #13020 NodOn SIN-4-2-20: fix wired input reporting on endpoint 1 (@nthiers)
  • #13022 Philips 929003856201: remove color temperature (@andrei-lazarov)
  • #12945 Populate multiEndpointSkip in generateDefinitions (@luar123)
  • #12989 Profalux MAI-ZTM20C: fix configure failing (@hostekevin)
  • #12998 SONOFF TRVZB: filter out invalid 0 value for TRV timer_mode_target_temp (@CubeZ2mDeveloper)
  • #13014 Tuya EZ-104UPT: change uv_level description (@iotRobot)
  • #13010 Tuya ONENUO TH05Z: change manufacturerName to _TZE284_qf5mzewi (@latez)
  • #13003 Tuya sprinklers: correct timestamp (@andrei-lazarov)
  • #13031 Tuya TRV601/TRV602/TS0601_thermostat_1: fix alarm_switch (@Aamoree99)
  • #13027 Tuya: Remove respondToMcuVersionResponse (@andrei-lazarov)
  • #12985 Universal Electronics Inc URC4460BC0-X-R (XHS2-UE): fix excessive battery drain by configuring genPollCtrl longPollInterval (@rwarner)
  • #12942 Aqara W600: improve external temperature handling (@k-lofnes)
  • #12951 BITUO: enable frequency multiplier/divisor reads for energy meters (@script0803)
  • #12964 Danfoss Icon: expose icon_application and only expose populated room endpoints (@tomsommer)
  • #12956 Schneider: allow zero fixed load demand (@k-lofnes)
  • #12954 Securifi PP-WHT-US: allow OTA (@andrei-lazarov)
  • #12950 SODA S8: fix battery_low mapping (string -> boolean) (@herrmannj)
  • #12959 SONOFF SNZB-02M: fix calibration ranges (@CubeZ2mDeveloper)
  • #12928 Decode 24 bit current and power in phaseVariant2WithPhase (@aberenguel)
  • #12934 Excellux EZ-500FL and EZ-500FS: various fixes (@iotRobot)
  • #12925 Occupancy on multi-endpoint devices (@luar123)
  • #12930 SONOFF ZBMINIR2: De-duplicate configuration (@andrei-lazarov)
  • #12926 Support genIdentify on multiple endpoints (@burmistrzak)
  • #12929 Tuya SDM02V1-GT: fix energy datapoint mapping (@aberenguel)
  • #12916 Ubisys: Rename operational_status to motor_state for compatibility (@burmistrzak)
  • #12907 Paulmann RGBWW: fix device identification using softwareBuildID (@aavdberg)
  • #12909 Third Reality 3RCB01057Z: fix color temp range (@3reality-support)
  • #12657 Tuya TS110E: fix incorrect state for multi endpoint devices (@phyzical)
  • #12903 Easyiot ZB-24GMS02: fix occupancy (@xsp1989)
  • #12870 Lumi SJCGQ12LM (water leak T1): fix not enrolled as IAS Zone in configure (@SebastianBienert)
  • #12902 Third Reality 3RMS26Z: update battery config (@3reality-support)
  • #12900 Tuya TS0502B: fix color temp not reported correctly (@mp33de)
  • #12889 AOYAN AY02SZ: fix white label matching (@zyjsmile857)
  • #12880 Futurehome Charge: refactor, improve code (@svhelge)
  • #12897 Namron 4512758: fix config read error (@svhelge)
  • #12873 OWON DWS332-E: split from DWS312 device definition (@jacky202509)
  • #12899 Philips LTW015 and LCB001: correct color temp range (@elizabethkang8)
  • #12890 PTM 215Z: match Friends of Hue source-ID range (Senic & Gira smart switch) (@mrvdb)
  • #12888 Schneider Electric: add custom attributes in lightingBallastCfg to devices configured with dimmingMode (@svhelge)
  • #12881 Shelly EM Mini Gen4: Force power source (@andrei-lazarov)
  • #12874 AOYAN AY205Z: fix white label matching (@zyjsmile857)
  • #12877 Moes ZHT-002: improve programming_mode (@Di4bLo84)
  • #12867 Moes ZHT-S03: remove forceTimeUpdates (@andrei-lazarov)
  • #12856 Namron 4512758: fix away_mode (@Koenkk)
  • #12853 Shelly BLU TRV: implement external temperature management (@Burki24)
  • #12851 Frient SIRZB-112: fix not controllable (@ChillZwix)
  • #12850 Home Assistant: set contact name to null to avoid duplicate door (@clemencov)
  • #12852 Philips 7299760PH (Hue Bloom): add color temp range (@ChillZwix)
  • #32762 Tuya _TZ3000_mtnpt6ws: expose power on behaviour (@Koenkk)
  • #12863 Ubisys: write InputActions in size-bounded chunks (@ovidiuch)
  • #12838 AOYAN: fix switch module definitions (@zyjsmile857)
  • #12707 Fix state not inverted when setting invert_cover: true (@ThatDeltaGuy)
  • #12845 Heiman: make the descriptions are consistent (@Leo2442926161)
  • #12841 IKEA E1524/E1810: fix arrow hold/release actions (@andrei-lazarov)
  • #12846 NodOn SEM-4-1-00: bump definition version to trigger reconfigure (@nthiers)
  • #12849 Philips 929004581801: fix color temp range (@jonas0b1011001)
  • #12839 SONOFF SNZB-05P: fix power source (@andrei-lazarov)
  • #12822 Match NUL padded modelID when several candidates exist (@ptondereau)
  • #32721 ROBB ROB_200-070-0: fix occupancy not correctly exposed (@Koenkk)
  • #12821 SONOFF MINI-ZBRBS: rename motor_run_status to moving (@AT0myks)
  • #12829 Tuya TS0601_water_valve and TS0601_water_meter: correct battery voltage multiplier (@Liionboy)
  • #1851 Deconz: improve checkWaitForDataRequestTimeouts() (@bueeler)
  • #1854 Fix not every group member removed when deleting a group (@gbarkan)
  • #1848 Ignore iAS enroll failure for AduroSmart Eria Smart Siren (@andrei-lazarov)
  • #1856 Patch serialport bindings-cpp for Node v26.3+ (@Nerivec)
  • #1842 Add fingerprint for different zbt-2 batch (@Nerivec)
  • #1840 Interview Control4 devices via a manufacturerCode-keyed quirk (@bharat)
  • #1838 Prevent crash on backup failure (@Nerivec)
  • #1835 OTA send relative upgrade time in upgradeEndResponse (@midlan)
  • #32907 Improve Home Assistant cover state discovery (@feixm1)

Frontend

  • #660 feat: preserve device config on remove when keep_config is set (@cmiguelcabral)
  • #644 fix: Replace jszip with fflate (@cany748)

New supported devices

This release adds support for 84 devices:

  • #13050 HPZERAD-V1 Heiwa Ernest thermostat (OEM Eurevia) (@nicolasglg)
  • #13054 MS-DM-ZB NovaDigital Zigbee Module 1 channel Dimmer (@lecocissoto)
  • #13061 MW833P Mowe Smart presence sensor (24 GHz mmWave radar) (@isaackennylee)
  • #13071 SJCGQ12LM-ES Aqara Water leak sensor T1 engineering test version (no specific battery percentage support, not compatible with Aqara Home app) (@CCZU1623)
  • #13039 MG-DIM02Z Tuya Zigbee dimmer module with power monitoring (@Dozosan)
  • #13045 SFD02-Z Moes Star feather smart dimmer switch (@erickrgb)
  • #12947 ZS-US1-LN Moes Smart light switch - 1 gang (@TechSgin)
  • #13038 LF101W2-Mod Svetomaniya Smart light RGBW Ledron LF101W2 with new firmware (@slacky1965)
  • #13035 SC0002 Selena Desktop environmental monitoring station (@Ales2-k)
  • #12981 SCHA-1-MO Linxura 4-button smart controller (@xiaodah123)
  • #12981 SHCB-1-MO Linxura Aura 12-button smart controller (@xiaodah123)
  • #13037 ZG-227ZP HOBEIAN Temperature(NTC) & humidity sensor (@13717033460)
  • #13026 3RKS030Z Third Reality Smart Scale (@3reality-support)
  • #12943 42-050 Light Solutions LED driver CCT (@mikkelke)
  • #13033 4440156P6 Philips Hue Wellner white ambiance E27 806lm with Bluetooth (@skynetforcats)
  • #13011 929004295401 Philips Hue White and Color Ambiance E12 Full Spectrum Light (@jakemauer)
  • #12963 929004296901 Philips Hue wired dimmer switch (@reeett)
  • #12992 CS-T10C EZVIZ Water leak sensor (@Gren-95)
  • #13025 D4Z-M Nous Smart energy monitor for 3P+N system (@script0803)
  • #12973 MG-AU03GPOZLP-XX Tuya Double GPO power point with USB-C and energy monitoring (also sold as Smartlink Automation 'Glass smart double power point with USB-C') (@shanelord01)
  • #13032 MS032Z Tuya LED smart stair light controller (32 steps) (@staaks023)
  • #13023 S1-TL-AI Heiman Smart smoke alarm (@Leo2442926161)
  • #13013 S2-E Heiman Smart smoke alarm (@Leo2442926161)
  • #12996 SLC611 OWON Zigbee smart switch with power metering (@jacky202509)
  • #12990 TH05-z Tuya ZTH05 temperature & humidity sensor (pvvx/ZigbeeTLc) (@Ctrl-F4)
  • #13015 TS202PIR1-z Tuya ZP01 PIR motion sensor (pvvx/ZigbeeTLc) (@Ctrl-F4)
  • #13005 WNRCB46WH Legrand Wired 4 scenes control (@starfoxcito)
  • #12991 WP-P09D Aqara Wall outlet H2 UK (@piwi3910)
  • #12966 929004295601 Philips Hue white ambiance B39 Candle E14 (@chris-1243)
  • #12957 929004296701 Philips Hue wired on/off switch (1 channel) (@mkrle)
  • #12932 HCXDD13LM Aqara Nebula ceiling lamp H1 (@ileodo)
  • #12939 M1P-E Heiman Smart occupancy sensor (@Leo2442926161)
  • #12949 TS0601_co2_temperature_humidity_sensor Tuya CO2/temperature/humidity sensor (@mouse256)
  • #12918 ZB-MIDEA-AC PirogovX Zigbee air conditioner controller for Midea / Royal Clima / Hommyn / Neoline (ESP32-H2/C6) (@pirsasha)
  • #12921 CK-TLSR8656-Z23SE11HW-01(7019) eWeLink Zigbee water sensor (@owenb321)
  • #12936 GWA1241 Gewiss ChorusSmart 2-channel push button controller (@LucaCh92)
  • #12913 PIR313-L OWON Light sensor (@grobian)
  • #12865 Ribag Air O RIBAG Licht Ribag Vertico Air Pendant Light (@rmurach)
  • #12682 TERNCY-WS01-S1 TERNCY 1-gang no-neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-S2 TERNCY 2-gang no-neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-S3 TERNCY 3-gang no-neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-S4 TERNCY 4-gang no-neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-D1 TERNCY 1-gang neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-D2 TERNCY 2-gang neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-D3 TERNCY 3-gang neutral wall switch (@calvinastroboy)
  • #12912 929004296801 Philips Hue wired wall switch module 2 channel (@reeett)
  • #12914 C-ZB-RD1Pv2-DIM Candeo Zigbee rotary dimmer pro (dimmer mode) (@candeodevelopment)
  • #12911 EZ-500FS Excellux Split-type sensor for detecting soil moisture, temperature and humidity (@iotRobot)
  • #12910 HE300_ZB MultIR Human presence sensor (@LotusRou)
  • #12896 TLSR-DIY-ZR01-LIGHT-CCT Custom devices (DiY) CCT LED lamp/dimmer with custom firmware (@nminaylov)
  • #12894 _TZE204_7lb6j8wg Tuya Semicom touch panel: 3 shutters (@Simchon)
  • #12894 _TZE204_8eazvzo6 Tuya Semicom touch panel: 6 switches (@Simchon)
  • #12886 3RMS26Z Third Reality Smart PIR Sensor Gen2 (@3reality-support)
  • #12882 929004291501 Philips Hue white and color ambiance slim downlight 4 inch (@goldstar19)
  • #12879 AirCube StuckAtPrototype AirCube air quality monitor (@krobipd)
  • #12893 AY301Z-2CH AOYAN 2 gang wall switch module (@zyjsmile857)
  • #12884 CK-TLSR8656-SS5-01(7035) eWeLink Zigbee smoke alarm (@shuang-nok)
  • #12859 EIGHTREE Socket EIGHTREE Smart plug (with power monitoring) (@z47mkp98bm-debug)
  • #12895 HS2NLV Heiman Smart notifier (@Leo2442926161)
  • #12885 ZB-24GMS02 easyiot Zigbee motion and radar sensor (@xsp1989)
  • #12875 AY204T AOYAN Millimeter wave motion detection (@zyjsmile857)
  • #12855 S1-TL Heiman Smart smoke alarm (@Leo2442926161)
  • #12855 HS2VTD Heiman Smart 4 in 1 door sensor (@Leo2442926161)
  • #12855 HS2TD Heiman Smart 3 in 1 door sensor (@Leo2442926161)
  • #12855 HS2HT Heiman Smart temperature & humidity sensor (@Leo2442926161)
  • #12864 Z20-IK03F ARTDNA 3 gang F style switch module (@oneliner-code)
  • #12861 TS0301_cover_2 Tuya Cover motor (@andrei-lazarov)
  • #12836 CK-TLSR8656-SS5-01(7037) eWeLink Zigbee CO sensor (@shuang-nok)
  • #12826 929003812301 Philips Runner single spotlight (White) (@chris-1243)
  • #12111 Charge Futurehome Futurehome Charge (EV Charger) (@svhelge)
  • #12827 EZ-500FL Excellux Split-type sensor for detecting soil moisture, soil fertility, temperature and humidity (@iotRobot)
  • #12806 LWM005 Modular Dim Module Hue 0-10V/1-10V 150-300W (@pmillart)
  • #12830 ROB_200-065-0 ROBB LED Power Supply & RGBW Controller 24V 100W (@reinos)
  • #13044 ZMZ609-2 Zemismart Zigbee neutral touchscreen switch 2 gang with power monitoring (@lboue)
  • #12972 ZXB3-125 SMTONOFF Three-phase breaker (@analienx)
  • #12835 CK-TLSR8656-SS5-01(7037) eWeLink CK-TLSR8656-SS5-01(7037) (@shuang-nok)
  • #12682 TERNCY-WS01-S1 TERNCY 1-gang no-neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-S2 TERNCY 2-gang no-neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-S3" TERNCY 3-gang no-neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-S4 TERNCY 4-gang no-neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-D1 TERNCY 1-gang neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-D2 TERNCY 2-gang neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-D3 TERNCY 3-gang neutral wall switch (@calvinastroboy)
  • #12682 TERNCY-WS01-D4 TERNCY 4-gang neutral wall switch (@calvinastroboy)

Fixed device detections

  • #13052 Detect _TZ3000_wvedmwyp as Lonsonho TS130F_dual (@mahmoud202222)
  • #13070 Detect _TZE200_loejka0i as Nous D4Z (@andrei-lazarov)
  • #13069 Detect _TZE204_3yp57tby and _TZE2841000000_3yp57tby as Saswell SEA801-Zigbee/SEA802-Zigbee (@andrei-lazarov)
  • #13067 Detect _TZE28C1000000_1fuxihti as Tuya TS0601_cover_1 (@kusok18)
  • #13057 Detect _TZE28C1000000_xibaabmu as Zemismart ZMS-206US-4 (@andrei-lazarov)
  • #13046 Detect _TZE2841000000_qf5mzewi as ONENUO TH05Z (@andrei-lazarov)
  • #13047 Detect _TZE28C1000000_dmckrsxg as Zemismart ZMS-206EU-2 (@andrei-lazarov)
  • #13009 Detect _TZ3000_gjiggmio as Tuya TS0215A_sos (@luisrodriguezpaino-lab)
  • #13021 Detect _TZE284_n41i9jyt as Nova Digital ZVL-DUAL (@malheiros)
  • #12948 Detect _TZE284_q9qytwfa as Tuya TS0601_power_monitoring_switch (@TechSgin)
  • #13000 Detect _TZE28C1000000_hwv3by9k as Manhot MH03-8Z-OLED (@akhunduqji)
  • #12995 GWRJN5169: add various modelIds (@igorlistopad)
  • #12935 Detect _TZE2841000000_qf5mzewiz as ONENUO TH05Z (@sekot)
  • #32740 Detect _TZE28C1000000_nqqylykc as AVATTO ZDMS16-1 (@Koenkk)
  • #12898 Detect _TZ3210_fawk5xjv as Nova Digital NFZB-03 (@rodolfomenardi)
  • #12869 Detect _TZE204_qujphad5 as Tuya TYBAC-006 (@tariqgooro)
  • #12862 Detect _TZ3000_bbebkwjk as Tuya TS0001_switch_1_gang (@homeassistantmiller)
  • #32720 Detect _TZ3210_o235agwx as Tuya TS110E_1gang_2 (@Koenkk)
  • #12842 Detect _TZE284_tokhh9pf as Tuya TS0601_6gang_switch (@LEOBOESE)
  • #12858 Detect _TZE28C1000000_vvvtcehj as Roximo CRTZ01 (@kulhaker478)
  • #12843 Detect _TZ3210_rundhkxp as Moes ADCBZI01 (@pcjun97)
  • #12844 Detect _TZE284_ksz749x8 as Tuya ZTH02 (@brozikcz)
  • #12924 Detect 929004321101 as Philips 929004321001 (@PSeros)
View original

Upgraded? How did it go?

Discussion