zigbee-herdsman-converters 25.101.0 → 25.103.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/dist/devices/awox.d.ts.map +1 -1
  3. package/dist/devices/awox.js +11 -1
  4. package/dist/devices/awox.js.map +1 -1
  5. package/dist/devices/bituo_technik.d.ts.map +1 -1
  6. package/dist/devices/bituo_technik.js +3 -0
  7. package/dist/devices/bituo_technik.js.map +1 -1
  8. package/dist/devices/bosch.d.ts.map +1 -1
  9. package/dist/devices/bosch.js +8 -50
  10. package/dist/devices/bosch.js.map +1 -1
  11. package/dist/devices/dresden_elektronik.d.ts.map +1 -1
  12. package/dist/devices/dresden_elektronik.js +24 -2
  13. package/dist/devices/dresden_elektronik.js.map +1 -1
  14. package/dist/devices/ecodim.d.ts.map +1 -1
  15. package/dist/devices/ecodim.js +7 -0
  16. package/dist/devices/ecodim.js.map +1 -1
  17. package/dist/devices/multir.d.ts.map +1 -1
  18. package/dist/devices/multir.js +2 -1
  19. package/dist/devices/multir.js.map +1 -1
  20. package/dist/devices/niko.js +1 -1
  21. package/dist/devices/niko.js.map +1 -1
  22. package/dist/devices/owon.d.ts.map +1 -1
  23. package/dist/devices/owon.js +242 -17
  24. package/dist/devices/owon.js.map +1 -1
  25. package/dist/devices/philips.d.ts.map +1 -1
  26. package/dist/devices/philips.js +8 -1
  27. package/dist/devices/philips.js.map +1 -1
  28. package/dist/devices/tuya.d.ts.map +1 -1
  29. package/dist/devices/tuya.js +203 -7
  30. package/dist/devices/tuya.js.map +1 -1
  31. package/dist/lib/tuya.d.ts +26 -0
  32. package/dist/lib/tuya.d.ts.map +1 -1
  33. package/dist/lib/tuya.js +82 -0
  34. package/dist/lib/tuya.js.map +1 -1
  35. package/dist/lib/types.d.ts +1 -1
  36. package/dist/lib/types.d.ts.map +1 -1
  37. package/dist/models-index.json +1 -1
  38. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tuya.d.ts","sourceRoot":"","sources":["../../src/devices/tuya.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAC,oBAAoB,EAA4D,MAAM,cAAc,CAAC;AAq2ClH,eAAO,MAAM,WAAW,EAAE,oBAAoB,EA2sqB7C,CAAC"}
