zigbee-herdsman-converters 25.36.0 → 25.37.1
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.
- package/CHANGELOG.md +44 -0
- package/dist/devices/avatto.js +1 -1
- package/dist/devices/avatto.js.map +1 -1
- package/dist/devices/bosch.d.ts.map +1 -1
- package/dist/devices/bosch.js +7 -0
- package/dist/devices/bosch.js.map +1 -1
- package/dist/devices/heiman.js +1 -1
- package/dist/devices/innr.d.ts.map +1 -1
- package/dist/devices/innr.js +32 -17
- package/dist/devices/innr.js.map +1 -1
- package/dist/devices/moes.d.ts.map +1 -1
- package/dist/devices/moes.js +5 -3
- package/dist/devices/moes.js.map +1 -1
- package/dist/devices/multir.js +4 -4
- package/dist/devices/multir.js.map +1 -1
- package/dist/devices/philips.js +3 -3
- package/dist/devices/philips.js.map +1 -1
- package/dist/devices/somfy.js +1 -1
- package/dist/devices/somfy.js.map +1 -1
- package/dist/devices/sonoff.d.ts.map +1 -1
- package/dist/devices/sonoff.js +11 -2
- package/dist/devices/sonoff.js.map +1 -1
- package/dist/devices/tuya.d.ts.map +1 -1
- package/dist/devices/tuya.js +214 -42
- package/dist/devices/tuya.js.map +1 -1
- package/dist/devices/zemismart.js +5 -5
- package/dist/devices/zemismart.js.map +1 -1
- package/dist/lib/bosch.d.ts +6 -0
- package/dist/lib/bosch.d.ts.map +1 -1
- package/dist/lib/bosch.js +49 -0
- package/dist/lib/bosch.js.map +1 -1
- package/dist/lib/modernExtend.d.ts +1 -0
- package/dist/lib/modernExtend.d.ts.map +1 -1
- package/dist/lib/modernExtend.js +19 -18
- package/dist/lib/modernExtend.js.map +1 -1
- package/dist/lib/tuya.d.ts +5 -1
- package/dist/lib/tuya.d.ts.map +1 -1
- package/dist/lib/tuya.js +20 -1
- package/dist/lib/tuya.js.map +1 -1
- package/dist/models-index.json +1 -1
- package/package.json +1 -1
package/dist/devices/tuya.js
CHANGED
|
@@ -1425,13 +1425,14 @@ exports.definitions = [
|
|
|
1425
1425
|
"_TZE284_hdyjyqjm",
|
|
1426
1426
|
"_TZE284_d7lpruvi",
|
|
1427
1427
|
"_TZE284_upagmta9",
|
|
1428
|
+
"_TZE204_ksz749x8",
|
|
1428
1429
|
"_TZE204_1wnh8bqp",
|
|
1429
1430
|
"_TZE284_1wnh8bqp",
|
|
1430
1431
|
]),
|
|
1431
1432
|
model: "TS0601_temperature_humidity_sensor_2",
|
|
1432
1433
|
vendor: "Tuya",
|
|
1433
1434
|
description: "Temperature and humidity sensor",
|
|
1434
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true, queryOnDeviceAnnounce: true, queryOnConfigure: true })],
|
|
1435
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, queryOnDeviceAnnounce: true, queryOnConfigure: true, respondToMcuVersionResponse: true })],
|
|
1435
1436
|
exposes: [e.temperature(), e.humidity(), tuya.exposes.batteryState(), tuya.exposes.temperatureUnit()],
|
|
1436
1437
|
meta: {
|
|
1437
1438
|
tuyaDatapoints: [
|
|
@@ -1472,7 +1473,7 @@ exports.definitions = [
|
|
|
1472
1473
|
model: "ZTH05Z",
|
|
1473
1474
|
vendor: "Tuya",
|
|
1474
1475
|
description: "Temperature and humidity sensor",
|
|
1475
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true, queryOnDeviceAnnounce: true, queryOnConfigure: true })],
|
|
1476
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, queryOnDeviceAnnounce: true, queryOnConfigure: true, respondToMcuVersionResponse: true })],
|
|
1476
1477
|
exposes: [
|
|
1477
1478
|
e.temperature(),
|
|
1478
1479
|
e.humidity(),
|
|
@@ -4237,7 +4238,7 @@ exports.definitions = [
|
|
|
4237
4238
|
fromZigbee: [legacy.fromZigbee.tuya_water_leak, fz.ignore_basic_report],
|
|
4238
4239
|
exposes: [e.water_leak()],
|
|
4239
4240
|
toZigbee: [],
|
|
4240
|
-
whiteLabel: [{ vendor: "
|
|
4241
|
+
whiteLabel: [{ vendor: "NEO", model: "NAS-WS02B0" }],
|
|
4241
4242
|
},
|
|
4242
4243
|
{
|
|
4243
4244
|
fingerprint: tuya.fingerprint("TS0601", ["_TZE200_jthf7vb6"]),
|
|
@@ -4476,6 +4477,7 @@ exports.definitions = [
|
|
|
4476
4477
|
"_TZ3000_ruldv5dt",
|
|
4477
4478
|
"_TZ3000_fbjdkph9",
|
|
4478
4479
|
"_TZ3000_zbfya6h0",
|
|
4480
|
+
"_TZ3000_tas0zemd",
|
|
4479
4481
|
]),
|
|
4480
4482
|
model: "TS0002_basic",
|
|
4481
4483
|
vendor: "Tuya",
|
|
@@ -4903,6 +4905,7 @@ exports.definitions = [
|
|
|
4903
4905
|
"_TZE200_yia0p3tr",
|
|
4904
4906
|
"_TZE200_rsj5pu8y",
|
|
4905
4907
|
"_TZE200_yrugsphv",
|
|
4908
|
+
"_TZE204_yrugsphv",
|
|
4906
4909
|
"_TZE204_nladmfvf",
|
|
4907
4910
|
"_TZE200_2odrmqwq",
|
|
4908
4911
|
"_TZE204_lh3arisb",
|
|
@@ -5066,7 +5069,7 @@ exports.definitions = [
|
|
|
5066
5069
|
model: "TS0601_cover_7",
|
|
5067
5070
|
vendor: "Tuya",
|
|
5068
5071
|
description: "Cover motor",
|
|
5069
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
|
|
5072
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, respondToMcuVersionResponse: true })],
|
|
5070
5073
|
exposes: [e.cover_position().setAccess("position", ea.STATE_SET), e.battery()],
|
|
5071
5074
|
meta: {
|
|
5072
5075
|
tuyaDatapoints: [
|
|
@@ -5180,7 +5183,7 @@ exports.definitions = [
|
|
|
5180
5183
|
model: "TS0601_cover_9",
|
|
5181
5184
|
vendor: "Tuya",
|
|
5182
5185
|
description: "Cover motor",
|
|
5183
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
|
|
5186
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, respondToMcuVersionResponse: true })],
|
|
5184
5187
|
exposes: [e.cover_position().setAccess("position", ea.STATE_SET), e.battery()],
|
|
5185
5188
|
meta: {
|
|
5186
5189
|
tuyaDatapoints: [
|
|
@@ -5233,7 +5236,7 @@ exports.definitions = [
|
|
|
5233
5236
|
model: "TS0601_cover_10",
|
|
5234
5237
|
vendor: "Tuya",
|
|
5235
5238
|
description: "Cover motor",
|
|
5236
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
|
|
5239
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, respondToMcuVersionResponse: true })],
|
|
5237
5240
|
exposes: [
|
|
5238
5241
|
e.cover_position().setAccess("position", ea.STATE_SET),
|
|
5239
5242
|
e.enum("motor_direction", ea.STATE_SET, ["normal", "reversed"]).withDescription("Set the motor direction"),
|
|
@@ -5330,7 +5333,7 @@ exports.definitions = [
|
|
|
5330
5333
|
model: "BX82-TYZ1",
|
|
5331
5334
|
vendor: "Manhot",
|
|
5332
5335
|
description: "Cover motor",
|
|
5333
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
|
|
5336
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, respondToMcuVersionResponse: true })],
|
|
5334
5337
|
exposes: [
|
|
5335
5338
|
e.cover_position().setAccess("position", ea.STATE_SET),
|
|
5336
5339
|
e.enum("motor_direction", ea.STATE_SET, ["normal", "reversed"]).withDescription("Set the motor direction"),
|
|
@@ -5364,7 +5367,7 @@ exports.definitions = [
|
|
|
5364
5367
|
model: "MB60L-ZG-ZT-TY",
|
|
5365
5368
|
vendor: "Manhot",
|
|
5366
5369
|
description: "Smart blinds motor",
|
|
5367
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
|
|
5370
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, respondToMcuVersionResponse: true })],
|
|
5368
5371
|
exposes: [
|
|
5369
5372
|
e.battery(),
|
|
5370
5373
|
e.cover_position().setAccess("position", ea.STATE_SET),
|
|
@@ -5714,7 +5717,7 @@ exports.definitions = [
|
|
|
5714
5717
|
model: "TS0601_cover_3",
|
|
5715
5718
|
vendor: "Tuya",
|
|
5716
5719
|
description: "Cover motor",
|
|
5717
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true, timeStart: "2000"
|
|
5720
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, timeStart: "2000" })],
|
|
5718
5721
|
options: [exposes.options.invert_cover()],
|
|
5719
5722
|
exposes: [
|
|
5720
5723
|
e.battery(),
|
|
@@ -6026,6 +6029,7 @@ exports.definitions = [
|
|
|
6026
6029
|
"_TZE200_rxq4iti9",
|
|
6027
6030
|
"_TZE204_ogx8u5z6",
|
|
6028
6031
|
"_TZE284_ogx8u5z6",
|
|
6032
|
+
"_TZE204_vjpaih9f",
|
|
6029
6033
|
"_TZE200_hvaxb2tc" /* model: 'TRV06', vendor: 'AVATTO' */,
|
|
6030
6034
|
"_TZE284_o3x45p96" /* model: 'TRV06', vendor: 'AVATTO' */,
|
|
6031
6035
|
"_TZE284_c6wv4xyo" /* model: 'AVATTO_TRV06', vendor: 'AVATTO' */,
|
|
@@ -6047,7 +6051,7 @@ exports.definitions = [
|
|
|
6047
6051
|
"_TZE200_jkfbph7l",
|
|
6048
6052
|
]),
|
|
6049
6053
|
tuya.whitelabel("AVATTO", "ME168_1", "Thermostatic radiator valve", ["_TZE200_rxntag7i"]),
|
|
6050
|
-
tuya.whitelabel("AVATTO", "TRV06_1", "Thermostatic radiator valve", ["_TZE200_hvaxb2tc", "_TZE284_o3x45p96"]),
|
|
6054
|
+
tuya.whitelabel("AVATTO", "TRV06_1", "Thermostatic radiator valve", ["_TZE204_vjpaih9f", "_TZE200_hvaxb2tc", "_TZE284_o3x45p96"]),
|
|
6051
6055
|
tuya.whitelabel("EARU", "TRV06", "Smart thermostat module", ["_TZE200_yqgbrdyo", "_TZE200_rxq4iti9"]),
|
|
6052
6056
|
tuya.whitelabel("AVATTO", "AVATTO_TRV06", "Thermostatic radiator valve", ["_TZE284_c6wv4xyo", "_TZE204_o3x45p96"]),
|
|
6053
6057
|
tuya.whitelabel("THALEOS", "TRV06-AT", "Thermostatic radiator valve", [
|
|
@@ -7051,6 +7055,8 @@ exports.definitions = [
|
|
|
7051
7055
|
},
|
|
7052
7056
|
{
|
|
7053
7057
|
fingerprint: [
|
|
7058
|
+
// https://github.com/Koenkk/zigbee2mqtt/issues/28729
|
|
7059
|
+
{ modelID: "TS011F", applicationVersion: 240, manufacturerName: "_TZ3000_gjnozsaz", priority: -1 },
|
|
7054
7060
|
{ modelID: "TS011F", applicationVersion: 160, priority: -1 },
|
|
7055
7061
|
{ modelID: "TS011F", applicationVersion: 100, priority: -1 },
|
|
7056
7062
|
{ modelID: "TS011F", applicationVersion: 69, priority: -1 },
|
|
@@ -7066,7 +7072,7 @@ exports.definitions = [
|
|
|
7066
7072
|
{ vendor: "VIKEFON", model: "TS011F" },
|
|
7067
7073
|
{ vendor: "BlitzWolf", model: "BW-SHP15" },
|
|
7068
7074
|
{ vendor: "AVATTO", model: "MIUCOT10Z" },
|
|
7069
|
-
{ vendor: "
|
|
7075
|
+
{ vendor: "NEO", model: "PLUG-001SPB2" },
|
|
7070
7076
|
],
|
|
7071
7077
|
ota: true,
|
|
7072
7078
|
extend: [
|
|
@@ -8386,19 +8392,6 @@ exports.definitions = [
|
|
|
8386
8392
|
}
|
|
8387
8393
|
},
|
|
8388
8394
|
},
|
|
8389
|
-
{
|
|
8390
|
-
fingerprint: tuya.fingerprint("TS0726", ["_TZ3002_jn2x20tg"]),
|
|
8391
|
-
model: "TS0726_1_gang",
|
|
8392
|
-
vendor: "Tuya",
|
|
8393
|
-
description: "1 gang switch with neutral wire",
|
|
8394
|
-
fromZigbee: [fz.on_off, tuya.fz.power_on_behavior_2, fz.ignore_basic_report, fzLocal.TS0726_action],
|
|
8395
|
-
toZigbee: [tz.on_off, tuya.tz.power_on_behavior_2, tzLocal.TS0726_switch_mode],
|
|
8396
|
-
exposes: [e.switch(), e.power_on_behavior(), e.enum("switch_mode", ea.STATE_SET, ["switch", "scene"]), e.action(["scene_1"])],
|
|
8397
|
-
configure: async (device, coordinatorEndpoint) => {
|
|
8398
|
-
await tuya.configureMagicPacket(device, coordinatorEndpoint);
|
|
8399
|
-
await reporting.bind(device.getEndpoint(1), coordinatorEndpoint, ["genOnOff"]);
|
|
8400
|
-
},
|
|
8401
|
-
},
|
|
8402
8395
|
{
|
|
8403
8396
|
fingerprint: tuya.fingerprint("TS0726", ["_TZ3002_iedhxgyi"]),
|
|
8404
8397
|
model: "TS0726_3_gang",
|
|
@@ -8638,7 +8631,7 @@ exports.definitions = [
|
|
|
8638
8631
|
model: "ZWT07",
|
|
8639
8632
|
vendor: "Tuya",
|
|
8640
8633
|
description: "Wall-mount thermostat",
|
|
8641
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
|
|
8634
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, respondToMcuVersionResponse: true })],
|
|
8642
8635
|
exposes: [
|
|
8643
8636
|
e
|
|
8644
8637
|
.climate()
|
|
@@ -8881,7 +8874,7 @@ exports.definitions = [
|
|
|
8881
8874
|
model: "ZWT198/ZWT100-BH",
|
|
8882
8875
|
vendor: "Tuya",
|
|
8883
8876
|
description: "Wall thermostat",
|
|
8884
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true, respondToMcuVersionResponse:
|
|
8877
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, respondToMcuVersionResponse: true })],
|
|
8885
8878
|
whiteLabel: [tuya.whitelabel("AVATTO", "WT-100-BH", "Wall thermostat", ["_TZE204_gops3slb", "_TZE284_gops3slb"])],
|
|
8886
8879
|
exposes: [
|
|
8887
8880
|
e.binary("factory_reset", ea.STATE_SET, "ON", "OFF").withDescription("Full factory reset, use with caution!"),
|
|
@@ -9032,7 +9025,7 @@ exports.definitions = [
|
|
|
9032
9025
|
model: "TGM50-ZB",
|
|
9033
9026
|
vendor: "Tuya",
|
|
9034
9027
|
description: "Beok wall thermostat",
|
|
9035
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
|
|
9028
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, respondToMcuVersionResponse: true })],
|
|
9036
9029
|
exposes: [
|
|
9037
9030
|
e.child_lock(),
|
|
9038
9031
|
e.temperature_sensor_select(["internal", "external", "both"]),
|
|
@@ -10660,7 +10653,15 @@ exports.definitions = [
|
|
|
10660
10653
|
model: "RSH-HS06",
|
|
10661
10654
|
vendor: "Tuya",
|
|
10662
10655
|
description: "Temperature and humidity sensor",
|
|
10663
|
-
extend: [
|
|
10656
|
+
extend: [
|
|
10657
|
+
tuya.modernExtend.tuyaBase({
|
|
10658
|
+
dp: true,
|
|
10659
|
+
queryOnDeviceAnnounce: true,
|
|
10660
|
+
queryOnConfigure: true,
|
|
10661
|
+
timeStart: "off",
|
|
10662
|
+
respondToMcuVersionResponse: true,
|
|
10663
|
+
}),
|
|
10664
|
+
],
|
|
10664
10665
|
exposes: [
|
|
10665
10666
|
e.temperature(),
|
|
10666
10667
|
e.humidity(),
|
|
@@ -10734,7 +10735,7 @@ exports.definitions = [
|
|
|
10734
10735
|
model: "TS0601_pir",
|
|
10735
10736
|
vendor: "Tuya",
|
|
10736
10737
|
description: "Haozee PIR sensor",
|
|
10737
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true, timeStart: "off" })],
|
|
10738
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, timeStart: "off", respondToMcuVersionResponse: true })],
|
|
10738
10739
|
exposes: (device, options) => {
|
|
10739
10740
|
const exposes = [e.occupancy(), e.illuminance()];
|
|
10740
10741
|
// https://github.com/Koenkk/zigbee2mqtt.io/pull/4018
|
|
@@ -11290,6 +11291,35 @@ exports.definitions = [
|
|
|
11290
11291
|
],
|
|
11291
11292
|
},
|
|
11292
11293
|
},
|
|
11294
|
+
{
|
|
11295
|
+
fingerprint: tuya.fingerprint("TS0049", ["_TZ3290_ixd9mvv4"]),
|
|
11296
|
+
model: "LYAI-14",
|
|
11297
|
+
vendor: "Tuya",
|
|
11298
|
+
description: "Solar intelligent timed water valve controller",
|
|
11299
|
+
extend: [m.battery(), m.onOff({ powerOnBehavior: false }), tuya.modernExtend.tuyaBase({ dp: true })],
|
|
11300
|
+
// Countdown is not working properly yet - device ignores it and uses the default (10 minutes)
|
|
11301
|
+
// Countdown can be set using the Tuya app/hub and it will persist
|
|
11302
|
+
fromZigbee: [fz.battery, fz.on_off, fz.ignore_basic_report /*tuya.fz.on_off_countdown,*/],
|
|
11303
|
+
toZigbee: [tz.on_off /*tuya.tz.on_off_countdown,*/],
|
|
11304
|
+
exposes: [
|
|
11305
|
+
tuya.exposes.countdown().withAccess(ea.ALL),
|
|
11306
|
+
e.numeric("error_status", ea.STATE).withDescription("Device error code"),
|
|
11307
|
+
e.enum("rain_sensor_status", ea.STATE, ["rain", "no_rain"]).withDescription("Rain sensor state"),
|
|
11308
|
+
e.binary("rain_sensor_switch", ea.STATE_SET, "ON", "OFF").withDescription("Enable/disable rain sensor"),
|
|
11309
|
+
e.enum("battery_state", ea.STATE, ["no_charge", "charging", "charged"]).withDescription("Battery charging state"),
|
|
11310
|
+
],
|
|
11311
|
+
meta: {
|
|
11312
|
+
tuyaSendCommand: "sendData",
|
|
11313
|
+
tuyaDatapoints: [
|
|
11314
|
+
[1, "state", tuya.valueConverter.onOff],
|
|
11315
|
+
[4, "error_status", tuya.valueConverter.raw],
|
|
11316
|
+
[11, "countdown", tuya.valueConverter.countdown],
|
|
11317
|
+
[101, "rain_sensor_status", tuya.valueConverterBasic.lookup({ rain: tuya.enum(0), no_rain: tuya.enum(1) })],
|
|
11318
|
+
[102, "rain_sensor_switch", tuya.valueConverter.onOff],
|
|
11319
|
+
[103, "battery_state", tuya.valueConverterBasic.lookup({ no_charge: tuya.enum(0), charging: tuya.enum(1), charged: tuya.enum(2) })],
|
|
11320
|
+
],
|
|
11321
|
+
},
|
|
11322
|
+
},
|
|
11293
11323
|
{
|
|
11294
11324
|
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_eaet5qt5", "_TZE284_fhvpaltk"]),
|
|
11295
11325
|
model: "TS0601_water_switch",
|
|
@@ -12894,7 +12924,7 @@ exports.definitions = [
|
|
|
12894
12924
|
{
|
|
12895
12925
|
fingerprint: tuya.fingerprint("TS011F", ["_TZ3000_cfnprab5", "_TZ3000_o005nuxx", "_TZ3000_gdyjfvgm"]),
|
|
12896
12926
|
model: "TS011F_5",
|
|
12897
|
-
description: "5 gang
|
|
12927
|
+
description: "Power strip 5 gang",
|
|
12898
12928
|
vendor: "Tuya",
|
|
12899
12929
|
extend: [
|
|
12900
12930
|
tuya.modernExtend.tuyaOnOff({
|
|
@@ -13355,7 +13385,7 @@ exports.definitions = [
|
|
|
13355
13385
|
],
|
|
13356
13386
|
},
|
|
13357
13387
|
{
|
|
13358
|
-
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_k7mfgaen", "_TZE204_fncxk3ob"]),
|
|
13388
|
+
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_k7mfgaen", "_TZE204_fncxk3ob", "_TZE284_fncxk3ob"]),
|
|
13359
13389
|
model: "YXZBSL",
|
|
13360
13390
|
vendor: "Tuya",
|
|
13361
13391
|
description: "Smart siren",
|
|
@@ -13639,7 +13669,7 @@ exports.definitions = [
|
|
|
13639
13669
|
const exps = [
|
|
13640
13670
|
e.enum("state", ea.STATE, ["none", "presence", "move"]).withDescription("Presence state sensor"),
|
|
13641
13671
|
e.presence().withDescription("Occupancy"),
|
|
13642
|
-
e.numeric("distance", ea.STATE).withDescription("Target distance"),
|
|
13672
|
+
e.numeric("distance", ea.STATE).withUnit("m").withDescription("Target distance"),
|
|
13643
13673
|
e.binary("find_switch", ea.STATE_SET, "ON", "OFF").withDescription("distance switch"),
|
|
13644
13674
|
e.illuminance().withDescription("Illuminance sensor"),
|
|
13645
13675
|
e.numeric("move_sensitivity", ea.STATE_SET).withValueMin(1).withValueMax(10).withValueStep(1).withDescription("Motion Sensitivity"),
|
|
@@ -13998,7 +14028,7 @@ exports.definitions = [
|
|
|
13998
14028
|
description: "Bidirectional energy meter with 80A current clamp",
|
|
13999
14029
|
fromZigbee: [fzLocal.PJ1203A_strict_fz_datapoints, fzLocal.PJ1203A_sync_time_increase_seq],
|
|
14000
14030
|
toZigbee: [tuya.tz.datapoints],
|
|
14001
|
-
extend: [tuya.modernExtend.tuyaBase({ timeStart: "off"
|
|
14031
|
+
extend: [tuya.modernExtend.tuyaBase({ timeStart: "off" })],
|
|
14002
14032
|
options: [
|
|
14003
14033
|
e
|
|
14004
14034
|
.binary("late_energy_flow_a", ea.SET, true, false)
|
|
@@ -14303,7 +14333,7 @@ exports.definitions = [
|
|
|
14303
14333
|
{
|
|
14304
14334
|
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_kyhbrfyl"]),
|
|
14305
14335
|
model: "NAS-PS09B2",
|
|
14306
|
-
vendor: "
|
|
14336
|
+
vendor: "NEO",
|
|
14307
14337
|
description: "Human presence sensor",
|
|
14308
14338
|
fromZigbee: [tuya.fz.datapoints],
|
|
14309
14339
|
toZigbee: [tuya.tz.datapoints],
|
|
@@ -14371,6 +14401,7 @@ exports.definitions = [
|
|
|
14371
14401
|
queryOnDeviceAnnounce: true,
|
|
14372
14402
|
// https://github.com/Koenkk/zigbee2mqtt/issues/23946#issuecomment-2941182834
|
|
14373
14403
|
queryIntervalSeconds: 10 * 60,
|
|
14404
|
+
respondToMcuVersionResponse: true,
|
|
14374
14405
|
}),
|
|
14375
14406
|
m.poll({
|
|
14376
14407
|
key: "backlight",
|
|
@@ -14636,7 +14667,7 @@ exports.definitions = [
|
|
|
14636
14667
|
],
|
|
14637
14668
|
},
|
|
14638
14669
|
{
|
|
14639
|
-
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_kobbcyum", "_TZE284_kobbcyum", "_TZE284_hecsejsb", "_TZE284_432zhuwe"]),
|
|
14670
|
+
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_kobbcyum", "_TZE284_kobbcyum", "_TZE284_hecsejsb", "_TZE284_432zhuwe", "_TZE204_432zhuwe"]),
|
|
14640
14671
|
model: "TOWSMR1",
|
|
14641
14672
|
vendor: "Tongou",
|
|
14642
14673
|
description: "Single-phase multifunction RCBO (DIN Module)",
|
|
@@ -14645,11 +14676,11 @@ exports.definitions = [
|
|
|
14645
14676
|
dp: true,
|
|
14646
14677
|
queryOnConfigure: true,
|
|
14647
14678
|
queryIntervalSeconds: 10,
|
|
14648
|
-
respondToMcuVersionResponse: false,
|
|
14649
14679
|
timeStart: "off",
|
|
14680
|
+
respondToMcuVersionResponse: true,
|
|
14650
14681
|
}),
|
|
14651
14682
|
],
|
|
14652
|
-
whiteLabel: [tuya.whitelabel("Tongou", "TOSA1", "Single-phase multifunction RCBO (DIN Module)", ["_TZE284_432zhuwe"])],
|
|
14683
|
+
whiteLabel: [tuya.whitelabel("Tongou", "TOSA1", "Single-phase multifunction RCBO (DIN Module)", ["_TZE284_432zhuwe", "_TZE204_432zhuwe"])],
|
|
14653
14684
|
exposes: [
|
|
14654
14685
|
tuya.exposes.switch(),
|
|
14655
14686
|
e.temperature(),
|
|
@@ -14861,8 +14892,8 @@ exports.definitions = [
|
|
|
14861
14892
|
dp: true,
|
|
14862
14893
|
queryOnConfigure: true,
|
|
14863
14894
|
queryIntervalSeconds: 10,
|
|
14864
|
-
respondToMcuVersionResponse: false,
|
|
14865
14895
|
timeStart: "off",
|
|
14896
|
+
respondToMcuVersionResponse: true,
|
|
14866
14897
|
}),
|
|
14867
14898
|
],
|
|
14868
14899
|
exposes: [
|
|
@@ -15639,7 +15670,7 @@ exports.definitions = [
|
|
|
15639
15670
|
description: "Smart circuit breaker",
|
|
15640
15671
|
// Important: respondToMcuVersionResponse should be false otherwise there is an avalanche of commandMcuVersionResponse messages every second.
|
|
15641
15672
|
// queryIntervalSeconds: is doing a pooling to update the device's parameters, now defined to update data every 3 minutes.
|
|
15642
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true, queryIntervalSeconds: 3 * 60,
|
|
15673
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, queryIntervalSeconds: 3 * 60, timeStart: "off", respondToMcuVersionResponse: true })],
|
|
15643
15674
|
exposes: [
|
|
15644
15675
|
tuya.exposes.switch(),
|
|
15645
15676
|
e.energy(),
|
|
@@ -16903,7 +16934,7 @@ exports.definitions = [
|
|
|
16903
16934
|
model: "ME201WZ",
|
|
16904
16935
|
vendor: "Tuya",
|
|
16905
16936
|
description: "Water level sensor",
|
|
16906
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true, forceTimeUpdates: true
|
|
16937
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, forceTimeUpdates: true })],
|
|
16907
16938
|
exposes: [
|
|
16908
16939
|
e.numeric("liquid_level_percent", ea.STATE).withUnit("%").withDescription("Liquid level ratio"),
|
|
16909
16940
|
e.numeric("liquid_depth", ea.STATE).withUnit("m").withDescription("Liquid Depth"),
|
|
@@ -17999,10 +18030,11 @@ exports.definitions = [
|
|
|
17999
18030
|
},
|
|
18000
18031
|
},
|
|
18001
18032
|
{
|
|
18002
|
-
fingerprint: tuya.fingerprint("TS0726", ["_TZ3000_5kxl9esg"]),
|
|
18033
|
+
fingerprint: tuya.fingerprint("TS0726", ["_TZ3000_5kxl9esg", "_TZ3002_jn2x20tg"]),
|
|
18003
18034
|
model: "TS0726_1_gang_scene_switch",
|
|
18004
18035
|
vendor: "Tuya",
|
|
18005
18036
|
description: "1 gang switch with scene and backlight",
|
|
18037
|
+
whiteLabel: [tuya.whitelabel("BSEED", "EC-GL86ZPCS11", "1 gang switch with scene and backlight", ["_TZ3002_jn2x20tg"])],
|
|
18006
18038
|
fromZigbee: [fz.ignore_basic_report, fzLocal.TS0726_action],
|
|
18007
18039
|
exposes: [e.action(["scene_1"])],
|
|
18008
18040
|
extend: [
|
|
@@ -18109,7 +18141,7 @@ exports.definitions = [
|
|
|
18109
18141
|
model: "HY-SZLUMPIR",
|
|
18110
18142
|
vendor: "Homcloud",
|
|
18111
18143
|
description: "PIR sensor",
|
|
18112
|
-
extend: [tuya.modernExtend.tuyaBase({ dp: true, timeStart: "off" })],
|
|
18144
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, timeStart: "off", respondToMcuVersionResponse: true })],
|
|
18113
18145
|
exposes: [e.occupancy(), e.illuminance(), e.battery()],
|
|
18114
18146
|
meta: {
|
|
18115
18147
|
tuyaDatapoints: [
|
|
@@ -19327,5 +19359,145 @@ exports.definitions = [
|
|
|
19327
19359
|
],
|
|
19328
19360
|
},
|
|
19329
19361
|
},
|
|
19362
|
+
{
|
|
19363
|
+
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_7zazvlyn", "_TZE284_idn2htgu"]),
|
|
19364
|
+
model: "F3-Pro",
|
|
19365
|
+
vendor: "Tuya",
|
|
19366
|
+
description: "Smart panel, 4-gang switch with scene, dimmer, and curtain control",
|
|
19367
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true, forceTimeUpdates: true, queryOnConfigure: true })],
|
|
19368
|
+
endpoint: (device) => {
|
|
19369
|
+
return { l1: 1, l2: 1, l3: 1, l4: 1, l5: 1, l6: 1, l7: 1, l8: 1 };
|
|
19370
|
+
},
|
|
19371
|
+
exposes: [
|
|
19372
|
+
e.binary("backlight_switch", ea.STATE_SET, "ON", "OFF").withDescription("Panel screen on/off"),
|
|
19373
|
+
tuya.exposes.switch().withEndpoint("l1"),
|
|
19374
|
+
tuya.exposes.switch().withEndpoint("l2"),
|
|
19375
|
+
tuya.exposes.switch().withEndpoint("l3"),
|
|
19376
|
+
tuya.exposes.switch().withEndpoint("l4"),
|
|
19377
|
+
e.text("switch_name", ea.STATE_SET).withEndpoint("l1").withDescription("Name for Switch 1"),
|
|
19378
|
+
e.text("switch_name", ea.STATE_SET).withEndpoint("l2").withDescription("Name for Switch 2"),
|
|
19379
|
+
e.text("switch_name", ea.STATE_SET).withEndpoint("l3").withDescription("Name for Switch 3"),
|
|
19380
|
+
e.text("switch_name", ea.STATE_SET).withEndpoint("l4").withDescription("Name for Switch 4"),
|
|
19381
|
+
e.text("scene_name", ea.STATE_SET).withEndpoint("l1").withDescription("Name for Scene 1"),
|
|
19382
|
+
e.text("scene_name", ea.STATE_SET).withEndpoint("l2").withDescription("Name for Scene 2"),
|
|
19383
|
+
e.text("scene_name", ea.STATE_SET).withEndpoint("l3").withDescription("Name for Scene 3"),
|
|
19384
|
+
e.text("scene_name", ea.STATE_SET).withEndpoint("l4").withDescription("Name for Scene 4"),
|
|
19385
|
+
e.text("scene_name", ea.STATE_SET).withEndpoint("l5").withDescription("Name for Scene 5"),
|
|
19386
|
+
e.text("scene_name", ea.STATE_SET).withEndpoint("l6").withDescription("Name for Scene 6"),
|
|
19387
|
+
e.text("scene_name", ea.STATE_SET).withEndpoint("l7").withDescription("Name for Scene 7"),
|
|
19388
|
+
e.text("scene_name", ea.STATE_SET).withEndpoint("l8").withDescription("Name for Scene 8"),
|
|
19389
|
+
e.text("cover_name", ea.STATE_SET).withEndpoint("l1").withDescription("Name for Cover 1"),
|
|
19390
|
+
e.text("cover_name", ea.STATE_SET).withEndpoint("l2").withDescription("Name for Cover 2"),
|
|
19391
|
+
e.text("cover_name", ea.STATE_SET).withEndpoint("l3").withDescription("Name for Cover 3"),
|
|
19392
|
+
e.text("cover_name", ea.STATE_SET).withEndpoint("l4").withDescription("Name for Cover 4"),
|
|
19393
|
+
e.text("led_switch_name", ea.STATE_SET).withEndpoint("l1").withDescription("Name for LED Switch 1"),
|
|
19394
|
+
e.text("led_switch_name", ea.STATE_SET).withEndpoint("l2").withDescription("Name for LED Switch 2"),
|
|
19395
|
+
e.text("led_switch_name", ea.STATE_SET).withEndpoint("l3").withDescription("Name for LED Switch 3"),
|
|
19396
|
+
e.text("led_switch_name", ea.STATE_SET).withEndpoint("l4").withDescription("Name for LED Switch 4"),
|
|
19397
|
+
e.action(["scene_1", "scene_2", "scene_3", "scene_4", "scene_5", "scene_6", "scene_7", "scene_8"]),
|
|
19398
|
+
e.binary("led_switch", ea.ALL, "ON", "OFF").withEndpoint("l1").withDescription("Switch of LED 1"),
|
|
19399
|
+
e.numeric("led_warm", ea.STATE_SET).withEndpoint("l1").withDescription("Color temperature of LED 1").withValueMin(1).withValueMax(100),
|
|
19400
|
+
e.numeric("led_bright", ea.STATE_SET).withEndpoint("l1").withDescription("Brightness of LED 1").withValueMin(1).withValueMax(100),
|
|
19401
|
+
e.binary("led_switch", ea.ALL, "ON", "OFF").withEndpoint("l2").withDescription("Switch of LED 2"),
|
|
19402
|
+
e.numeric("led_warm", ea.STATE_SET).withEndpoint("l2").withDescription("Color temperature of LED 2").withValueMin(1).withValueMax(100),
|
|
19403
|
+
e.numeric("led_bright", ea.STATE_SET).withEndpoint("l2").withDescription("Brightness of LED 2").withValueMin(1).withValueMax(100),
|
|
19404
|
+
e.binary("led_switch", ea.ALL, "ON", "OFF").withEndpoint("l3").withDescription("Switch of LED 3"),
|
|
19405
|
+
e.numeric("led_warm", ea.STATE_SET).withEndpoint("l3").withDescription("Color temperature of LED 3").withValueMin(1).withValueMax(100),
|
|
19406
|
+
e.numeric("led_bright", ea.STATE_SET).withEndpoint("l3").withDescription("Brightness of LED 3").withValueMin(1).withValueMax(100),
|
|
19407
|
+
e.binary("led_switch", ea.ALL, "ON", "OFF").withEndpoint("l4").withDescription("Switch of LED 4"),
|
|
19408
|
+
e.numeric("led_warm", ea.STATE_SET).withEndpoint("l4").withDescription("Color temperature of LED 4").withValueMin(1).withValueMax(100),
|
|
19409
|
+
e.numeric("led_bright", ea.STATE_SET).withEndpoint("l4").withDescription("Brightness of LED 4").withValueMin(1).withValueMax(100),
|
|
19410
|
+
e.enum("cover_state", ea.STATE_SET, ["open", "stop", "close"]).withEndpoint("l1").withDescription("State of Cover 1"),
|
|
19411
|
+
e
|
|
19412
|
+
.numeric("cover_position", ea.STATE_SET)
|
|
19413
|
+
.withEndpoint("l1")
|
|
19414
|
+
.withDescription("Position of Cover 1")
|
|
19415
|
+
.withUnit("%")
|
|
19416
|
+
.withValueMin(0)
|
|
19417
|
+
.withValueMax(100),
|
|
19418
|
+
e.enum("cover_state", ea.STATE_SET, ["open", "stop", "close"]).withEndpoint("l2").withDescription("State of Cover 2"),
|
|
19419
|
+
e
|
|
19420
|
+
.numeric("cover_position", ea.STATE_SET)
|
|
19421
|
+
.withEndpoint("l2")
|
|
19422
|
+
.withDescription("Position of Cover 2")
|
|
19423
|
+
.withUnit("%")
|
|
19424
|
+
.withValueMin(0)
|
|
19425
|
+
.withValueMax(100),
|
|
19426
|
+
e.enum("cover_state", ea.STATE_SET, ["open", "stop", "close"]).withEndpoint("l3").withDescription("State of Cover 3"),
|
|
19427
|
+
e
|
|
19428
|
+
.numeric("cover_position", ea.STATE_SET)
|
|
19429
|
+
.withEndpoint("l3")
|
|
19430
|
+
.withDescription("Position of Cover 3")
|
|
19431
|
+
.withUnit("%")
|
|
19432
|
+
.withValueMin(0)
|
|
19433
|
+
.withValueMax(100),
|
|
19434
|
+
e.enum("cover_state", ea.STATE_SET, ["open", "stop", "close"]).withEndpoint("l4").withDescription("State of Cover 4"),
|
|
19435
|
+
e
|
|
19436
|
+
.numeric("cover_position", ea.STATE_SET)
|
|
19437
|
+
.withEndpoint("l4")
|
|
19438
|
+
.withDescription("Position of Cover 4")
|
|
19439
|
+
.withUnit("%")
|
|
19440
|
+
.withValueMin(0)
|
|
19441
|
+
.withValueMax(100),
|
|
19442
|
+
],
|
|
19443
|
+
meta: {
|
|
19444
|
+
multiEndpoint: true,
|
|
19445
|
+
tuyaDatapoints: [
|
|
19446
|
+
[1, "action", tuya.valueConverter.static("scene_1")],
|
|
19447
|
+
[2, "action", tuya.valueConverter.static("scene_2")],
|
|
19448
|
+
[3, "action", tuya.valueConverter.static("scene_3")],
|
|
19449
|
+
[4, "action", tuya.valueConverter.static("scene_4")],
|
|
19450
|
+
[5, "action", tuya.valueConverter.static("scene_5")],
|
|
19451
|
+
[6, "action", tuya.valueConverter.static("scene_6")],
|
|
19452
|
+
[7, "action", tuya.valueConverter.static("scene_7")],
|
|
19453
|
+
[8, "action", tuya.valueConverter.static("scene_8")],
|
|
19454
|
+
[102, "led_bright_l1", tuya.valueConverter.raw],
|
|
19455
|
+
[103, "led_bright_l2", tuya.valueConverter.raw],
|
|
19456
|
+
[105, "led_bright_l3", tuya.valueConverter.raw],
|
|
19457
|
+
[107, "led_bright_l4", tuya.valueConverter.raw],
|
|
19458
|
+
[109, "led_warm_l1", tuya.valueConverter.raw],
|
|
19459
|
+
[110, "led_warm_l2", tuya.valueConverter.raw],
|
|
19460
|
+
[111, "led_warm_l3", tuya.valueConverter.raw],
|
|
19461
|
+
[112, "led_warm_l4", tuya.valueConverter.raw],
|
|
19462
|
+
[113, "cover_position_l1", tuya.valueConverter.raw],
|
|
19463
|
+
[114, "cover_position_l2", tuya.valueConverter.raw],
|
|
19464
|
+
[115, "cover_position_l3", tuya.valueConverter.raw],
|
|
19465
|
+
[116, "cover_position_l4", tuya.valueConverter.raw],
|
|
19466
|
+
[117, "led_switch_l1", tuya.valueConverter.onOff],
|
|
19467
|
+
[118, "led_switch_l2", tuya.valueConverter.onOff],
|
|
19468
|
+
[119, "led_switch_l3", tuya.valueConverter.onOff],
|
|
19469
|
+
[120, "led_switch_l4", tuya.valueConverter.onOff],
|
|
19470
|
+
[121, "state_l1", tuya.valueConverter.onOff],
|
|
19471
|
+
[122, "state_l2", tuya.valueConverter.onOff],
|
|
19472
|
+
[123, "state_l3", tuya.valueConverter.onOff],
|
|
19473
|
+
[124, "state_l4", tuya.valueConverter.onOff],
|
|
19474
|
+
[125, "led_switch_name_l1", tuya.valueConverter.utf16BEHexString],
|
|
19475
|
+
[126, "led_switch_name_l2", tuya.valueConverter.utf16BEHexString],
|
|
19476
|
+
[127, "led_switch_name_l3", tuya.valueConverter.utf16BEHexString],
|
|
19477
|
+
[128, "led_switch_name_l4", tuya.valueConverter.utf16BEHexString],
|
|
19478
|
+
[129, "cover_name_l1", tuya.valueConverter.utf16BEHexString],
|
|
19479
|
+
[130, "cover_name_l2", tuya.valueConverter.utf16BEHexString],
|
|
19480
|
+
[131, "cover_name_l3", tuya.valueConverter.utf16BEHexString],
|
|
19481
|
+
[132, "cover_name_l4", tuya.valueConverter.utf16BEHexString],
|
|
19482
|
+
[133, "cover_state_l1", tuya.valueConverterBasic.lookup({ open: tuya.enum(0), stop: tuya.enum(1), close: tuya.enum(2) })],
|
|
19483
|
+
[134, "cover_state_l2", tuya.valueConverterBasic.lookup({ open: tuya.enum(0), stop: tuya.enum(1), close: tuya.enum(2) })],
|
|
19484
|
+
[135, "cover_state_l3", tuya.valueConverterBasic.lookup({ open: tuya.enum(0), stop: tuya.enum(1), close: tuya.enum(2) })],
|
|
19485
|
+
[136, "cover_state_l4", tuya.valueConverterBasic.lookup({ open: tuya.enum(0), stop: tuya.enum(1), close: tuya.enum(2) })],
|
|
19486
|
+
[137, "switch_name_l1", tuya.valueConverter.utf16BEHexString],
|
|
19487
|
+
[138, "switch_name_l2", tuya.valueConverter.utf16BEHexString],
|
|
19488
|
+
[139, "switch_name_l3", tuya.valueConverter.utf16BEHexString],
|
|
19489
|
+
[140, "switch_name_l4", tuya.valueConverter.utf16BEHexString],
|
|
19490
|
+
[141, "scene_name_l1", tuya.valueConverter.utf16BEHexString],
|
|
19491
|
+
[142, "scene_name_l2", tuya.valueConverter.utf16BEHexString],
|
|
19492
|
+
[143, "scene_name_l3", tuya.valueConverter.utf16BEHexString],
|
|
19493
|
+
[144, "scene_name_l4", tuya.valueConverter.utf16BEHexString],
|
|
19494
|
+
[145, "scene_name_l5", tuya.valueConverter.utf16BEHexString],
|
|
19495
|
+
[146, "scene_name_l6", tuya.valueConverter.utf16BEHexString],
|
|
19496
|
+
[147, "scene_name_l7", tuya.valueConverter.utf16BEHexString],
|
|
19497
|
+
[148, "scene_name_l8", tuya.valueConverter.utf16BEHexString],
|
|
19498
|
+
[149, "backlight_switch", tuya.valueConverter.onOff],
|
|
19499
|
+
],
|
|
19500
|
+
},
|
|
19501
|
+
},
|
|
19330
19502
|
];
|
|
19331
19503
|
//# sourceMappingURL=tuya.js.map
|