zigbee-herdsman-converters 21.17.0 → 21.18.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 (139) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/converters/fromZigbee.d.ts +0 -7
  3. package/converters/fromZigbee.d.ts.map +1 -1
  4. package/converters/fromZigbee.js +0 -9
  5. package/converters/fromZigbee.js.map +1 -1
  6. package/converters/toZigbee.d.ts +0 -4
  7. package/converters/toZigbee.d.ts.map +1 -1
  8. package/converters/toZigbee.js +0 -6
  9. package/converters/toZigbee.js.map +1 -1
  10. package/devices/aurora_lighting.d.ts.map +1 -1
  11. package/devices/aurora_lighting.js +4 -8
  12. package/devices/aurora_lighting.js.map +1 -1
  13. package/devices/bitron.d.ts.map +1 -1
  14. package/devices/bitron.js +0 -1
  15. package/devices/bitron.js.map +1 -1
  16. package/devices/bosch.d.ts.map +1 -1
  17. package/devices/bosch.js +6 -6
  18. package/devices/bosch.js.map +1 -1
  19. package/devices/busch_jaeger.d.ts.map +1 -1
  20. package/devices/busch_jaeger.js +0 -1
  21. package/devices/busch_jaeger.js.map +1 -1
  22. package/devices/ctm.d.ts.map +1 -1
  23. package/devices/ctm.js +8 -28
  24. package/devices/ctm.js.map +1 -1
  25. package/devices/custom_devices_diy.d.ts.map +1 -1
  26. package/devices/custom_devices_diy.js +9 -20
  27. package/devices/custom_devices_diy.js.map +1 -1
  28. package/devices/danfoss.d.ts.map +1 -1
  29. package/devices/danfoss.js +0 -1
  30. package/devices/danfoss.js.map +1 -1
  31. package/devices/databyte.d.ts.map +1 -1
  32. package/devices/databyte.js +0 -1
  33. package/devices/databyte.js.map +1 -1
  34. package/devices/datek.d.ts.map +1 -1
  35. package/devices/datek.js +3 -4
  36. package/devices/datek.js.map +1 -1
  37. package/devices/develco.d.ts.map +1 -1
  38. package/devices/develco.js +0 -2
  39. package/devices/develco.js.map +1 -1
  40. package/devices/diyruz.d.ts.map +1 -1
  41. package/devices/diyruz.js +3 -4
  42. package/devices/diyruz.js.map +1 -1
  43. package/devices/fantem.d.ts.map +1 -1
  44. package/devices/fantem.js +3 -2
  45. package/devices/fantem.js.map +1 -1
  46. package/devices/gmmts.d.ts.map +1 -1
  47. package/devices/gmmts.js +0 -1
  48. package/devices/gmmts.js.map +1 -1
  49. package/devices/heiman.d.ts.map +1 -1
  50. package/devices/heiman.js +4 -5
  51. package/devices/heiman.js.map +1 -1
  52. package/devices/hzc_electric.d.ts.map +1 -1
  53. package/devices/hzc_electric.js +4 -2
  54. package/devices/hzc_electric.js.map +1 -1
  55. package/devices/imhotepcreation.d.ts.map +1 -1
  56. package/devices/imhotepcreation.js +0 -1
  57. package/devices/imhotepcreation.js.map +1 -1
  58. package/devices/immax.d.ts.map +1 -1
  59. package/devices/immax.js +7 -6
  60. package/devices/immax.js.map +1 -1
  61. package/devices/kmpcil.d.ts.map +1 -1
  62. package/devices/kmpcil.js +5 -8
  63. package/devices/kmpcil.js.map +1 -1
  64. package/devices/konke.d.ts.map +1 -1
  65. package/devices/konke.js +4 -2
  66. package/devices/konke.js.map +1 -1
  67. package/devices/leedarson.d.ts.map +1 -1
  68. package/devices/leedarson.js +7 -4
  69. package/devices/leedarson.js.map +1 -1
  70. package/devices/legrand.d.ts.map +1 -1
  71. package/devices/legrand.js +0 -2
  72. package/devices/legrand.js.map +1 -1
  73. package/devices/lixee.d.ts.map +1 -1
  74. package/devices/lixee.js +0 -1
  75. package/devices/lixee.js.map +1 -1
  76. package/devices/ls.d.ts.map +1 -1
  77. package/devices/ls.js +1 -2
  78. package/devices/ls.js.map +1 -1
  79. package/devices/lumi.d.ts.map +1 -1
  80. package/devices/lumi.js +6 -14
  81. package/devices/lumi.js.map +1 -1
  82. package/devices/moes.d.ts.map +1 -1
  83. package/devices/moes.js +5 -4
  84. package/devices/moes.js.map +1 -1
  85. package/devices/namron.d.ts.map +1 -1
  86. package/devices/namron.js +4 -4
  87. package/devices/namron.js.map +1 -1
  88. package/devices/owon.d.ts.map +1 -1
  89. package/devices/owon.js +4 -4
  90. package/devices/owon.js.map +1 -1
  91. package/devices/philips.d.ts.map +1 -1
  92. package/devices/philips.js +27 -48
  93. package/devices/philips.js.map +1 -1
  94. package/devices/profalux.js +2 -2
  95. package/devices/profalux.js.map +1 -1
  96. package/devices/schneider_electric.d.ts.map +1 -1
  97. package/devices/schneider_electric.js +5 -4
  98. package/devices/schneider_electric.js.map +1 -1
  99. package/devices/sercomm.d.ts.map +1 -1
  100. package/devices/sercomm.js +5 -4
  101. package/devices/sercomm.js.map +1 -1
  102. package/devices/shinasystem.d.ts.map +1 -1
  103. package/devices/shinasystem.js +5 -4
  104. package/devices/shinasystem.js.map +1 -1
  105. package/devices/siglis.d.ts.map +1 -1
  106. package/devices/siglis.js +0 -2
  107. package/devices/siglis.js.map +1 -1
  108. package/devices/terncy.d.ts.map +1 -1
  109. package/devices/terncy.js +4 -2
  110. package/devices/terncy.js.map +1 -1
  111. package/devices/third_reality.d.ts.map +1 -1
  112. package/devices/third_reality.js +4 -2
  113. package/devices/third_reality.js.map +1 -1
  114. package/devices/tplink.d.ts.map +1 -1
  115. package/devices/tplink.js +4 -5
  116. package/devices/tplink.js.map +1 -1
  117. package/devices/tuya.d.ts.map +1 -1
  118. package/devices/tuya.js +23 -24
  119. package/devices/tuya.js.map +1 -1
  120. package/devices/ubisys.js +1 -1
  121. package/devices/ubisys.js.map +1 -1
  122. package/devices/visonic.js +1 -1
  123. package/devices/visonic.js.map +1 -1
  124. package/devices/wirenboard.d.ts.map +1 -1
  125. package/devices/wirenboard.js +2 -4
  126. package/devices/wirenboard.js.map +1 -1
  127. package/index.d.ts +2 -2
  128. package/index.d.ts.map +1 -1
  129. package/index.js +15 -5
  130. package/index.js.map +1 -1
  131. package/lib/exposes.d.ts +2 -1
  132. package/lib/exposes.d.ts.map +1 -1
  133. package/lib/exposes.js +2 -6
  134. package/lib/exposes.js.map +1 -1
  135. package/lib/modernExtend.d.ts +1 -1
  136. package/lib/modernExtend.d.ts.map +1 -1
  137. package/lib/modernExtend.js +21 -2
  138. package/lib/modernExtend.js.map +1 -1
  139. package/package.json +1 -1