1
+ {"version":3,"file":"tuya.d.ts","sourceRoot":"","sources":["../../src/devices/tuya.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAC,oBAAoB,EAA4D,MAAM,cAAc,CAAC;AAq2ClH,eAAO,MAAM,WAAW,EAAE,oBAAoB,EAy5qB7C,CAAC"}
@@ -2471,6 +2471,23 @@ exports.definitions = [
2471
2471
  toZigbee: [],
2472
2472
  exposes: [e.temperature(), e.humidity(), e.co2(), e.voc().withUnit("ppb"), e.formaldehyd().withUnit("µg/m³")],
2473
2473
  },
2474
+ {
2475
+ fingerprint: tuya.fingerprint("TS0601", ["_TZE284_8b9zpaav"]),
2476
+ model: "TS0601_airbox",
2477
+ vendor: "Tuya",
2478
+ description: "zigbee air quality sensor",
2479
+ extend: [tuya.modernExtend.tuyaBase({ dp: true })],
2480
+ exposes: [e.temperature(), e.humidity(), e.co2(), e.voc().withUnit("ppb"), e.formaldehyd().withUnit("µg/m³")],
2481
+ meta: {
2482
+ tuyaDatapoints: [
2483
+ [2, "co2", tuya.valueConverter.raw],
2484
+ [18, "temperature", tuya.valueConverter.divideBy10],
2485
+ [19, "humidity", tuya.valueConverter.raw],
2486
+ [21, "voc", tuya.valueConverter.divideBy100],
2487
+ [22, "formaldehyd", tuya.valueConverter.divideBy100],
2488
+ ],
2489
+ },
2490
+ },
2474
2491
  {
2475
2492
  fingerprint: tuya.fingerprint("TS0601", ["_TZE200_rbbx5mfq", "_TZE204_rbbx5mfq"]),
2476
2493
  model: "TS0601_illuminance_temperature_humidity_sensor_2",
@@ -2997,6 +3014,7 @@ exports.definitions = [
2997
3014
  tuya.whitelabel("MiBoxer", "FUT066Z", "RGB+CCT LED Downlight", ["_TZ3210_zrvxvydd"]),
2998
3015
  tuya.whitelabel("MiBoxer", "FUT068ZR", "RGB+CCT LED Downlight", ["_TZB210_endmggws"]),
2999
3016
  tuya.whitelabel("MiBoxer", "FUT103ZR", "GU10 RGB+CCT", ["_TZB210_6eed09b9"]),
3017
+ tuya.whitelabel("MiBoxer", "FUT105ZR", "RGB+CCT LED bulb", ["_TZB210_uoiqhjqe"]),
3000
3018
  tuya.whitelabel("MiBoxer", "FUT106ZR", "GU10 RGB+CCT", ["_TZB210_rwy5hexp", "_TZB210_lnnkh3f9"]),
3001
3019
  tuya.whitelabel("Tuya", "TS0505B_1_1", "Zigbee 3.0 18W led light bulb E27 RGBCW", [
3002
3020
  "_TZ3210_jd3z4yig",
@@ -3942,7 +3960,7 @@ exports.definitions = [
3942
3960
  ],
3943
3961
  },
3944
3962
  {
3945
- fingerprint: tuya.fingerprint("TS0601", ["_TZE204_dcnsggvz", "_TZE200_dcnsggv"]),
3963
+ fingerprint: tuya.fingerprint("TS0601", ["_TZE204_dcnsggvz", "_TZE200_dcnsggv", "_TZE200_dcnsggvz"]),
3946
3964
  model: "TS0601_dimmer_5",
3947
3965
  vendor: "Tuya",
3948
3966
  description: "1 gang smart dimmer module",
@@ -5605,9 +5623,6 @@ exports.definitions = [
5605
5623
  "_TZ3000_eei0ubpy",
5606
5624
  "_TZ3000_qaa59zqd",
5607
5625
  "_TZ3000_lmlsduws",
5608
- "_TZ3000_lugaswf8",
5609
- "_TZ3000_nuenzetq",
5610
- "_TZ3000_ruldv5dt",
5611
5626
  "_TZ3000_fbjdkph9",
5612
5627
  "_TZ3000_zbfya6h0",
5613
5628
  "_TZ3000_hznzbl0x",
@@ -5620,7 +5635,6 @@ exports.definitions = [
5620
5635
  tuya.whitelabel("Moes", "ZM-104B-M", "2 gang switch", ["_TZ3000_qaa59zqd"]),
5621
5636
  tuya.whitelabel("pcblab.io", "RR620ZB", "2 gang Zigbee switch module", ["_TZ3000_4xfqlgqo"]),
5622
5637
  tuya.whitelabel("Nous", "L13Z", "2 gang switch", ["_TZ3000_ruxexjfz", "_TZ3000_hojntt34"]),
5623
- tuya.whitelabel("Tuya", "ZG-2002-RF", "Three mode Zigbee Switch", ["_TZ3000_lugaswf8", "_TZ3000_nuenzetq", "_TZ3000_ruldv5dt"]),
5624
5638
  tuya.whitelabel("Mercator Ikuü", "SSW02", "2 gang switch", ["_TZ3000_fbjdkph9"]),
5625
5639
  tuya.whitelabel("Aubess", "TMZ02", "2 gang switch", ["_TZ3000_lmlsduws"]),
5626
5640
  tuya.whitelabel("RSH", "TS0002_basic_2", "2 gang switch", ["_TZ3000_zbfya6h0"]),
@@ -5721,6 +5735,7 @@ exports.definitions = [
5721
5735
  tuya.whitelabel("PSMART", "T462", "2 Gang switch with backlight, countdown, inching", ["_TZ3000_wnzoyohq"]),
5722
5736
  tuya.whitelabel("Nova Digital", "FZB-2", "2-Gang switch with backlight, countdown and inching", ["_TZ3000_5ksufhqi"]),
5723
5737
  tuya.whitelabel("iHseno", "_TZ3000_zxrfobzw", "2-gang touch switch", ["_TZ3000_zxrfobzw"]),
5738
+ tuya.whitelabel("Tuya", "ZG-2002-RF", "Three mode Zigbee Switch", ["_TZ3000_lugaswf8", "_TZ3000_nuenzetq", "_TZ3000_ruldv5dt"]),
5724
5739
  ],
5725
5740
  },
5726
5741
  {
@@ -16196,7 +16211,7 @@ exports.definitions = [
16196
16211
  },
16197
16212
  },
16198
16213
  {
16199
- fingerprint: tuya.fingerprint("TS0004", ["_TZ3000_5ajpkyq6", "_TZ3000_knoj8lpk"]),
16214
+ fingerprint: tuya.fingerprint("TS0004", ["_TZ3000_5ajpkyq6", "_TZ3000_knoj8lpk", "_TZ3000_3n2minvf"]),
16200
16215
  model: "TS0004_switch_module_2",
16201
16216
  vendor: "Tuya",
16202
16217
  description: "4 gang switch module",
@@ -16220,7 +16235,7 @@ exports.definitions = [
16220
16235
  await reporting.bind(device.getEndpoint(4), coordinatorEndpoint, ["genOnOff"]);
16221
16236
  },
16222
16237
  whiteLabel: [
16223
- tuya.whitelabel("AVATTO", "ZWSM16-4-Zigbee", "4 gang switch module", ["_TZ3000_5ajpkyq6"]),
16238
+ tuya.whitelabel("AVATTO", "ZWSM16-4-Zigbee", "4 gang switch module", ["_TZ3000_5ajpkyq6", "_TZ3000_3n2minvf"]),
16224
16239
  tuya.whitelabel("iHseno", "_TZ3000_knoj8lpk", "4 gang switch module", ["_TZ3000_knoj8lpk"]),
16225
16240
  ],
16226
16241
  },
@@ -18691,6 +18706,61 @@ exports.definitions = [
18691
18706
  ],
18692
18707
  },
18693
18708
  },
18709
+ {
18710
+ fingerprint: tuya.fingerprint("TS0601", ["_TZE284_mxujdmxo"]),
18711
+ model: "ME202WZ",
18712
+ vendor: "Tuya",
18713
+ description: "Water level sensor",
18714
+ extend: [tuya.modernExtend.tuyaBase({ dp: true, forceTimeUpdates: true })],
18715
+ exposes: [
18716
+ e.enum("liquid_state", ea.STATE, ["low", "normal", "high"]).withDescription("Liquid level status"),
18717
+ e.numeric("liquid_depth", ea.STATE).withUnit("m").withDescription("Liquid Depth"),
18718
+ e.numeric("power_level", ea.STATE).withUnit("V").withDescription("Power supply voltage"),
18719
+ e
18720
+ .numeric("max_set", ea.STATE_SET)
18721
+ .withUnit("%")
18722
+ .withDescription("Liquid max percentage")
18723
+ .withValueMin(0)
18724
+ .withValueMax(100)
18725
+ .withValueStep(1),
18726
+ e
18727
+ .numeric("mini_set", ea.STATE_SET)
18728
+ .withUnit("%")
18729
+ .withDescription("Liquid minimal percentage")
18730
+ .withValueMin(0)
18731
+ .withValueMax(100)
18732
+ .withValueStep(1),
18733
+ e
18734
+ .numeric("liquid_depth_max", ea.STATE_SET)
18735
+ .withUnit("m")
18736
+ .withDescription("Height from sensor to liquid level")
18737
+ .withValueMin(0.1)
18738
+ .withValueMax(4)
18739
+ .withValueStep(0.01),
18740
+ e.numeric("liquid_level_percent", ea.STATE).withUnit("%").withDescription("Liquid level ratio"),
18741
+ e.text("version", ea.STATE_GET).withDescription("Device version"),
18742
+ ],
18743
+ meta: {
18744
+ tuyaDatapoints: [
18745
+ [
18746
+ 1,
18747
+ "liquid_state",
18748
+ tuya.valueConverterBasic.lookup({
18749
+ low: tuya.enum(1),
18750
+ normal: tuya.enum(0),
18751
+ high: tuya.enum(2),
18752
+ }),
18753
+ ],
18754
+ [2, "liquid_depth", tuya.valueConverter.divideBy100],
18755
+ [5, "power_level", tuya.valueConverter.divideBy10],
18756
+ [7, "max_set", tuya.valueConverter.raw],
18757
+ [8, "mini_set", tuya.valueConverter.raw],
18758
+ [21, "liquid_depth_max", tuya.valueConverter.divideBy100],
18759
+ [22, "liquid_level_percent", tuya.valueConverter.raw],
18760
+ [103, "version", tuya.valueConverter.raw],
18761
+ ],
18762
+ },
18763
+ },
18694
18764
  {
18695
18765
  fingerprint: [{ modelID: "TS0601", manufacturerName: "_TZE200_lvkk0hdg" }],
18696
18766
  model: "TLC2206",
@@ -22758,5 +22828,131 @@ exports.definitions = [
22758
22828
  ],
22759
22829
  },
22760
22830
  },
22831
+ {
22832
+ fingerprint: tuya.fingerprint("TS0601", ["_TZE284_roujjevx"]),
22833
+ model: "TS0601_smart_temperature_switch",
22834
+ vendor: "Tuya",
22835
+ description: "Smart temperature switch with manual and automatic modes: heating & cooling",
22836
+ extend: [
22837
+ tuya.modernExtend.tuyaBase({
22838
+ dp: true,
22839
+ timeStart: "1970",
22840
+ queryOnDeviceAnnounce: true,
22841
+ queryOnConfigure: true,
22842
+ }),
22843
+ ],
22844
+ exposes: [
22845
+ e
22846
+ .numeric("temperature_c", ea.STATE)
22847
+ .withUnit("℃")
22848
+ .withDescription("Measured temperature in ℃. Device reports it only when it set ℃ unit.")
22849
+ .withCategory("diagnostic"),
22850
+ e.numeric("temperature_f", ea.STATE).withUnit("℉").withDescription("Measured temperature in ℉").withCategory("diagnostic"),
22851
+ e.switch().withDescription("Turn on/off device connected to output"),
22852
+ e
22853
+ .binary("autowork", ea.ALL, "ON", "OFF")
22854
+ .withDescription("Turn on automatic mode to control constant temperature")
22855
+ .withCategory("config"),
22856
+ e
22857
+ .enum("work_mode", ea.ALL, ["heating", "cooling"])
22858
+ .withDescription(`
22859
+ Heating: switch is turned ON until temperature will increase to setpoint (then will turn OFF). When temperature will go down below set temperature range, switch will turn ON again.
22860
+ Cooling: switch is turned ON until temperature will decrease to setpoint (then will turn OFF). When temperature will go up above set temperature range, switch will turn ON again.
22861
+ `)
22862
+ .withCategory("config"),
22863
+ tuya.exposes.temperatureUnit().withAccess(ea.ALL).withCategory("config"),
22864
+ e
22865
+ .numeric("temperature_c_setpoint", ea.ALL)
22866
+ .withUnit("℃")
22867
+ .withDescription("Temperature ℃ set point")
22868
+ .withCategory("config")
22869
+ .withValueMin(-20)
22870
+ .withValueMax(102)
22871
+ .withValueStep(0.5),
22872
+ e
22873
+ .numeric("temperature_f_setpoint", ea.ALL)
22874
+ .withUnit("℉")
22875
+ .withDescription("Temperature ℉ set point")
22876
+ .withCategory("config")
22877
+ .withValueMin(-4)
22878
+ .withValueMax(221)
22879
+ .withValueStep(0.5),
22880
+ e
22881
+ .numeric("temperature_range", ea.ALL)
22882
+ .withDescription("The delta between temperature setpoint and measured temperature to trigger heating or cooling")
22883
+ .withCategory("config")
22884
+ .withValueMin(1)
22885
+ .withValueMax(9)
22886
+ .withValueStep(0.5),
22887
+ tuya.exposes
22888
+ .temperatureCalibration()
22889
+ .withUnit("℉")
22890
+ .withDescription("Temperature calibration always in ℉")
22891
+ .withCategory("config")
22892
+ .withValueMin(-9)
22893
+ .withValueMax(9)
22894
+ .withValueStep(1),
22895
+ e.binary("cooling_delay_switch", ea.ALL, "ON", "OFF").withDescription("Turn on cooling mode delay").withCategory("config"),
22896
+ e
22897
+ .numeric("cooling_delay", ea.ALL)
22898
+ .withUnit("m")
22899
+ .withDescription("Delay to turn on - only for cooling mode")
22900
+ .withCategory("config")
22901
+ .withValueMin(0)
22902
+ .withValueMax(10)
22903
+ .withValueStep(1),
22904
+ tuya.exposes
22905
+ .countdown()
22906
+ .withAccess(ea.ALL)
22907
+ .withDescription("Countdown to turn device on/off after a certain time")
22908
+ .withCategory("config")
22909
+ .withValueMax(86400), // 24h
22910
+ e
22911
+ .list("schedules", ea.SET, exposes
22912
+ .composite("schedule", "schedule", ea.SET)
22913
+ .withFeature(e.binary("enabled", ea.SET, true, false).withDescription("Enable schedule"))
22914
+ .withFeature(e.enum("work_mode", ea.SET, ["heating", "cooling"]))
22915
+ .withFeature(e.numeric("temperature_f", ea.SET).withUnit("℉").withDescription("Target temperature in ℉"))
22916
+ .withFeature(exposes
22917
+ .composite("start", "start", ea.SET)
22918
+ .withFeature(e.numeric("hour", ea.SET).withValueMin(0).withValueMax(23).withValueStep(1))
22919
+ .withFeature(e.numeric("minute", ea.SET).withValueMin(0).withValueMax(59).withValueStep(1)))
22920
+ .withFeature(exposes
22921
+ .composite("end", "end", ea.SET)
22922
+ .withFeature(e.numeric("hour", ea.SET).withValueMin(0).withValueMax(23).withValueStep(1))
22923
+ .withFeature(e.numeric("minute", ea.SET).withValueMin(0).withValueMax(59).withValueStep(1)))
22924
+ .withFeature(exposes
22925
+ .composite("week_days", "week_days", ea.SET)
22926
+ .withFeature(e.binary("sunday", ea.SET, true, false))
22927
+ .withFeature(e.binary("monday", ea.SET, true, false))
22928
+ .withFeature(e.binary("tuesday", ea.SET, true, false))
22929
+ .withFeature(e.binary("wednesday", ea.SET, true, false))
22930
+ .withFeature(e.binary("thursday", ea.SET, true, false))
22931
+ .withFeature(e.binary("friday", ea.SET, true, false))
22932
+ .withFeature(e.binary("saturday", ea.SET, true, false))))
22933
+ .withDescription("Schedules for automatic mode work at certain week day and time")
22934
+ .withCategory("config")
22935
+ .withLengthMax(3),
22936
+ ],
22937
+ meta: {
22938
+ tuyaDatapoints: [
22939
+ [2, "state", tuya.valueConverter.onOffNotStrict],
22940
+ [4, "countdown", tuya.valueConverter.countdown],
22941
+ [7, "schedules", tuya.valueConverter.thermostatSchedule],
22942
+ [8, "work_mode", tuya.valueConverterBasic.lookup({ heating: tuya.enum(0), cooling: tuya.enum(2) })],
22943
+ [9, "autowork", tuya.valueConverter.onOffNotStrict],
22944
+ [20, "temperature_unit", tuya.valueConverter.temperatureUnitEnum],
22945
+ [21, "temperature_f_setpoint", tuya.valueConverter.divideBy10],
22946
+ [22, "temperature_c_setpoint", tuya.valueConverter.divideBy10],
22947
+ [27, "temperature_c", tuya.valueConverter.divideBy10],
22948
+ [28, "temperature_f", tuya.valueConverter.divideBy10],
22949
+ [29, "temperature_range", tuya.valueConverter.divideBy10],
22950
+ [30, "temperature_calibration", tuya.valueConverter.raw],
22951
+ // 50: Fault - not mapped
22952
+ [55, "cooling_delay", tuya.valueConverter.raw],
22953
+ [56, "cooling_delay_switch", tuya.valueConverter.onOffNotStrict],
22954
+ ],
22955
+ },
22956
+ },
22761
22957
  ];
22762
22958
  //# sourceMappingURL=tuya.js.map