package/devices/tuya.js CHANGED
@@ -44,6 +44,7 @@ const exposes = __importStar(require("../lib/exposes"));
44
44
  const legacy = __importStar(require("../lib/legacy"));
45
45
  const logger_1 = require("../lib/logger");
46
46
  const modernExtend_1 = require("../lib/modernExtend");
47
+ const m = __importStar(require("../lib/modernExtend"));
47
48
  const reporting = __importStar(require("../lib/reporting"));
48
49
  const globalStore = __importStar(require("../lib/store"));
49
50
  const tuya = __importStar(require("../lib/tuya"));
@@ -878,7 +879,6 @@ const definitions = [
878
879
  if (!device || !noBatteryLowModels.includes(device.manufacturerName)) {
879
880
  exps.push(e.battery_low());
880
881
  }
881
- exps.push(e.linkquality());
882
882
  return exps;
883
883
  },
884
884
  meta: {
@@ -982,7 +982,6 @@ const definitions = [
982
982
  exps.push(e.battery_low());
983
983
  exps.push(e.enum('battery_level', ea.STATE, ['low', 'middle', 'high']).withDescription('Battery level state'));
984
984
  }
985
- exps.push(e.linkquality());
986
985
  return exps;
987
986
  },
988
987
  },
@@ -1711,11 +1710,12 @@ const definitions = [
1711
1710
  model: 'TS0202_3',
1712
1711
  vendor: 'Tuya',
1713
1712
  description: 'Motion detector with illuminance',
1714
- fromZigbee: [fromZigbee_1.default.ias_occupancy_alarm_1, fromZigbee_1.default.battery, fromZigbee_1.default.ignore_basic_report, fromZigbee_1.default.ias_occupancy_alarm_1_report, fromZigbee_1.default.illuminance],
1713
+ fromZigbee: [fromZigbee_1.default.ias_occupancy_alarm_1, fromZigbee_1.default.battery, fromZigbee_1.default.ignore_basic_report, fromZigbee_1.default.ias_occupancy_alarm_1_report],
1715
1714
  toZigbee: [],
1716
1715
  onEvent: tuya.onEventSetTime,
1717
1716
  configure: tuya.configureMagicPacket,
1718
- exposes: [e.occupancy(), e.battery_low(), e.battery(), e.tamper(), e.illuminance()],
1717
+ exposes: [e.occupancy(), e.battery_low(), e.battery(), e.tamper()],
1718
+ extend: [m.illuminance()],
1719
1719
  },
1720
1720
  {
1721
1721
  fingerprint: tuya.fingerprint('TS0202', ['_TZ3210_cwamkvua']),
@@ -1759,7 +1759,7 @@ const definitions = [
1759
1759
  // Requires alarm_1_with_timeout https://github.com/Koenkk/zigbee2mqtt/issues/2818#issuecomment-776119586
1760
1760
  fromZigbee: [fromZigbee_1.default.ias_occupancy_alarm_1_with_timeout, fromZigbee_1.default.battery, fromZigbee_1.default.ignore_basic_report],
1761
1761
  toZigbee: [],
1762
- exposes: [e.occupancy(), e.battery_low(), e.linkquality(), e.battery(), e.battery_voltage()],
1762
+ exposes: [e.occupancy(), e.battery_low(), e.battery(), e.battery_voltage()],
1763
1763
  configure: async (device, coordinatorEndpoint) => {
1764
1764
  const endpoint = device.getEndpoint(1);
1765
1765
  await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg']);
@@ -1793,7 +1793,6 @@ const definitions = [
1793
1793
  if (!device || !['_TZ3000_bsvqrxru', '_TZ3000_nss8amz9'].includes(device.manufacturerName)) {
1794
1794
  exps.push(e.tamper());
1795
1795
  }
1796
- exps.push(e.linkquality());
1797
1796
  return exps;
1798
1797
  },
1799
1798
  configure: async (device, coordinatorEndpoint) => {
@@ -1935,7 +1934,6 @@ const definitions = [
1935
1934
  if (!device || !noTamperModels.includes(device.manufacturerName)) {
1936
1935
  exps.push(e.tamper());
1937
1936
  }
1938
- exps.push(e.linkquality());
1939
1937
  return exps;
1940
1938
  },
1941
1939
  },
@@ -2153,7 +2151,6 @@ const definitions = [
2153
2151
  if (!device || !['_TZE200_ykgar0ow'].includes(device.manufacturerName)) {
2154
2152
  exps.push(tuya.exposes.lightType(), tuya.exposes.backlightModeOffNormalInverted().withAccess(ea.STATE_SET));
2155
2153
  }
2156
- exps.push(e.linkquality());
2157
2154
  return exps;
2158
2155
  },
2159
2156
  meta: {
@@ -2580,7 +2577,7 @@ const definitions = [
2580
2577
  const endpoint = device.getEndpoint(1);
2581
2578
  await reporting.bind(endpoint, coordinatorEndpoint, ['genBasic']);
2582
2579
  },
2583
- exposes: [e.battery(), e.illuminance(), e.linkquality(), e.enum('brightness_level', ea.STATE, ['LOW', 'MEDIUM', 'HIGH'])],
2580
+ exposes: [e.battery(), e.illuminance(), e.enum('brightness_level', ea.STATE, ['LOW', 'MEDIUM', 'HIGH'])],
2584
2581
  },
2585
2582
  {
2586
2583
  zigbeeModel: ['TS130F'],
@@ -2620,7 +2617,6 @@ const definitions = [
2620
2617
  if (device?.manufacturerName !== '_TZ3210_xbpt8ewc' && device?.manufacturerName !== '_TZ3000_e3vhyirx') {
2621
2618
  exps.push(tuya.exposes.indicatorMode(), tuya.exposes.backlightModeOffOn());
2622
2619
  }
2623
- exps.push(e.linkquality());
2624
2620
  return exps;
2625
2621
  },
2626
2622
  },
@@ -4466,7 +4462,7 @@ const definitions = [
4466
4462
  tuyaDatapoints: [
4467
4463
  [1, 'state', tuya.valueConverterBasic.lookup({ OPEN: tuya.enum(0), STOP: tuya.enum(1), CLOSE: tuya.enum(2) })],
4468
4464
  [2, 'position', tuya.valueConverter.coverPosition],
4469
- [3, 'position', tuya.valueConverter.raw],
4465
+ [3, 'position', tuya.valueConverter.coverPosition],
4470
4466
  [5, 'reverse_direction', tuya.valueConverterBasic.lookup({ forward: tuya.enum(0), back: tuya.enum(1) })],
4471
4467
  [12, 'motor_fault', tuya.valueConverter.trueFalse1],
4472
4468
  [13, 'battery', tuya.valueConverter.raw],
@@ -7137,32 +7133,35 @@ const definitions = [
7137
7133
  model: 'TS0222_temperature_humidity',
7138
7134
  vendor: 'Tuya',
7139
7135
  description: 'Temperature & humidity sensor',
7140
- fromZigbee: [fzLocal.TS0222_humidity, fromZigbee_1.default.battery, fromZigbee_1.default.temperature, fromZigbee_1.default.illuminance],
7136
+ fromZigbee: [fzLocal.TS0222_humidity, fromZigbee_1.default.battery, fromZigbee_1.default.temperature],
7141
7137
  toZigbee: [],
7142
7138
  configure: tuya.configureMagicPacket,
7143
- exposes: [e.battery(), e.temperature(), e.humidity(), e.illuminance()],
7139
+ exposes: [e.battery(), e.temperature(), e.humidity()],
7144
7140
  whiteLabel: [tuya.whitelabel('Tuya', 'QT-07S', 'Soil sensor', ['_TZE204_myd45weu'])],
7141
+ extend: [m.illuminance()],
7145
7142
  },
7146
7143
  {
7147
7144
  fingerprint: tuya.fingerprint('TS0222', ['_TZ3000_8uxxzz4b', '_TZ3000_hy6ncvmw', '_TZ3000_9kbbfeho', '_TZ3000_l6rsaipj']),
7148
7145
  model: 'TS0222_light',
7149
7146
  vendor: 'Tuya',
7150
7147
  description: 'Light sensor',
7151
- fromZigbee: [fromZigbee_1.default.battery, fromZigbee_1.default.illuminance],
7148
+ fromZigbee: [fromZigbee_1.default.battery],
7152
7149
  toZigbee: [],
7153
7150
  configure: tuya.configureMagicPacket,
7154
7151
  whiteLabel: [tuya.whitelabel('Moes', 'ZSS-QT-LS-C', 'Light sensor', ['_TZ3000_9kbbfeho'])],
7155
- exposes: [e.battery(), e.illuminance()],
7152
+ exposes: [e.battery()],
7153
+ extend: [m.illuminance()],
7156
7154
  },
7157
7155
  {
7158
7156
  fingerprint: tuya.fingerprint('TS0222', ['_TZ3000_t9qqxn70']),
7159
7157
  model: 'THE01860A',
7160
7158
  vendor: 'Tuya',
7161
7159
  description: 'Temp & humidity flower sensor with illuminance',
7162
- fromZigbee: [fromZigbee_1.default.humidity, fromZigbee_1.default.battery, fromZigbee_1.default.temperature, fromZigbee_1.default.illuminance],
7160
+ fromZigbee: [fromZigbee_1.default.humidity, fromZigbee_1.default.battery, fromZigbee_1.default.temperature],
7163
7161
  toZigbee: [],
7164
7162
  configure: tuya.configureMagicPacket,
7165
- exposes: [e.battery(), e.temperature(), e.humidity(), e.illuminance()],
7163
+ exposes: [e.battery(), e.temperature(), e.humidity()],
7164
+ extend: [m.illuminance()],
7166
7165
  },
7167
7166
  {
7168
7167
  fingerprint: [
@@ -7173,10 +7172,11 @@ const definitions = [
7173
7172
  model: 'TS0222',
7174
7173
  vendor: 'Tuya',
7175
7174
  description: 'Light intensity sensor',
7176
- fromZigbee: [fromZigbee_1.default.battery, fromZigbee_1.default.illuminance, legacy.fromZigbee.TS0222],
7175
+ fromZigbee: [fromZigbee_1.default.battery, legacy.fromZigbee.TS0222],
7177
7176
  toZigbee: [],
7178
- exposes: [e.battery(), e.illuminance()],
7177
+ exposes: [e.battery()],
7179
7178
  configure: tuya.configureMagicPacket,
7179
+ extend: [m.illuminance()],
7180
7180
  },
7181
7181
  {
7182
7182
  zigbeeModel: ['TS0210'],
@@ -7440,7 +7440,7 @@ const definitions = [
7440
7440
  model: 'LCZ030',
7441
7441
  vendor: 'Tuya',
7442
7442
  description: 'Temperature & humidity & illuminance sensor with display',
7443
- fromZigbee: [fromZigbee_1.default.battery, fromZigbee_1.default.illuminance, fromZigbee_1.default.temperature, fromZigbee_1.default.humidity, fromZigbee_1.default.ts0201_temperature_humidity_alarm],
7443
+ fromZigbee: [fromZigbee_1.default.battery, fromZigbee_1.default.temperature, fromZigbee_1.default.humidity, fromZigbee_1.default.ts0201_temperature_humidity_alarm],
7444
7444
  toZigbee: [toZigbee_1.default.ts0201_temperature_humidity_alarm],
7445
7445
  configure: async (device, coordinatorEndpoint) => {
7446
7446
  const endpoint = device.getEndpoint(1);
@@ -7450,7 +7450,6 @@ const definitions = [
7450
7450
  'genBasic',
7451
7451
  'genPowerCfg',
7452
7452
  'msTemperatureMeasurement',
7453
- 'msIlluminanceMeasurement',
7454
7453
  'msRelativeHumidity',
7455
7454
  'manuSpecificTuya_2',
7456
7455
  ]);
@@ -7459,7 +7458,6 @@ const definitions = [
7459
7458
  e.temperature(),
7460
7459
  e.humidity(),
7461
7460
  e.battery(),
7462
- e.illuminance(),
7463
7461
  e
7464
7462
  .numeric('alarm_temperature_max', ea.STATE_SET)
7465
7463
  .withUnit('°C')
@@ -7477,6 +7475,7 @@ const definitions = [
7477
7475
  e.enum('alarm_humidity', ea.STATE, ['below_min_humdity', 'over_humidity', 'off']).withDescription('Alarm humidity status'),
7478
7476
  e.enum('alarm_temperature', ea.STATE, ['below_min_temperature', 'over_temperature', 'off']).withDescription('Alarm temperature status'),
7479
7477
  ],
7478
+ extend: [m.illuminance()],
7480
7479
  },
7481
7480
  {
7482
7481
  fingerprint: [{ modelID: 'TS0601', manufacturerName: '_TZE200_auin8mzr' }],
@@ -9144,7 +9143,7 @@ const definitions = [
9144
9143
  fromZigbee: [fromZigbee_1.default.temperature, fzLocal.TS011F_threshold],
9145
9144
  toZigbee: [tzLocal.TS011F_threshold],
9146
9145
  exposes: (device, options) => {
9147
- const exposes = [e.linkquality()];
9146
+ const exposes = [];
9148
9147
  if (!['_TZ3000_303avxxt', '_TZ3000_zjchz7pd'].includes(device?.manufacturerName)) {
9149
9148
  exposes.push(e.temperature(), e
9150
9149
  .numeric('temperature_threshold', ea.STATE_SET)
@@ -10249,7 +10248,7 @@ const definitions = [
10249
10248
  description: 'Motion sensor',
10250
10249
  fromZigbee: [fromZigbee_1.default.ias_occupancy_alarm_1_with_timeout, fromZigbee_1.default.battery],
10251
10250
  toZigbee: [],
10252
- exposes: [e.occupancy(), e.battery_low(), e.linkquality(), e.battery(), e.battery_voltage()],
10251
+ exposes: [e.occupancy(), e.battery_low(), e.battery(), e.battery_voltage()],
10253
10252
  configure: async (device, coordinatorEndpoint) => {
10254
10253
  const endpoint = device.getEndpoint(1);
10255
10254
  await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg']);