zigbee-herdsman-converters 25.97.0 → 25.99.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 (60) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/dist/devices/bosch.d.ts.map +1 -1
  3. package/dist/devices/bosch.js +50 -0
  4. package/dist/devices/bosch.js.map +1 -1
  5. package/dist/devices/efekta.d.ts.map +1 -1
  6. package/dist/devices/efekta.js +1125 -199
  7. package/dist/devices/efekta.js.map +1 -1
  8. package/dist/devices/ikea.d.ts.map +1 -1
  9. package/dist/devices/ikea.js +80 -7
  10. package/dist/devices/ikea.js.map +1 -1
  11. package/dist/devices/innr.d.ts.map +1 -1
  12. package/dist/devices/innr.js +12 -4
  13. package/dist/devices/innr.js.map +1 -1
  14. package/dist/devices/paulmann.js +1 -1
  15. package/dist/devices/philips.d.ts.map +1 -1
  16. package/dist/devices/philips.js +9 -1
  17. package/dist/devices/philips.js.map +1 -1
  18. package/dist/devices/pushok.d.ts.map +1 -1
  19. package/dist/devices/pushok.js +214 -0
  20. package/dist/devices/pushok.js.map +1 -1
  21. package/dist/devices/slacky_diy.d.ts.map +1 -1
  22. package/dist/devices/slacky_diy.js +132 -3
  23. package/dist/devices/slacky_diy.js.map +1 -1
  24. package/dist/devices/sonoff.d.ts.map +1 -1
  25. package/dist/devices/sonoff.js +21 -0
  26. package/dist/devices/sonoff.js.map +1 -1
  27. package/dist/devices/sunricher.d.ts.map +1 -1
  28. package/dist/devices/sunricher.js +13 -0
  29. package/dist/devices/sunricher.js.map +1 -1
  30. package/dist/devices/tcl.js +1 -1
  31. package/dist/devices/tcl.js.map +1 -1
  32. package/dist/devices/third_reality.d.ts.map +1 -1
  33. package/dist/devices/third_reality.js +3 -2
  34. package/dist/devices/third_reality.js.map +1 -1
  35. package/dist/devices/tuya.d.ts.map +1 -1
  36. package/dist/devices/tuya.js +119 -21
  37. package/dist/devices/tuya.js.map +1 -1
  38. package/dist/devices/ubisys.d.ts.map +1 -1
  39. package/dist/devices/ubisys.js +21 -15
  40. package/dist/devices/ubisys.js.map +1 -1
  41. package/dist/devices/yandex.d.ts.map +1 -1
  42. package/dist/devices/yandex.js +7 -0
  43. package/dist/devices/yandex.js.map +1 -1
  44. package/dist/lib/bosch.d.ts.map +1 -1
  45. package/dist/lib/bosch.js +4 -0
  46. package/dist/lib/bosch.js.map +1 -1
  47. package/dist/lib/ikea.d.ts +1 -1
  48. package/dist/lib/ikea.d.ts.map +1 -1
  49. package/dist/lib/ikea.js +2 -2
  50. package/dist/lib/ikea.js.map +1 -1
  51. package/dist/lib/modernExtend.d.ts +1 -0
  52. package/dist/lib/modernExtend.d.ts.map +1 -1
  53. package/dist/lib/modernExtend.js +13 -1
  54. package/dist/lib/modernExtend.js.map +1 -1
  55. package/dist/lib/ubisys.d.ts +7 -0
  56. package/dist/lib/ubisys.d.ts.map +1 -1
  57. package/dist/lib/ubisys.js +48 -0
  58. package/dist/lib/ubisys.js.map +1 -1
  59. package/dist/models-index.json +1 -1
  60. package/package.json +1 -1
@@ -36,7 +36,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.definitions = void 0;
37
37
  const zigbee_herdsman_1 = require("zigbee-herdsman");
38
38
  const m = __importStar(require("../lib/modernExtend"));
39
+ const attrPM1 = 0x0601;
40
+ const attrPM10 = 0x0602;
41
+ const attrPMSZ = 0x0603;
42
+ const attrAQi25 = 0x0604;
43
+ const attrPM4 = 0x0605;
39
44
  const defaultReporting = { min: 0, max: 300, change: 0 };
45
+ const zeroReporting = { min: 5, max: 1800, change: 0.001 };
40
46
  const rareReporting = { min: 0, max: 21600, change: 0 };
41
47
  const rarestReporting = { min: 0, max: 64800, change: 0 };
42
48
  const threeReporting = { min: 30, max: 1800, change: 1 };
@@ -49,6 +55,7 @@ const pm2Reporting = { min: 10, max: 600, change: 0.01 };
49
55
  const soilMoistureReporting = { min: 600, max: 7200, change: 100 };
50
56
  const slowReporting = { min: 120, max: 3600, change: 25 };
51
57
  const slow2Reporting = { min: 300, max: 3600, change: 50 };
58
+ const levelReporting = { min: 600, max: 3600, change: 1 };
52
59
  exports.definitions = [
53
60
  {
54
61
  zigbeeModel: ["EFEKTA_iAQ3"],
@@ -1066,12 +1073,13 @@ exports.definitions = [
1066
1073
  description: "Adjust Report Delay. Setting the time in minutes, by default 5 minutes",
1067
1074
  }),
1068
1075
  m.binary({
1069
- name: "enable_temperature",
1076
+ name: "enabling_temperature_control",
1070
1077
  valueOn: ["ON", 1],
1071
1078
  valueOff: ["OFF", 0],
1072
1079
  cluster: "msTemperatureMeasurement",
1073
1080
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1074
- description: "Enable Temperature Control",
1081
+ description: "Enables/disables Tempearure control",
1082
+ access: "STATE_SET",
1075
1083
  }),
1076
1084
  m.numeric({
1077
1085
  name: "high_temperature",
@@ -1092,12 +1100,13 @@ exports.definitions = [
1092
1100
  description: "Setting Low Temperature Border",
1093
1101
  }),
1094
1102
  m.binary({
1095
- name: "enable_humidity",
1103
+ name: "enabling_humidity_control",
1096
1104
  valueOn: ["ON", 1],
1097
1105
  valueOff: ["OFF", 0],
1098
1106
  cluster: "msRelativeHumidity",
1099
1107
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1100
- description: "Enable Humidity Control",
1108
+ description: "Enables/disables Humidity control",
1109
+ access: "STATE_SET",
1101
1110
  }),
1102
1111
  m.numeric({
1103
1112
  name: "high_humidity",
@@ -1348,8 +1357,8 @@ exports.definitions = [
1348
1357
  ],
1349
1358
  },
1350
1359
  {
1351
- zigbeeModel: ["EFEKTA_ePST_POW_E_LR"],
1352
- model: "EFEKTA_ePST_POW_E_LR",
1360
+ zigbeeModel: ["EFEKTA_ePST_POW_E_LR", "EFEKTA_ePST_POW_R_LR"],
1361
+ model: "EFEKTA_ePST_POW",
1353
1362
  vendor: "EFEKTA",
1354
1363
  description: "Water, gas smart pressure monitor with e-ink display",
1355
1364
  extend: [
@@ -1467,8 +1476,8 @@ exports.definitions = [
1467
1476
  ],
1468
1477
  },
1469
1478
  {
1470
- zigbeeModel: ["EFEKTA_eTH_POW_E_LR"],
1471
- model: "EFEKTA_eTH_POW_E_LR",
1479
+ zigbeeModel: ["EFEKTA_eTH_POW_E_LR", "EFEKTA_eTH_POW_R_LR"],
1480
+ model: "EFEKTA_eTH_POW",
1472
1481
  vendor: "EFEKTA",
1473
1482
  description: "Temperature and humidity smart sensor with with e-ink display",
1474
1483
  extend: [
@@ -1791,21 +1800,20 @@ exports.definitions = [
1791
1800
  access: "STATE_SET",
1792
1801
  }),
1793
1802
  m.binary({
1794
- name: "enable_temperature",
1803
+ name: "enabling_temperature_control",
1795
1804
  valueOn: ["ON", 1],
1796
1805
  valueOff: ["OFF", 0],
1797
1806
  cluster: "msTemperatureMeasurement",
1798
1807
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1799
- description: "Enable Temperature Control",
1808
+ description: "Enables/disables Tempearure control",
1800
1809
  access: "STATE_SET",
1801
1810
  }),
1802
- m.binary({
1803
- name: "invert_logic_temperature",
1804
- valueOn: ["ON", 1],
1805
- valueOff: ["OFF", 0],
1811
+ m.enumLookup({
1812
+ name: "temperature_actions",
1813
+ lookup: { HEAT: 0, COOL: 1 },
1806
1814
  cluster: "msTemperatureMeasurement",
1807
1815
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1808
- description: "Invert Logic Temperature Control",
1816
+ description: "Heat or cool",
1809
1817
  access: "STATE_SET",
1810
1818
  }),
1811
1819
  m.numeric({
@@ -1906,21 +1914,20 @@ exports.definitions = [
1906
1914
  access: "STATE_SET",
1907
1915
  }),
1908
1916
  m.binary({
1909
- name: "enable_temperature",
1917
+ name: "enabling_temperature_control",
1910
1918
  valueOn: ["ON", 1],
1911
1919
  valueOff: ["OFF", 0],
1912
1920
  cluster: "msTemperatureMeasurement",
1913
1921
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1914
- description: "Enable Temperature Control",
1922
+ description: "Enables/disables Tempearure control",
1915
1923
  access: "STATE_SET",
1916
1924
  }),
1917
- m.binary({
1918
- name: "invert_logic_temperature",
1919
- valueOn: ["ON", 1],
1920
- valueOff: ["OFF", 0],
1925
+ m.enumLookup({
1926
+ name: "temperature_actions",
1927
+ lookup: { HEAT: 0, COOL: 1 },
1921
1928
  cluster: "msTemperatureMeasurement",
1922
1929
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1923
- description: "Invert Logic Temperature Control",
1930
+ description: "Heat or cool",
1924
1931
  access: "STATE_SET",
1925
1932
  }),
1926
1933
  m.numeric({
@@ -2025,21 +2032,20 @@ exports.definitions = [
2025
2032
  access: "STATE_SET",
2026
2033
  }),
2027
2034
  m.binary({
2028
- name: "enable_temperature",
2035
+ name: "enabling_temperature_control",
2029
2036
  valueOn: ["ON", 1],
2030
2037
  valueOff: ["OFF", 0],
2031
2038
  cluster: "msTemperatureMeasurement",
2032
2039
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2033
- description: "Enable Temperature Control",
2040
+ description: "Enables/disables Tempearure control",
2034
2041
  access: "STATE_SET",
2035
2042
  }),
2036
- m.binary({
2037
- name: "invert_logic_temperature",
2038
- valueOn: ["ON", 1],
2039
- valueOff: ["OFF", 0],
2043
+ m.enumLookup({
2044
+ name: "temperature_actions",
2045
+ lookup: { HEAT: 0, COOL: 1 },
2040
2046
  cluster: "msTemperatureMeasurement",
2041
2047
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2042
- description: "Invert Logic Temperature Control",
2048
+ description: "Heat or cool",
2043
2049
  access: "STATE_SET",
2044
2050
  }),
2045
2051
  m.numeric({
@@ -2063,21 +2069,20 @@ exports.definitions = [
2063
2069
  access: "STATE_SET",
2064
2070
  }),
2065
2071
  m.binary({
2066
- name: "enable_humidity",
2072
+ name: "enabling_humidity_control",
2067
2073
  valueOn: ["ON", 1],
2068
2074
  valueOff: ["OFF", 0],
2069
2075
  cluster: "msRelativeHumidity",
2070
2076
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2071
- description: "Enable Humidity Control",
2077
+ description: "Enables/disables Humidity control",
2072
2078
  access: "STATE_SET",
2073
2079
  }),
2074
- m.binary({
2075
- name: "invert_logic_humidity",
2076
- valueOn: ["ON", 1],
2077
- valueOff: ["OFF", 0],
2080
+ m.enumLookup({
2081
+ name: "humidity_actions",
2082
+ lookup: { WET: 0, DRY: 1 },
2078
2083
  cluster: "msRelativeHumidity",
2079
2084
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2080
- description: "Invert Logic Humidity Control",
2085
+ description: "Wet or dry",
2081
2086
  access: "STATE_SET",
2082
2087
  }),
2083
2088
  m.numeric({
@@ -2174,21 +2179,20 @@ exports.definitions = [
2174
2179
  access: "STATE_SET",
2175
2180
  }),
2176
2181
  m.binary({
2177
- name: "enable_temperature",
2182
+ name: "enabling_temperature_control",
2178
2183
  valueOn: ["ON", 1],
2179
2184
  valueOff: ["OFF", 0],
2180
2185
  cluster: "msTemperatureMeasurement",
2181
2186
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2182
- description: "Enable Temperature Control",
2187
+ description: "Enables/disables Tempearure control",
2183
2188
  access: "STATE_SET",
2184
2189
  }),
2185
- m.binary({
2186
- name: "invert_logic_temperature",
2187
- valueOn: ["ON", 1],
2188
- valueOff: ["OFF", 0],
2190
+ m.enumLookup({
2191
+ name: "temperature_actions",
2192
+ lookup: { HEAT: 0, COOL: 1 },
2189
2193
  cluster: "msTemperatureMeasurement",
2190
2194
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2191
- description: "Invert Logic Temperature Control",
2195
+ description: "Heat or cool",
2192
2196
  access: "STATE_SET",
2193
2197
  }),
2194
2198
  m.numeric({
@@ -2212,21 +2216,20 @@ exports.definitions = [
2212
2216
  access: "STATE_SET",
2213
2217
  }),
2214
2218
  m.binary({
2215
- name: "enable_humidity",
2219
+ name: "enabling_humidity_control",
2216
2220
  valueOn: ["ON", 1],
2217
2221
  valueOff: ["OFF", 0],
2218
2222
  cluster: "msRelativeHumidity",
2219
2223
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2220
- description: "Enable Humidity Control",
2224
+ description: "Enables/disables Humidity control",
2221
2225
  access: "STATE_SET",
2222
2226
  }),
2223
- m.binary({
2224
- name: "invert_logic_humidity",
2225
- valueOn: ["ON", 1],
2226
- valueOff: ["OFF", 0],
2227
+ m.enumLookup({
2228
+ name: "humidity_actions",
2229
+ lookup: { WET: 0, DRY: 1 },
2227
2230
  cluster: "msRelativeHumidity",
2228
2231
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2229
- description: "Invert Logic Humidity Control",
2232
+ description: "Wet or dry",
2230
2233
  access: "STATE_SET",
2231
2234
  }),
2232
2235
  m.numeric({
@@ -2331,21 +2334,20 @@ exports.definitions = [
2331
2334
  access: "STATE_SET",
2332
2335
  }),
2333
2336
  m.binary({
2334
- name: "enable_temperature",
2337
+ name: "enabling_temperature_control",
2335
2338
  valueOn: ["ON", 1],
2336
2339
  valueOff: ["OFF", 0],
2337
2340
  cluster: "msTemperatureMeasurement",
2338
2341
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2339
- description: "Enable Temperature Control",
2342
+ description: "Enables/disables Tempearure control",
2340
2343
  access: "STATE_SET",
2341
2344
  }),
2342
- m.binary({
2343
- name: "invert_logic_temperature",
2344
- valueOn: ["ON", 1],
2345
- valueOff: ["OFF", 0],
2345
+ m.enumLookup({
2346
+ name: "temperature_actions",
2347
+ lookup: { HEAT: 0, COOL: 1 },
2346
2348
  cluster: "msTemperatureMeasurement",
2347
2349
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2348
- description: "Invert Logic Temperature Control",
2350
+ description: "Heat or cool",
2349
2351
  access: "STATE_SET",
2350
2352
  }),
2351
2353
  m.numeric({
@@ -2369,21 +2371,20 @@ exports.definitions = [
2369
2371
  access: "STATE_SET",
2370
2372
  }),
2371
2373
  m.binary({
2372
- name: "enable_humidity",
2374
+ name: "enabling_humidity_control",
2373
2375
  valueOn: ["ON", 1],
2374
2376
  valueOff: ["OFF", 0],
2375
2377
  cluster: "msRelativeHumidity",
2376
2378
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2377
- description: "Enable Humidity Control",
2379
+ description: "Enables/disables Humidity control",
2378
2380
  access: "STATE_SET",
2379
2381
  }),
2380
- m.binary({
2381
- name: "invert_logic_humidity",
2382
- valueOn: ["ON", 1],
2383
- valueOff: ["OFF", 0],
2382
+ m.enumLookup({
2383
+ name: "humidity_actions",
2384
+ lookup: { WET: 0, DRY: 1 },
2384
2385
  cluster: "msRelativeHumidity",
2385
2386
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2386
- description: "Invert Logic Humidity Control",
2387
+ description: "Wet or dry",
2387
2388
  access: "STATE_SET",
2388
2389
  }),
2389
2390
  m.numeric({
@@ -2480,21 +2481,20 @@ exports.definitions = [
2480
2481
  access: "STATE_SET",
2481
2482
  }),
2482
2483
  m.binary({
2483
- name: "enable_temperature",
2484
+ name: "enabling_temperature_control",
2484
2485
  valueOn: ["ON", 1],
2485
2486
  valueOff: ["OFF", 0],
2486
2487
  cluster: "msTemperatureMeasurement",
2487
2488
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2488
- description: "Enable Temperature Control",
2489
+ description: "Enables/disables Tempearure control",
2489
2490
  access: "STATE_SET",
2490
2491
  }),
2491
- m.binary({
2492
- name: "invert_logic_temperature",
2493
- valueOn: ["ON", 1],
2494
- valueOff: ["OFF", 0],
2492
+ m.enumLookup({
2493
+ name: "temperature_actions",
2494
+ lookup: { HEAT: 0, COOL: 1 },
2495
2495
  cluster: "msTemperatureMeasurement",
2496
2496
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2497
- description: "Invert Logic Temperature Control",
2497
+ description: "Heat or cool",
2498
2498
  access: "STATE_SET",
2499
2499
  }),
2500
2500
  m.numeric({
@@ -2518,21 +2518,20 @@ exports.definitions = [
2518
2518
  access: "STATE_SET",
2519
2519
  }),
2520
2520
  m.binary({
2521
- name: "enable_humidity",
2521
+ name: "enabling_humidity_control",
2522
2522
  valueOn: ["ON", 1],
2523
2523
  valueOff: ["OFF", 0],
2524
2524
  cluster: "msRelativeHumidity",
2525
2525
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2526
- description: "Enable Humidity Control",
2526
+ description: "Enables/disables Humidity control",
2527
2527
  access: "STATE_SET",
2528
2528
  }),
2529
- m.binary({
2530
- name: "invert_logic_humidity",
2531
- valueOn: ["ON", 1],
2532
- valueOff: ["OFF", 0],
2529
+ m.enumLookup({
2530
+ name: "humidity_actions",
2531
+ lookup: { WET: 0, DRY: 1 },
2533
2532
  cluster: "msRelativeHumidity",
2534
2533
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2535
- description: "Invert Logic Humidity Control",
2534
+ description: "Wet or dry",
2536
2535
  access: "STATE_SET",
2537
2536
  }),
2538
2537
  m.numeric({
@@ -2653,12 +2652,12 @@ exports.definitions = [
2653
2652
  access: "STATE_SET",
2654
2653
  }),
2655
2654
  m.binary({
2656
- name: "enable_temperature",
2655
+ name: "enabling_temperature_control",
2657
2656
  valueOn: ["ON", 1],
2658
2657
  valueOff: ["OFF", 0],
2659
2658
  cluster: "msTemperatureMeasurement",
2660
2659
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2661
- description: "Enable Temperature Control",
2660
+ description: "Enables/disables Tempearure control",
2662
2661
  access: "STATE_SET",
2663
2662
  }),
2664
2663
  m.binary({
@@ -2670,13 +2669,12 @@ exports.definitions = [
2670
2669
  description: "Enable internal or external sensor control",
2671
2670
  access: "STATE_SET",
2672
2671
  }),
2673
- m.binary({
2674
- name: "invert_logic_temperature",
2675
- valueOn: ["ON", 1],
2676
- valueOff: ["OFF", 0],
2672
+ m.enumLookup({
2673
+ name: "temperature_actions",
2674
+ lookup: { HEAT: 0, COOL: 1 },
2677
2675
  cluster: "msTemperatureMeasurement",
2678
2676
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2679
- description: "Invert Logic Temperature Control",
2677
+ description: "Heat or cool",
2680
2678
  access: "STATE_SET",
2681
2679
  }),
2682
2680
  m.numeric({
@@ -2700,12 +2698,12 @@ exports.definitions = [
2700
2698
  access: "STATE_SET",
2701
2699
  }),
2702
2700
  m.binary({
2703
- name: "enable_humidity",
2701
+ name: "enabling_humidity_control",
2704
2702
  valueOn: ["ON", 1],
2705
2703
  valueOff: ["OFF", 0],
2706
2704
  cluster: "msRelativeHumidity",
2707
2705
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2708
- description: "Enable Humidity Control",
2706
+ description: "Enables/disables Humidity control",
2709
2707
  access: "STATE_SET",
2710
2708
  }),
2711
2709
  m.binary({
@@ -2717,13 +2715,12 @@ exports.definitions = [
2717
2715
  description: "Enable internal or external sensor control",
2718
2716
  access: "STATE_SET",
2719
2717
  }),
2720
- m.binary({
2721
- name: "invert_logic_humidity",
2722
- valueOn: ["ON", 1],
2723
- valueOff: ["OFF", 0],
2718
+ m.enumLookup({
2719
+ name: "humidity_actions",
2720
+ lookup: { WET: 0, DRY: 1 },
2724
2721
  cluster: "msRelativeHumidity",
2725
2722
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2726
- description: "Invert Logic Humidity Control",
2723
+ description: "Wet or dry",
2727
2724
  access: "STATE_SET",
2728
2725
  }),
2729
2726
  m.numeric({
@@ -2836,12 +2833,12 @@ exports.definitions = [
2836
2833
  access: "STATE_SET",
2837
2834
  }),
2838
2835
  m.binary({
2839
- name: "enable_temperature",
2836
+ name: "enabling_temperature_control",
2840
2837
  valueOn: ["ON", 1],
2841
2838
  valueOff: ["OFF", 0],
2842
2839
  cluster: "msTemperatureMeasurement",
2843
2840
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2844
- description: "Enable Temperature Control",
2841
+ description: "Enables/disables Tempearure control",
2845
2842
  access: "STATE_SET",
2846
2843
  }),
2847
2844
  m.binary({
@@ -2853,13 +2850,12 @@ exports.definitions = [
2853
2850
  description: "Enable internal or external sensor control",
2854
2851
  access: "STATE_SET",
2855
2852
  }),
2856
- m.binary({
2857
- name: "invert_logic_temperature",
2858
- valueOn: ["ON", 1],
2859
- valueOff: ["OFF", 0],
2853
+ m.enumLookup({
2854
+ name: "temperature_actions",
2855
+ lookup: { HEAT: 0, COOL: 1 },
2860
2856
  cluster: "msTemperatureMeasurement",
2861
2857
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2862
- description: "Invert Logic Temperature Control",
2858
+ description: "Heat or cool",
2863
2859
  access: "STATE_SET",
2864
2860
  }),
2865
2861
  m.numeric({
@@ -2883,12 +2879,12 @@ exports.definitions = [
2883
2879
  access: "STATE_SET",
2884
2880
  }),
2885
2881
  m.binary({
2886
- name: "enable_humidity",
2882
+ name: "enabling_humidity_control",
2887
2883
  valueOn: ["ON", 1],
2888
2884
  valueOff: ["OFF", 0],
2889
2885
  cluster: "msRelativeHumidity",
2890
2886
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2891
- description: "Enable Humidity Control",
2887
+ description: "Enables/disables Humidity control",
2892
2888
  access: "STATE_SET",
2893
2889
  }),
2894
2890
  m.binary({
@@ -2900,13 +2896,12 @@ exports.definitions = [
2900
2896
  description: "Enable internal or external sensor control",
2901
2897
  access: "STATE_SET",
2902
2898
  }),
2903
- m.binary({
2904
- name: "invert_logic_humidity",
2905
- valueOn: ["ON", 1],
2906
- valueOff: ["OFF", 0],
2899
+ m.enumLookup({
2900
+ name: "humidity_actions",
2901
+ lookup: { WET: 0, DRY: 1 },
2907
2902
  cluster: "msRelativeHumidity",
2908
2903
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2909
- description: "Invert Logic Humidity Control",
2904
+ description: "Wet or dry",
2910
2905
  access: "STATE_SET",
2911
2906
  }),
2912
2907
  m.numeric({
@@ -3152,7 +3147,7 @@ exports.definitions = [
3152
3147
  m.numeric({
3153
3148
  name: "reading_interval",
3154
3149
  unit: "sec",
3155
- valueMin: 10,
3150
+ valueMin: 5,
3156
3151
  valueMax: 360,
3157
3152
  cluster: "genPowerCfg",
3158
3153
  attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
@@ -3283,13 +3278,21 @@ exports.definitions = [
3283
3278
  m.numeric({
3284
3279
  name: "reading_interval",
3285
3280
  unit: "sec",
3286
- valueMin: 10,
3281
+ valueMin: 3,
3287
3282
  valueMax: 360,
3288
3283
  cluster: "genPowerCfg",
3289
3284
  attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
3290
3285
  description: "Setting the sensor reading interval in seconds, by default 10 seconds",
3291
3286
  access: "STATE_SET",
3292
3287
  }),
3288
+ m.enumLookup({
3289
+ name: "sensor_type",
3290
+ lookup: { "0-1bar": 1, "0-5bar": 5, "0-10bar": 10 },
3291
+ cluster: "msPressureMeasurement",
3292
+ attribute: { ID: 0x0280, type: zigbee_herdsman_1.Zcl.DataType.UINT8 },
3293
+ description: "Set sensor type",
3294
+ access: "STATE_SET",
3295
+ }),
3293
3296
  m.enumLookup({
3294
3297
  name: "tx_radio_power",
3295
3298
  lookup: { "4dbm": 4, "19dbm": 19 },
@@ -3970,7 +3973,7 @@ exports.definitions = [
3970
3973
  m.numeric({
3971
3974
  name: "reading_interval",
3972
3975
  unit: "sec",
3973
- valueMin: 10,
3976
+ valueMin: 5,
3974
3977
  valueMax: 360,
3975
3978
  cluster: "genPowerCfg",
3976
3979
  attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
@@ -4169,7 +4172,7 @@ exports.definitions = [
4169
4172
  m.numeric({
4170
4173
  name: "reading_interval",
4171
4174
  unit: "sec",
4172
- valueMin: 10,
4175
+ valueMin: 5,
4173
4176
  valueMax: 360,
4174
4177
  cluster: "genPowerCfg",
4175
4178
  attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
@@ -4219,11 +4222,15 @@ exports.definitions = [
4219
4222
  vendor: "EFEKTA",
4220
4223
  description: "EFEKTA Smart Air Quality Box, can control the relay, binding on some other devices",
4221
4224
  extend: [
4225
+ m.co2({
4226
+ reporting: co2Reporting,
4227
+ access: "STATE",
4228
+ }),
4222
4229
  m.numeric({
4223
4230
  name: "pm1",
4224
4231
  unit: "µg/m³",
4225
4232
  cluster: "pm25Measurement",
4226
- attribute: { ID: 0x0601, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4233
+ attribute: { ID: attrPM1, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4227
4234
  description: "Measured PM1.0 (particulate matter) concentration",
4228
4235
  access: "STATE",
4229
4236
  reporting: pmReporting,
@@ -4239,7 +4246,7 @@ exports.definitions = [
4239
4246
  name: "pm4",
4240
4247
  unit: "µg/m³",
4241
4248
  cluster: "pm25Measurement",
4242
- attribute: { ID: 0x0605, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4249
+ attribute: { ID: attrPM4, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4243
4250
  description: "Measured PM4.0 (particulate matter) concentration",
4244
4251
  access: "STATE",
4245
4252
  reporting: pmReporting,
@@ -4249,7 +4256,7 @@ exports.definitions = [
4249
4256
  name: "pm10",
4250
4257
  unit: "µg/m³",
4251
4258
  cluster: "pm25Measurement",
4252
- attribute: { ID: 0x0602, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4259
+ attribute: { ID: attrPM10, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4253
4260
  description: "Measured PM10.0 (particulate matter) concentration",
4254
4261
  access: "STATE",
4255
4262
  reporting: pmReporting,
@@ -4259,7 +4266,7 @@ exports.definitions = [
4259
4266
  name: "pm_size",
4260
4267
  unit: "µm",
4261
4268
  cluster: "pm25Measurement",
4262
- attribute: { ID: 0x0603, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4269
+ attribute: { ID: attrPMSZ, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4263
4270
  description: "Typical Particle Size",
4264
4271
  access: "STATE",
4265
4272
  reporting: pm2Reporting,
@@ -4269,15 +4276,11 @@ exports.definitions = [
4269
4276
  name: "aqi_25_index",
4270
4277
  unit: "PM2.5 Index",
4271
4278
  cluster: "pm25Measurement",
4272
- attribute: { ID: 0x0604, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4279
+ attribute: { ID: attrAQi25, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
4273
4280
  description: "PM 2.5 INDEX",
4274
4281
  access: "STATE",
4275
4282
  reporting: pmReporting,
4276
4283
  }),
4277
- m.co2({
4278
- reporting: co2Reporting,
4279
- access: "STATE",
4280
- }),
4281
4284
  m.numeric({
4282
4285
  name: "voc_index",
4283
4286
  unit: "VOC Index points",
@@ -5078,7 +5081,7 @@ exports.definitions = [
5078
5081
  m.numeric({
5079
5082
  name: "lux_factor",
5080
5083
  valueMin: 0.1,
5081
- valueMax: 10,
5084
+ valueMax: 30,
5082
5085
  valueStep: 0.1,
5083
5086
  cluster: "msIlluminanceMeasurement",
5084
5087
  attribute: { ID: 0x0310, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
@@ -5200,7 +5203,7 @@ exports.definitions = [
5200
5203
  m.numeric({
5201
5204
  name: "lux_factor",
5202
5205
  valueMin: 0.1,
5203
- valueMax: 10,
5206
+ valueMax: 30,
5204
5207
  valueStep: 0.1,
5205
5208
  cluster: "msIlluminanceMeasurement",
5206
5209
  attribute: { ID: 0x0310, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
@@ -5322,7 +5325,7 @@ exports.definitions = [
5322
5325
  m.numeric({
5323
5326
  name: "lux_factor",
5324
5327
  valueMin: 0.1,
5325
- valueMax: 10,
5328
+ valueMax: 30,
5326
5329
  valueStep: 0.1,
5327
5330
  cluster: "msIlluminanceMeasurement",
5328
5331
  attribute: { ID: 0x0310, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
@@ -5443,7 +5446,7 @@ exports.definitions = [
5443
5446
  m.numeric({
5444
5447
  name: "lux_factor",
5445
5448
  valueMin: 0.1,
5446
- valueMax: 10,
5449
+ valueMax: 30,
5447
5450
  valueStep: 0.1,
5448
5451
  cluster: "msIlluminanceMeasurement",
5449
5452
  attribute: { ID: 0x0310, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
@@ -5532,9 +5535,9 @@ exports.definitions = [
5532
5535
  }),
5533
5536
  m.numeric({
5534
5537
  name: "lux_factor",
5535
- valueMin: 0.1,
5536
- valueMax: 10,
5537
- valueStep: 0.1,
5538
+ valueMin: 1,
5539
+ valueMax: 50,
5540
+ valueStep: 1,
5538
5541
  cluster: "msIlluminanceMeasurement",
5539
5542
  attribute: { ID: 0x0310, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
5540
5543
  description: "Lux factor",
@@ -5630,9 +5633,9 @@ exports.definitions = [
5630
5633
  }),
5631
5634
  m.numeric({
5632
5635
  name: "lux_factor",
5633
- valueMin: 0.1,
5634
- valueMax: 10,
5635
- valueStep: 0.1,
5636
+ valueMin: 1,
5637
+ valueMax: 50,
5638
+ valueStep: 1,
5636
5639
  cluster: "msIlluminanceMeasurement",
5637
5640
  attribute: { ID: 0x0310, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
5638
5641
  description: "Lux factor",
@@ -5755,21 +5758,20 @@ exports.definitions = [
5755
5758
  access: "STATE_SET",
5756
5759
  }),
5757
5760
  m.binary({
5758
- name: "enable_temperature",
5761
+ name: "enabling_temperature_control",
5759
5762
  valueOn: ["ON", 1],
5760
5763
  valueOff: ["OFF", 0],
5761
5764
  cluster: "msTemperatureMeasurement",
5762
5765
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5763
- description: "Enable Temperature Control",
5766
+ description: "Enables/disables Tempearure control",
5764
5767
  access: "STATE_SET",
5765
5768
  }),
5766
- m.binary({
5767
- name: "invert_logic_temperature",
5768
- valueOn: ["ON", 1],
5769
- valueOff: ["OFF", 0],
5769
+ m.enumLookup({
5770
+ name: "temperature_actions",
5771
+ lookup: { HEAT: 0, COOL: 1 },
5770
5772
  cluster: "msTemperatureMeasurement",
5771
5773
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5772
- description: "Invert Logic Temperature Control",
5774
+ description: "Heat or cool",
5773
5775
  access: "STATE_SET",
5774
5776
  }),
5775
5777
  m.enumLookup({
@@ -5801,21 +5803,20 @@ exports.definitions = [
5801
5803
  access: "STATE_SET",
5802
5804
  }),
5803
5805
  m.binary({
5804
- name: "enable_humidity",
5806
+ name: "enabling_humidity_control",
5805
5807
  valueOn: ["ON", 1],
5806
5808
  valueOff: ["OFF", 0],
5807
5809
  cluster: "msRelativeHumidity",
5808
5810
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5809
- description: "Enable Humidity Control",
5811
+ description: "Enables/disables Humidity control",
5810
5812
  access: "STATE_SET",
5811
5813
  }),
5812
- m.binary({
5813
- name: "invert_logic_humidity",
5814
- valueOn: ["ON", 1],
5815
- valueOff: ["OFF", 0],
5814
+ m.enumLookup({
5815
+ name: "humidity_actions",
5816
+ lookup: { WET: 0, DRY: 1 },
5816
5817
  cluster: "msRelativeHumidity",
5817
5818
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5818
- description: "Invert Logic Humidity Control",
5819
+ description: "Wet or dry",
5819
5820
  access: "STATE_SET",
5820
5821
  }),
5821
5822
  m.numeric({
@@ -5891,30 +5892,29 @@ exports.definitions = [
5891
5892
  description: "Enable сontrol of comparison with previous data",
5892
5893
  access: "STATE_SET",
5893
5894
  }),
5894
- m.binary({
5895
- name: "enable_temperature",
5896
- valueOn: ["ON", 1],
5897
- valueOff: ["OFF", 0],
5898
- cluster: "msTemperatureMeasurement",
5899
- attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5900
- description: "Enable Temperature Control",
5895
+ m.enumLookup({
5896
+ name: "invert_color",
5897
+ lookup: { BW: 0, WB: 1 },
5898
+ cluster: "genPowerCfg",
5899
+ attribute: { ID: 0xf004, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5900
+ description: "Invert display color",
5901
5901
  access: "STATE_SET",
5902
5902
  }),
5903
5903
  m.binary({
5904
- name: "invert_logic_temperature",
5904
+ name: "enabling_temperature_control",
5905
5905
  valueOn: ["ON", 1],
5906
5906
  valueOff: ["OFF", 0],
5907
5907
  cluster: "msTemperatureMeasurement",
5908
- attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5909
- description: "Invert Logic Temperature Control",
5908
+ attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5909
+ description: "Enables/disables Tempearure control",
5910
5910
  access: "STATE_SET",
5911
5911
  }),
5912
5912
  m.enumLookup({
5913
- name: "invert",
5914
- lookup: { BW: 0, WB: 1 },
5915
- cluster: "genPowerCfg",
5916
- attribute: { ID: 0xf004, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5917
- description: "Invert display color",
5913
+ name: "temperature_actions",
5914
+ lookup: { HEAT: 0, COOL: 1 },
5915
+ cluster: "msTemperatureMeasurement",
5916
+ attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5917
+ description: "Heat or cool",
5918
5918
  access: "STATE_SET",
5919
5919
  }),
5920
5920
  m.numeric({
@@ -5938,21 +5938,20 @@ exports.definitions = [
5938
5938
  access: "STATE_SET",
5939
5939
  }),
5940
5940
  m.binary({
5941
- name: "enable_humidity",
5941
+ name: "enabling_humidity_control",
5942
5942
  valueOn: ["ON", 1],
5943
5943
  valueOff: ["OFF", 0],
5944
5944
  cluster: "msRelativeHumidity",
5945
5945
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5946
- description: "Enable Humidity Control",
5946
+ description: "Enables/disables Humidity control",
5947
5947
  access: "STATE_SET",
5948
5948
  }),
5949
- m.binary({
5950
- name: "invert_logic_humidity",
5951
- valueOn: ["ON", 1],
5952
- valueOff: ["OFF", 0],
5949
+ m.enumLookup({
5950
+ name: "humidity_actions",
5951
+ lookup: { WET: 0, DRY: 1 },
5953
5952
  cluster: "msRelativeHumidity",
5954
5953
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
5955
- description: "Invert Logic Humidity Control",
5954
+ description: "Wet or dry",
5956
5955
  access: "STATE_SET",
5957
5956
  }),
5958
5957
  m.numeric({
@@ -6099,7 +6098,7 @@ exports.definitions = [
6099
6098
  }),
6100
6099
  m.enumLookup({
6101
6100
  name: "tx_radio_power",
6102
- lookup: { "-4dbm": -4, "0dbm": 0, "4dbm": 4 },
6101
+ lookup: { "0dbm": 0, "4dbm": 4 },
6103
6102
  cluster: "genPowerCfg",
6104
6103
  attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
6105
6104
  description: "Set TX Radio Power, dbm",
@@ -6461,7 +6460,7 @@ exports.definitions = [
6461
6460
  name: "pm1",
6462
6461
  unit: "µg/m³",
6463
6462
  cluster: "pm25Measurement",
6464
- attribute: { ID: 0x0601, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
6463
+ attribute: { ID: attrPM1, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
6465
6464
  description: "Measured PM1.0 (particulate matter) concentration",
6466
6465
  access: "STATE",
6467
6466
  reporting: pmReporting,
@@ -6477,7 +6476,7 @@ exports.definitions = [
6477
6476
  name: "pm10",
6478
6477
  unit: "µg/m³",
6479
6478
  cluster: "pm25Measurement",
6480
- attribute: { ID: 0x0602, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
6479
+ attribute: { ID: attrPM10, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
6481
6480
  description: "Measured PM10.0 (particulate matter) concentration",
6482
6481
  access: "STATE",
6483
6482
  reporting: pmReporting,
@@ -6487,7 +6486,7 @@ exports.definitions = [
6487
6486
  name: "aqi25",
6488
6487
  unit: "PM2.5 Index",
6489
6488
  cluster: "pm25Measurement",
6490
- attribute: { ID: 0x0604, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
6489
+ attribute: { ID: attrAQi25, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
6491
6490
  description: "PM 2.5 INDEX",
6492
6491
  access: "STATE",
6493
6492
  reporting: pmReporting,
@@ -6538,7 +6537,7 @@ exports.definitions = [
6538
6537
  m.numeric({
6539
6538
  name: "lux_factor",
6540
6539
  valueMin: 0.0,
6541
- valueMax: 10.0,
6540
+ valueMax: 50.0,
6542
6541
  valueStep: 0.1,
6543
6542
  cluster: "msIlluminanceMeasurement",
6544
6543
  attribute: { ID: 0x0310, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
@@ -6764,7 +6763,7 @@ exports.definitions = [
6764
6763
  m.numeric({
6765
6764
  name: "lux_factor",
6766
6765
  valueMin: 0.0,
6767
- valueMax: 10.0,
6766
+ valueMax: 50.0,
6768
6767
  valueStep: 0.1,
6769
6768
  cluster: "msIlluminanceMeasurement",
6770
6769
  attribute: { ID: 0x0310, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
@@ -6927,18 +6926,18 @@ exports.definitions = [
6927
6926
  ],
6928
6927
  },
6929
6928
  {
6930
- zigbeeModel: ["EFEKTA_TH_POW_R"],
6931
- model: "EFEKTA_TH_POW_R",
6929
+ zigbeeModel: ["EFEKTA_TH_POW_E", "EFEKTA_TH_POW_R"],
6930
+ model: "EFEKTA_TH_POW",
6932
6931
  vendor: "EFEKTA",
6933
6932
  description: "Temperature and humidity smart monitor with voltage detector",
6934
6933
  extend: [
6935
6934
  m.identify(),
6936
6935
  m.temperature({
6937
- reporting: fourReporting,
6936
+ reporting: defaultReporting,
6938
6937
  access: "STATE",
6939
6938
  }),
6940
6939
  m.humidity({
6941
- reporting: fourReporting,
6940
+ reporting: defaultReporting,
6942
6941
  access: "STATE",
6943
6942
  }),
6944
6943
  m.numeric({
@@ -7003,21 +7002,20 @@ exports.definitions = [
7003
7002
  access: "STATE_SET",
7004
7003
  }),
7005
7004
  m.binary({
7006
- name: "enable_temperature",
7005
+ name: "enabling_temperature_control",
7007
7006
  valueOn: ["ON", 1],
7008
7007
  valueOff: ["OFF", 0],
7009
7008
  cluster: "msTemperatureMeasurement",
7010
7009
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7011
- description: "Enable Temperature Control",
7010
+ description: "Enables/disables Tempearure control",
7012
7011
  access: "STATE_SET",
7013
7012
  }),
7014
- m.binary({
7015
- name: "invert_logic_temperature",
7016
- valueOn: ["ON", 1],
7017
- valueOff: ["OFF", 0],
7013
+ m.enumLookup({
7014
+ name: "temperature_actions",
7015
+ lookup: { HEAT: 0, COOL: 1 },
7018
7016
  cluster: "msTemperatureMeasurement",
7019
7017
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7020
- description: "Invert Logic Temperature Control",
7018
+ description: "Heat or cool",
7021
7019
  access: "STATE_SET",
7022
7020
  }),
7023
7021
  m.numeric({
@@ -7041,21 +7039,20 @@ exports.definitions = [
7041
7039
  access: "STATE_SET",
7042
7040
  }),
7043
7041
  m.binary({
7044
- name: "enable_humidity",
7042
+ name: "enabling_humidity_control",
7045
7043
  valueOn: ["ON", 1],
7046
7044
  valueOff: ["OFF", 0],
7047
7045
  cluster: "msRelativeHumidity",
7048
7046
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7049
- description: "Enable Humidity Control",
7047
+ description: "Enables/disables Humidity control",
7050
7048
  access: "STATE_SET",
7051
7049
  }),
7052
- m.binary({
7053
- name: "invert_logic_humidity",
7054
- valueOn: ["ON", 1],
7055
- valueOff: ["OFF", 0],
7050
+ m.enumLookup({
7051
+ name: "humidity_actions",
7052
+ lookup: { WET: 0, DRY: 1 },
7056
7053
  cluster: "msRelativeHumidity",
7057
7054
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7058
- description: "Invert Logic Humidity Control",
7055
+ description: "Wet or dry",
7059
7056
  access: "STATE_SET",
7060
7057
  }),
7061
7058
  m.numeric({
@@ -7081,14 +7078,14 @@ exports.definitions = [
7081
7078
  ],
7082
7079
  },
7083
7080
  {
7084
- zigbeeModel: ["EFEKTA_T1_MAX_R"],
7085
- model: "EFEKTA_T1_MAX_R",
7081
+ zigbeeModel: ["EFEKTA_T1_MAX_E", "EFEKTA_T1_MAX_R"],
7082
+ model: "EFEKTA_T1_MAX",
7086
7083
  vendor: "EFEKTA",
7087
7084
  description: "Temperatureb mart monitor with voltage detector",
7088
7085
  extend: [
7089
7086
  m.identify(),
7090
7087
  m.temperature({
7091
- reporting: fourReporting,
7088
+ reporting: defaultReporting,
7092
7089
  access: "STATE",
7093
7090
  }),
7094
7091
  m.numeric({
@@ -7161,21 +7158,20 @@ exports.definitions = [
7161
7158
  access: "STATE_SET",
7162
7159
  }),
7163
7160
  m.binary({
7164
- name: "enable_temperature",
7161
+ name: "enabling_temperature_control",
7165
7162
  valueOn: ["ON", 1],
7166
7163
  valueOff: ["OFF", 0],
7167
7164
  cluster: "msTemperatureMeasurement",
7168
7165
  attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7169
- description: "Enable Temperature Control",
7166
+ description: "Enables/disables Tempearure control",
7170
7167
  access: "STATE_SET",
7171
7168
  }),
7172
- m.binary({
7173
- name: "invert_logic_temperature",
7174
- valueOn: ["ON", 1],
7175
- valueOff: ["OFF", 0],
7169
+ m.enumLookup({
7170
+ name: "temperature_actions",
7171
+ lookup: { HEAT: 0, COOL: 1 },
7176
7172
  cluster: "msTemperatureMeasurement",
7177
7173
  attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7178
- description: "Invert Logic Temperature Control",
7174
+ description: "Heat or cool",
7179
7175
  access: "STATE_SET",
7180
7176
  }),
7181
7177
  m.numeric({
@@ -7200,5 +7196,935 @@ exports.definitions = [
7200
7196
  }),
7201
7197
  ],
7202
7198
  },
7199
+ {
7200
+ zigbeeModel: ["EFEKTA_DigiBaro"],
7201
+ model: "EFEKTA_DigiBaro",
7202
+ vendor: "EFEKTA",
7203
+ description: "Smart digital barometer with e-ink display.",
7204
+ extend: [
7205
+ m.pressure({
7206
+ unit: "kPa",
7207
+ description: "Pressure in kPa",
7208
+ scale: 10,
7209
+ reporting: false,
7210
+ access: "STATE",
7211
+ }),
7212
+ m.temperature({
7213
+ reporting: false,
7214
+ access: "STATE",
7215
+ }),
7216
+ m.humidity({
7217
+ reporting: false,
7218
+ access: "STATE",
7219
+ }),
7220
+ m.battery({
7221
+ percentageReportingConfig: false,
7222
+ lowStatus: true,
7223
+ voltage: false,
7224
+ voltageReporting: false,
7225
+ voltageReportingConfig: false,
7226
+ }),
7227
+ m.enumLookup({
7228
+ name: "basic_data",
7229
+ lookup: { Barometer: 0, "T&H": 1 },
7230
+ cluster: "genPowerCfg",
7231
+ attribute: { ID: 0xf005, type: 0x20 },
7232
+ description: "Set data output on the display",
7233
+ access: "STATE_SET",
7234
+ }),
7235
+ m.enumLookup({
7236
+ name: "invert_color",
7237
+ lookup: { BW: 0, WB: 1 },
7238
+ cluster: "genPowerCfg",
7239
+ attribute: { ID: 0xf004, type: 0x29 },
7240
+ description: "Set color mode",
7241
+ access: "STATE_SET",
7242
+ }),
7243
+ m.numeric({
7244
+ name: "pressure_offset",
7245
+ unit: "hPa",
7246
+ valueMin: -50,
7247
+ valueMax: 50,
7248
+ valueStep: 1,
7249
+ cluster: "msPressureMeasurement",
7250
+ attribute: { ID: 0x0210, type: 0x39 },
7251
+ description: "Adjust pressure",
7252
+ access: "STATE_SET",
7253
+ }),
7254
+ m.numeric({
7255
+ name: "temperature_offset",
7256
+ unit: "°C",
7257
+ valueMin: -50,
7258
+ valueMax: 50,
7259
+ valueStep: 0.1,
7260
+ precision: 1,
7261
+ cluster: "msTemperatureMeasurement",
7262
+ attribute: { ID: 0x0210, type: 0x39 },
7263
+ description: "Adjust temperature",
7264
+ access: "STATE_SET",
7265
+ }),
7266
+ m.numeric({
7267
+ name: "humidity_offset",
7268
+ unit: "%",
7269
+ valueMin: -50,
7270
+ valueMax: 50,
7271
+ valueStep: 0.1,
7272
+ precision: 1,
7273
+ cluster: "msRelativeHumidity",
7274
+ attribute: { ID: 0x0210, type: 0x39 },
7275
+ description: "Adjust humidity",
7276
+ access: "STATE_SET",
7277
+ }),
7278
+ ],
7279
+ },
7280
+ {
7281
+ zigbeeModel: ["EFEKTA_T1_NTC10K"],
7282
+ model: "EFEKTA_T1_NTC10K",
7283
+ vendor: "EFEKTA",
7284
+ description: "Temperature smart monitor with NTC sensor",
7285
+ extend: [
7286
+ m.identify(),
7287
+ m.temperature({
7288
+ reporting: fourReporting,
7289
+ access: "STATE",
7290
+ }),
7291
+ m.battery({
7292
+ percentage: true,
7293
+ lowStatus: true,
7294
+ voltage: false,
7295
+ percentageReporting: true,
7296
+ percentageReportingConfig: fiveReporting,
7297
+ }),
7298
+ m.numeric({
7299
+ name: "lifetime",
7300
+ unit: "Hours",
7301
+ cluster: "genTime",
7302
+ attribute: "localTime",
7303
+ description: "Uptime",
7304
+ access: "STATE",
7305
+ }),
7306
+ m.numeric({
7307
+ name: "reading_interval",
7308
+ unit: "sec",
7309
+ valueMin: 3,
7310
+ valueMax: 300,
7311
+ cluster: "genPowerCfg",
7312
+ attribute: { ID: 0x0201, type: 0x21 },
7313
+ description: "Setting the sensor reading interval in seconds, by default 5 seconds",
7314
+ access: "STATE_SET",
7315
+ }),
7316
+ m.enumLookup({
7317
+ name: "tx_radio_power",
7318
+ lookup: { "4dbm": 4, "19dbm": 19 },
7319
+ cluster: "genPowerCfg",
7320
+ attribute: { ID: 0x0236, type: 0x28 },
7321
+ description: "Set TX Radio Power, dbm",
7322
+ access: "STATE_SET",
7323
+ }),
7324
+ m.binary({
7325
+ name: "smart_sleep",
7326
+ valueOn: ["ON", 1],
7327
+ valueOff: ["OFF", 0],
7328
+ cluster: "genPowerCfg",
7329
+ attribute: { ID: 0x0216, type: 0x10 },
7330
+ description: "Enable Smart Sleep, short wakeup every 7 seconds",
7331
+ access: "STATE_SET",
7332
+ }),
7333
+ m.binary({
7334
+ name: "config_report_enable",
7335
+ valueOn: ["ON", 1],
7336
+ valueOff: ["OFF", 0],
7337
+ cluster: "genPowerCfg",
7338
+ attribute: { ID: 0x0275, type: 0x10 },
7339
+ description: "Enable reporting based on reporting configuration",
7340
+ access: "STATE_SET",
7341
+ }),
7342
+ m.binary({
7343
+ name: "comparison_previous_data",
7344
+ valueOn: ["ON", 1],
7345
+ valueOff: ["OFF", 0],
7346
+ cluster: "genPowerCfg",
7347
+ attribute: { ID: 0x0205, type: 0x10 },
7348
+ description: "Enable сontrol of comparison with previous data",
7349
+ access: "STATE_SET",
7350
+ }),
7351
+ m.enumLookup({
7352
+ name: "ntc status",
7353
+ lookup: { NTC_OK: 0, OPEN_CIRCUIT: 1, SHORT_CIRCUIT: 2 },
7354
+ cluster: "msTemperatureMeasurement",
7355
+ attribute: { ID: 0x0192, type: 0x20 },
7356
+ description: "NTC Status",
7357
+ access: "STATE",
7358
+ }),
7359
+ m.numeric({
7360
+ name: "b_coefficient",
7361
+ valueMin: 2000,
7362
+ valueMax: 5000,
7363
+ valueStep: 1,
7364
+ cluster: "msTemperatureMeasurement",
7365
+ attribute: { ID: 0x0194, type: 0x39 },
7366
+ description: "Setting beta coefficient ",
7367
+ precision: 0,
7368
+ access: "STATE_SET",
7369
+ }),
7370
+ m.binary({
7371
+ name: "enabling_temperature_control",
7372
+ valueOn: ["ON", 1],
7373
+ valueOff: ["OFF", 0],
7374
+ cluster: "msTemperatureMeasurement",
7375
+ attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7376
+ description: "Enables/disables Tempearure control",
7377
+ access: "STATE_SET",
7378
+ }),
7379
+ m.enumLookup({
7380
+ name: "temperature_actions",
7381
+ lookup: { HEAT: 0, COOL: 1 },
7382
+ cluster: "msTemperatureMeasurement",
7383
+ attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7384
+ description: "Heat or cool",
7385
+ access: "STATE_SET",
7386
+ }),
7387
+ m.numeric({
7388
+ name: "high_temperature",
7389
+ unit: "°C",
7390
+ valueMin: -40,
7391
+ valueMax: 90,
7392
+ cluster: "msTemperatureMeasurement",
7393
+ attribute: { ID: 0x0221, type: 0x29 },
7394
+ description: "Setting High Temperature Border",
7395
+ access: "STATE_SET",
7396
+ }),
7397
+ m.numeric({
7398
+ name: "low_temperature",
7399
+ unit: "°C",
7400
+ valueMin: -40,
7401
+ valueMax: 90,
7402
+ cluster: "msTemperatureMeasurement",
7403
+ attribute: { ID: 0x0222, type: 0x29 },
7404
+ description: "Setting Low Temperature Border",
7405
+ access: "STATE_SET",
7406
+ }),
7407
+ ],
7408
+ },
7409
+ {
7410
+ zigbeeModel: ["EFEKTA_T1_POW_NTC10K"],
7411
+ model: "EFEKTA_T1_POW_NTC10K",
7412
+ vendor: "EFEKTA",
7413
+ description: "Temperature smart monitor with NTC sensor",
7414
+ extend: [
7415
+ m.identify(),
7416
+ m.temperature({
7417
+ reporting: fourReporting,
7418
+ access: "STATE",
7419
+ }),
7420
+ m.numeric({
7421
+ name: "mains_voltage",
7422
+ unit: "V",
7423
+ cluster: "genPowerCfg",
7424
+ attribute: "mainsVoltage",
7425
+ description: "Mains voltage",
7426
+ scale: 10,
7427
+ precision: 1,
7428
+ access: "STATE_GET",
7429
+ }),
7430
+ m.battery({
7431
+ percentage: true,
7432
+ lowStatus: true,
7433
+ voltage: false,
7434
+ percentageReporting: true,
7435
+ percentageReportingConfig: fiveReporting,
7436
+ }),
7437
+ m.numeric({
7438
+ name: "lifetime",
7439
+ unit: "Hours",
7440
+ cluster: "genTime",
7441
+ attribute: "localTime",
7442
+ description: "Uptime",
7443
+ access: "STATE",
7444
+ }),
7445
+ m.numeric({
7446
+ name: "reading_interval",
7447
+ unit: "sec",
7448
+ valueMin: 3,
7449
+ valueMax: 300,
7450
+ cluster: "genPowerCfg",
7451
+ attribute: { ID: 0x0201, type: 0x21 },
7452
+ description: "Setting the sensor reading interval in seconds, by default 15 seconds",
7453
+ access: "STATE_SET",
7454
+ }),
7455
+ m.enumLookup({
7456
+ name: "tx_radio_power",
7457
+ lookup: { "4dbm": 4, "19dbm": 19 },
7458
+ cluster: "genPowerCfg",
7459
+ attribute: { ID: 0x0236, type: 0x28 },
7460
+ description: "Set TX Radio Power, dbm",
7461
+ access: "STATE_SET",
7462
+ }),
7463
+ m.binary({
7464
+ name: "smart_sleep",
7465
+ valueOn: ["ON", 1],
7466
+ valueOff: ["OFF", 0],
7467
+ cluster: "genPowerCfg",
7468
+ attribute: { ID: 0x0216, type: 0x10 },
7469
+ description: "Enable Smart Sleep, short wakeup every 7 seconds",
7470
+ access: "STATE_SET",
7471
+ }),
7472
+ m.binary({
7473
+ name: "config_report_enable",
7474
+ valueOn: ["ON", 1],
7475
+ valueOff: ["OFF", 0],
7476
+ cluster: "genPowerCfg",
7477
+ attribute: { ID: 0x0275, type: 0x10 },
7478
+ description: "Enable reporting based on reporting configuration",
7479
+ access: "STATE_SET",
7480
+ }),
7481
+ m.binary({
7482
+ name: "comparison_previous_data",
7483
+ valueOn: ["ON", 1],
7484
+ valueOff: ["OFF", 0],
7485
+ cluster: "genPowerCfg",
7486
+ attribute: { ID: 0x0205, type: 0x10 },
7487
+ description: "Enable сontrol of comparison with previous data",
7488
+ access: "STATE_SET",
7489
+ }),
7490
+ m.enumLookup({
7491
+ name: "ntc status",
7492
+ lookup: { NTC_OK: 0, OPEN_CIRCUIT: 1, SHORT_CIRCUIT: 2 },
7493
+ cluster: "msTemperatureMeasurement",
7494
+ attribute: { ID: 0x0192, type: 0x20 },
7495
+ description: "NTC Status",
7496
+ access: "STATE",
7497
+ }),
7498
+ m.numeric({
7499
+ name: "b_coefficient",
7500
+ valueMin: 2000,
7501
+ valueMax: 5000,
7502
+ valueStep: 1,
7503
+ cluster: "msTemperatureMeasurement",
7504
+ attribute: { ID: 0x0194, type: 0x39 },
7505
+ description: "Setting beta coefficient ",
7506
+ precision: 0,
7507
+ access: "STATE_SET",
7508
+ }),
7509
+ m.binary({
7510
+ name: "enabling_temperature_control",
7511
+ valueOn: ["ON", 1],
7512
+ valueOff: ["OFF", 0],
7513
+ cluster: "msTemperatureMeasurement",
7514
+ attribute: { ID: 0x0220, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7515
+ description: "Enables/disables Tempearure control",
7516
+ access: "STATE_SET",
7517
+ }),
7518
+ m.enumLookup({
7519
+ name: "temperature_actions",
7520
+ lookup: { HEAT: 0, COOL: 1 },
7521
+ cluster: "msTemperatureMeasurement",
7522
+ attribute: { ID: 0x0225, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
7523
+ description: "Heat or cool",
7524
+ access: "STATE_SET",
7525
+ }),
7526
+ m.numeric({
7527
+ name: "high_temperature",
7528
+ unit: "°C",
7529
+ valueMin: -40,
7530
+ valueMax: 90,
7531
+ cluster: "msTemperatureMeasurement",
7532
+ attribute: { ID: 0x0221, type: 0x29 },
7533
+ description: "Setting High Temperature Border",
7534
+ access: "STATE_SET",
7535
+ }),
7536
+ m.numeric({
7537
+ name: "low_temperature",
7538
+ unit: "°C",
7539
+ valueMin: -40,
7540
+ valueMax: 90,
7541
+ cluster: "msTemperatureMeasurement",
7542
+ attribute: { ID: 0x0222, type: 0x29 },
7543
+ description: "Setting Low Temperature Border",
7544
+ access: "STATE_SET",
7545
+ }),
7546
+ ],
7547
+ },
7548
+ {
7549
+ zigbeeModel: ["EFEKTA_PS_POW_PRO_LR", "EFEKTA_PS_POW_PRO"],
7550
+ model: "EFEKTA_PS_POW_PRO",
7551
+ vendor: "EFEKTA",
7552
+ description: "Gas, water smart pressure monitor, high-precision and high-stability.",
7553
+ extend: [
7554
+ m.pressure({
7555
+ unit: "kPa",
7556
+ precision: 2,
7557
+ description: "Measured pressure value in kPa",
7558
+ reporting: threeReporting,
7559
+ access: "STATE",
7560
+ }),
7561
+ m.numeric({
7562
+ unit: "bar",
7563
+ name: "Bar",
7564
+ description: "Measured pressure value in bar",
7565
+ cluster: "msPressureMeasurement",
7566
+ attribute: { ID: 0x0395, type: 0x39 },
7567
+ access: "STATE",
7568
+ precision: 5,
7569
+ reporting: zeroReporting,
7570
+ }),
7571
+ m.numeric({
7572
+ name: "pressure_offset",
7573
+ unit: "hPa",
7574
+ valueMin: -1000.0,
7575
+ valueMax: 1000.0,
7576
+ cluster: "msPressureMeasurement",
7577
+ attribute: { ID: 0x0210, type: 0x29 },
7578
+ description: "Adjust pressure sensor in hPa",
7579
+ access: "STATE_SET",
7580
+ }),
7581
+ m.numeric({
7582
+ name: "mains_voltage",
7583
+ unit: "V",
7584
+ cluster: "genPowerCfg",
7585
+ attribute: "mainsVoltage",
7586
+ description: "Mains voltage",
7587
+ scale: 10,
7588
+ precision: 1,
7589
+ access: "STATE_GET",
7590
+ }),
7591
+ m.battery({
7592
+ percentage: true,
7593
+ lowStatus: true,
7594
+ voltage: false,
7595
+ percentageReporting: true,
7596
+ percentageReportingConfig: sixReporting,
7597
+ }),
7598
+ m.numeric({
7599
+ name: "uptime",
7600
+ unit: "Hours",
7601
+ cluster: "genTime",
7602
+ attribute: "localTime",
7603
+ description: "Uptime",
7604
+ access: "STATE",
7605
+ }),
7606
+ m.numeric({
7607
+ name: "reading_interval",
7608
+ unit: "sec",
7609
+ valueMin: 10,
7610
+ valueMax: 360,
7611
+ cluster: "genPowerCfg",
7612
+ attribute: { ID: 0x0201, type: 0x21 },
7613
+ description: "Setting the sensor reading interval in seconds, by default 10 seconds",
7614
+ access: "STATE_SET",
7615
+ }),
7616
+ m.enumLookup({
7617
+ name: "tx_radio_power",
7618
+ lookup: { "4dbm": 4, "19dbm": 19 },
7619
+ cluster: "genPowerCfg",
7620
+ attribute: { ID: 0x0236, type: 0x28 },
7621
+ description: "Set TX Radio Power, dbm",
7622
+ access: "STATE_SET",
7623
+ }),
7624
+ m.binary({
7625
+ name: "smart_sleep",
7626
+ valueOn: ["ON", 1],
7627
+ valueOff: ["OFF", 0],
7628
+ cluster: "genPowerCfg",
7629
+ attribute: { ID: 0x0216, type: 0x10 },
7630
+ description: "Enable Smart Sleep, short wakeup every 2-7 seconds",
7631
+ access: "STATE_SET",
7632
+ }),
7633
+ m.binary({
7634
+ name: "config_report_enable",
7635
+ valueOn: ["ON", 1],
7636
+ valueOff: ["OFF", 0],
7637
+ cluster: "genPowerCfg",
7638
+ attribute: { ID: 0x0275, type: 0x10 },
7639
+ description: "Enable reporting based on reporting configuration",
7640
+ access: "STATE_SET",
7641
+ }),
7642
+ m.binary({
7643
+ name: "comparison_previous_data",
7644
+ valueOn: ["ON", 1],
7645
+ valueOff: ["OFF", 0],
7646
+ cluster: "genPowerCfg",
7647
+ attribute: { ID: 0x0205, type: 0x10 },
7648
+ description: "Enable сontrol of comparison with previous data",
7649
+ access: "STATE_SET",
7650
+ }),
7651
+ ],
7652
+ },
7653
+ {
7654
+ zigbeeModel: ["Netuya_CO2_Smart_Box"],
7655
+ model: "Netuya_CO2_Smart_Box",
7656
+ vendor: "Efektalab",
7657
+ description: "CO2 Smart Monitor, rgb indicator, alarm, can control the relay",
7658
+ ota: true,
7659
+ extend: [
7660
+ m.identify(),
7661
+ m.co2({
7662
+ reporting: co2Reporting,
7663
+ access: "STATE",
7664
+ }),
7665
+ m.numeric({
7666
+ name: "lifetime",
7667
+ unit: "Hours",
7668
+ cluster: "genTime",
7669
+ attribute: { ID: 0x0199, type: 0x23 },
7670
+ description: "Uptime",
7671
+ access: "STATE",
7672
+ }),
7673
+ m.light({
7674
+ effect: false,
7675
+ powerOnBehavior: false,
7676
+ configureReporting: true,
7677
+ levelReportingConfig: levelReporting,
7678
+ }),
7679
+ m.binary({
7680
+ name: "night_onoff_backlight",
7681
+ valueOn: ["ON", 1],
7682
+ valueOff: ["OFF", 0],
7683
+ cluster: "genLevelCtrl",
7684
+ attribute: { ID: 0x0401, type: 0x10 },
7685
+ description: "Complete shutdown of the backlight at night mode",
7686
+ access: "STATE_SET",
7687
+ }),
7688
+ m.numeric({
7689
+ name: "night_on_backlight",
7690
+ unit: "Hr",
7691
+ valueMin: 0,
7692
+ valueMax: 23,
7693
+ cluster: "genLevelCtrl",
7694
+ attribute: { ID: 0x0405, type: 0x20 },
7695
+ description: "Night mode activation time",
7696
+ access: "STATE_SET",
7697
+ }),
7698
+ m.numeric({
7699
+ name: "night_off_backlight",
7700
+ unit: "Hr",
7701
+ valueMin: 0,
7702
+ valueMax: 23,
7703
+ cluster: "genLevelCtrl",
7704
+ attribute: { ID: 0x0406, type: 0x20 },
7705
+ description: "Night mode deactivation time",
7706
+ access: "STATE_SET",
7707
+ }),
7708
+ m.binary({
7709
+ name: "alarm",
7710
+ valueOn: ["ON", 1],
7711
+ valueOff: ["OFF", 0],
7712
+ cluster: "msCO2",
7713
+ attribute: { ID: 0x0240, type: 0x10 },
7714
+ description: "Enable alarm",
7715
+ access: "STATE_SET",
7716
+ }),
7717
+ m.numeric({
7718
+ name: "alarm volume",
7719
+ valueMin: 0,
7720
+ valueMax: 10,
7721
+ cluster: "msCO2",
7722
+ attribute: { ID: 0x0242, type: 0x20 },
7723
+ description: "Set alarm volume",
7724
+ access: "STATE_SET",
7725
+ }),
7726
+ m.numeric({
7727
+ name: "alarm level",
7728
+ unit: "ppm",
7729
+ valueMin: 400,
7730
+ valueMax: 5000,
7731
+ cluster: "msCO2",
7732
+ attribute: { ID: 0x0241, type: 0x21 },
7733
+ description: "Set alarm level",
7734
+ access: "STATE_SET",
7735
+ }),
7736
+ m.binary({
7737
+ name: "calibration mode",
7738
+ valueOn: ["Auto", 1],
7739
+ valueOff: ["Manual", 0],
7740
+ cluster: "msCO2",
7741
+ attribute: { ID: 0x0402, type: 0x10 },
7742
+ description: "Set calibration mode of the CO2 sensor",
7743
+ access: "STATE_SET",
7744
+ }),
7745
+ m.binary({
7746
+ name: "forced_recalibration",
7747
+ valueOn: ["ON", 1],
7748
+ valueOff: ["OFF", 0],
7749
+ cluster: "msCO2",
7750
+ attribute: { ID: 0x0202, type: 0x10 },
7751
+ description: "Start FRC (Perform Forced Recalibration of the CO2 Sensor)",
7752
+ access: "STATE_SET",
7753
+ }),
7754
+ m.binary({
7755
+ name: "factory_reset_co2",
7756
+ valueOn: ["ON", 1],
7757
+ valueOff: ["OFF", 0],
7758
+ cluster: "msCO2",
7759
+ attribute: { ID: 0x0206, type: 0x10 },
7760
+ description: "Factory Reset CO2 sensor",
7761
+ access: "STATE_SET",
7762
+ }),
7763
+ m.numeric({
7764
+ name: "manual_forced_recalibration",
7765
+ unit: "ppm",
7766
+ valueMin: 0,
7767
+ valueMax: 5000,
7768
+ cluster: "msCO2",
7769
+ attribute: { ID: 0x0207, type: 0x21 },
7770
+ description: "Start Manual FRC (Perform Forced Recalibration of the CO2 Sensor)",
7771
+ access: "STATE_SET",
7772
+ }),
7773
+ m.binary({
7774
+ name: "invert_logic_onoff",
7775
+ valueOn: ["ON", 1],
7776
+ valueOff: ["OFF", 0],
7777
+ cluster: "msCO2",
7778
+ attribute: { ID: 0x0225, type: 0x10 },
7779
+ description: "Enable invert logic onoff",
7780
+ access: "STATE_SET",
7781
+ }),
7782
+ m.binary({
7783
+ name: "enable_co2_gas",
7784
+ valueOn: ["ON", 1],
7785
+ valueOff: ["OFF", 0],
7786
+ cluster: "msCO2",
7787
+ attribute: { ID: 0x0220, type: 0x10 },
7788
+ description: "Enable CO2 Gas Control",
7789
+ access: "STATE_SET",
7790
+ }),
7791
+ m.numeric({
7792
+ name: "high_co2_gas",
7793
+ unit: "ppm",
7794
+ valueMin: 400,
7795
+ valueMax: 5000,
7796
+ cluster: "msCO2",
7797
+ attribute: { ID: 0x0221, type: 0x21 },
7798
+ description: "Setting High CO2 Gas Border",
7799
+ access: "STATE_SET",
7800
+ }),
7801
+ m.numeric({
7802
+ name: "low_co2_gas",
7803
+ unit: "ppm",
7804
+ valueMin: 400,
7805
+ valueMax: 5000,
7806
+ cluster: "msCO2",
7807
+ attribute: { ID: 0x0222, type: 0x21 },
7808
+ description: "Setting Low CO2 Gas Border",
7809
+ access: "STATE_SET",
7810
+ }),
7811
+ ],
7812
+ },
7813
+ {
7814
+ zigbeeModel: ["EFEKTA_ePST_POW_V2_E_LR", "EFEKTA_ePST_POW_V2_R_LR"],
7815
+ model: "EFEKTA_ePST_POW_V2",
7816
+ vendor: "EFEKTA",
7817
+ description: "Smart water/gas pressure monitor with e-ink display.",
7818
+ extend: [
7819
+ m.pressure({
7820
+ unit: "kPa",
7821
+ description: "Pressure in kPa",
7822
+ scale: 10,
7823
+ reporting: false,
7824
+ access: "STATE",
7825
+ }),
7826
+ m.numeric({
7827
+ name: "bar",
7828
+ unit: "bar",
7829
+ cluster: "msPressureMeasurement",
7830
+ attribute: "measuredValue",
7831
+ description: "Pressure in bar",
7832
+ scale: 1000,
7833
+ precision: 2,
7834
+ access: "STATE",
7835
+ }),
7836
+ m.numeric({
7837
+ name: "psi",
7838
+ unit: "psi",
7839
+ cluster: "msPressureMeasurement",
7840
+ attribute: "measuredValue",
7841
+ description: "Pressure in psi",
7842
+ scale: 68.94757,
7843
+ precision: 2,
7844
+ access: "STATE",
7845
+ }),
7846
+ m.temperature({
7847
+ reporting: false,
7848
+ access: "STATE",
7849
+ }),
7850
+ m.numeric({
7851
+ name: "pressure_offset",
7852
+ unit: "hPa",
7853
+ valueMin: -1000.0,
7854
+ valueMax: 1000.0,
7855
+ cluster: "msPressureMeasurement",
7856
+ attribute: { ID: 0x0210, type: 0x29 },
7857
+ description: "Adjust pressure sensor",
7858
+ access: "STATE_SET",
7859
+ }),
7860
+ m.numeric({
7861
+ name: "temperature_offset",
7862
+ unit: "°C",
7863
+ valueMin: -25,
7864
+ valueMax: 25,
7865
+ valueStep: 0.1,
7866
+ scale: 10,
7867
+ cluster: "msTemperatureMeasurement",
7868
+ attribute: { ID: 0x0210, type: 0x29 },
7869
+ description: "Adjust temperature sensor",
7870
+ access: "STATE_SET",
7871
+ }),
7872
+ m.numeric({
7873
+ name: "mains_voltage",
7874
+ unit: "V",
7875
+ cluster: "genPowerCfg",
7876
+ attribute: "mainsVoltage",
7877
+ description: "Mains voltage",
7878
+ scale: 10,
7879
+ precision: 1,
7880
+ access: "STATE",
7881
+ }),
7882
+ m.battery({
7883
+ percentageReportingConfig: false,
7884
+ lowStatus: true,
7885
+ voltage: false,
7886
+ voltageReporting: false,
7887
+ voltageReportingConfig: false,
7888
+ }),
7889
+ m.numeric({
7890
+ name: "reading_interval",
7891
+ unit: "sec",
7892
+ valueMin: 10,
7893
+ valueMax: 300,
7894
+ cluster: "genPowerCfg",
7895
+ attribute: { ID: 0x0201, type: 0x21 },
7896
+ description: "Setting the sensor reading interval in seconds, by default 20 seconds",
7897
+ access: "STATE_SET",
7898
+ }),
7899
+ m.enumLookup({
7900
+ name: "tx_radio_power",
7901
+ lookup: { "4": 4, "19": 19 },
7902
+ cluster: "genPowerCfg",
7903
+ attribute: { ID: 0x0236, type: 0x28 },
7904
+ description: "Set TX Radio Power, dbm",
7905
+ access: "STATE_SET",
7906
+ }),
7907
+ m.binary({
7908
+ name: "comparison_previous_data",
7909
+ valueOn: ["ON", 1],
7910
+ valueOff: ["OFF", 0],
7911
+ cluster: "genPowerCfg",
7912
+ attribute: { ID: 0x0205, type: 0x10 },
7913
+ description: "Enable сontrol of comparison with previous data",
7914
+ access: "STATE_SET",
7915
+ }),
7916
+ m.enumLookup({
7917
+ name: "invert",
7918
+ lookup: { BW: 0, WB: 1 },
7919
+ cluster: "genPowerCfg",
7920
+ attribute: { ID: 0xf004, type: 0x20 },
7921
+ description: "Invert display color",
7922
+ access: "STATE_SET",
7923
+ }),
7924
+ m.enumLookup({
7925
+ name: "fastmode",
7926
+ lookup: { Fast: 0, "Ultra Fast": 1 },
7927
+ cluster: "genPowerCfg",
7928
+ attribute: { ID: 0xf005, type: 0x20 },
7929
+ description: "Display refresh mode",
7930
+ access: "STATE_SET",
7931
+ }),
7932
+ ],
7933
+ },
7934
+ {
7935
+ zigbeeModel: ["MODKAM_Flower"],
7936
+ model: "MODKAM_Flower",
7937
+ vendor: "EFEKTA",
7938
+ description: "Soil moisture sensor MODKAM_Flower, mod DIYRuZ Flower",
7939
+ extend: [
7940
+ m.identify(),
7941
+ m.soilMoisture({
7942
+ reporting: false,
7943
+ access: "STATE",
7944
+ }),
7945
+ m.temperature({
7946
+ reporting: false,
7947
+ access: "STATE",
7948
+ }),
7949
+ m.illuminance({
7950
+ reporting: false,
7951
+ access: "STATE",
7952
+ }),
7953
+ m.numeric({
7954
+ name: "lux_factor",
7955
+ valueMin: 0.1,
7956
+ valueMax: 30,
7957
+ valueStep: 0.1,
7958
+ cluster: "msIlluminanceMeasurement",
7959
+ attribute: { ID: 0x0310, type: zigbee_herdsman_1.Zcl.DataType.SINGLE_PREC },
7960
+ description: "Lux factor",
7961
+ access: "STATE_SET",
7962
+ }),
7963
+ m.numeric({
7964
+ name: "reading_interval",
7965
+ unit: "min.",
7966
+ valueMin: 1,
7967
+ valueMax: 360,
7968
+ cluster: "genPowerCfg",
7969
+ attribute: { ID: 0x0201, type: 0x21 },
7970
+ description: "Setting the time in minutes, by default 3 minutes",
7971
+ access: "STATE_SET",
7972
+ }),
7973
+ m.binary({
7974
+ name: "smart_sleep",
7975
+ valueOn: ["ON", 1],
7976
+ valueOff: ["OFF", 0],
7977
+ cluster: "genPowerCfg",
7978
+ attribute: { ID: 0x0216, type: 0x10 },
7979
+ description: "Enable Smart Sleep, short wakeup every 7 seconds",
7980
+ access: "STATE_SET",
7981
+ }),
7982
+ m.enumLookup({
7983
+ name: "tx_radio_power",
7984
+ lookup: { "-4dbm": -4, "0dbm": 0, "4dbm": 4 },
7985
+ cluster: "genPowerCfg",
7986
+ attribute: { ID: 0x0236, type: 0x28 },
7987
+ description: "Set TX Radio Power, dbm",
7988
+ access: "STATE_SET",
7989
+ }),
7990
+ m.numeric({
7991
+ name: "lifetime",
7992
+ unit: "Hours",
7993
+ cluster: "genTime",
7994
+ attribute: "standardTime",
7995
+ description: "Device lifetime in hours",
7996
+ access: "STATE",
7997
+ }),
7998
+ m.enumLookup({
7999
+ name: "resolution",
8000
+ lookup: { "9 bit": 9, "10 bit": 10, "11 bit": 11, "12 bit": 12 },
8001
+ cluster: "msTemperatureMeasurement",
8002
+ attribute: { ID: 0x0520, type: 0x20 },
8003
+ description: "Set Bit resolution DS18B20",
8004
+ access: "STATE_SET",
8005
+ }),
8006
+ m.numeric({
8007
+ name: "temperature_offset",
8008
+ unit: "°C",
8009
+ valueMin: -50,
8010
+ valueMax: 50,
8011
+ valueStep: 0.1,
8012
+ scale: 10,
8013
+ cluster: "msTemperatureMeasurement",
8014
+ attribute: { ID: 0x0410, type: 0x29 },
8015
+ description: "Adjust temperature",
8016
+ access: "STATE_SET",
8017
+ }),
8018
+ m.binary({
8019
+ name: "temperature_compensation",
8020
+ valueOn: ["ON", 1],
8021
+ valueOff: ["OFF", 0],
8022
+ cluster: "msTemperatureMeasurement",
8023
+ attribute: { ID: 0x0504, type: 0x10 },
8024
+ description: "Temperature compensation",
8025
+ access: "STATE_SET",
8026
+ }),
8027
+ m.battery({
8028
+ percentage: true,
8029
+ lowStatus: false,
8030
+ voltage: false,
8031
+ percentageReporting: false,
8032
+ }),
8033
+ ],
8034
+ },
8035
+ {
8036
+ zigbeeModel: ["zFlora_X_Max"],
8037
+ model: "zFlora_X_Max",
8038
+ vendor: "EFEKTA",
8039
+ description: "Plant watering sensor zFlora X Max with signal amplifier",
8040
+ extend: [
8041
+ m.identify(),
8042
+ m.soilMoisture({
8043
+ reporting: false,
8044
+ access: "STATE",
8045
+ }),
8046
+ m.temperature({
8047
+ reporting: false,
8048
+ access: "STATE",
8049
+ }),
8050
+ m.illuminance({
8051
+ reporting: false,
8052
+ access: "STATE",
8053
+ }),
8054
+ m.numeric({
8055
+ name: "lux_factor",
8056
+ valueMin: 0.1,
8057
+ valueMax: 10,
8058
+ valueStep: 0.1,
8059
+ cluster: "msIlluminanceMeasurement",
8060
+ attribute: { ID: 0x0310, type: 0x39 },
8061
+ description: "Lux factor",
8062
+ access: "STATE_SET",
8063
+ }),
8064
+ m.numeric({
8065
+ name: "reading_interval",
8066
+ unit: "min",
8067
+ valueMin: 1,
8068
+ valueMax: 360,
8069
+ cluster: "genPowerCfg",
8070
+ attribute: { ID: 0x0201, type: 0x21 },
8071
+ description: "Setting the time in minutes, by default 9 minutes",
8072
+ access: "STATE_SET",
8073
+ }),
8074
+ m.binary({
8075
+ name: "smart_sleep",
8076
+ valueOn: ["ON", 1],
8077
+ valueOff: ["OFF", 0],
8078
+ cluster: "genPowerCfg",
8079
+ attribute: { ID: 0x0216, type: 0x10 },
8080
+ description: "Enable Smart Sleep, short wakeup every 7 seconds",
8081
+ access: "STATE_SET",
8082
+ }),
8083
+ m.enumLookup({
8084
+ name: "tx_radio_power",
8085
+ lookup: { "4dbm": 4, "19dbm": 19 },
8086
+ cluster: "genPowerCfg",
8087
+ attribute: { ID: 0x0236, type: 0x28 },
8088
+ description: "Set TX Radio Power, dbm",
8089
+ access: "STATE_SET",
8090
+ }),
8091
+ m.numeric({
8092
+ name: "lower_level",
8093
+ unit: "%",
8094
+ valueMin: 0,
8095
+ valueMax: 99,
8096
+ cluster: "msSoilMoisture",
8097
+ attribute: { ID: 0x0502, type: 0x21 },
8098
+ description: "Lower level of soil moisture 0% is:",
8099
+ access: "STATE_SET",
8100
+ }),
8101
+ m.numeric({
8102
+ name: "upper_level",
8103
+ unit: "%",
8104
+ valueMin: 1,
8105
+ valueMax: 100,
8106
+ cluster: "msSoilMoisture",
8107
+ attribute: { ID: 0x0503, type: 0x21 },
8108
+ description: "Upper level of soil moisture 100% is:",
8109
+ access: "STATE_SET",
8110
+ }),
8111
+ m.binary({
8112
+ name: "temperature_compensation",
8113
+ valueOn: ["ON", 1],
8114
+ valueOff: ["OFF", 0],
8115
+ cluster: "msTemperatureMeasurement",
8116
+ attribute: { ID: 0x0504, type: 0x10 },
8117
+ description: "Temperature compensation",
8118
+ access: "STATE_SET",
8119
+ }),
8120
+ m.battery({
8121
+ percentageReportingConfig: false,
8122
+ lowStatus: false,
8123
+ voltage: false,
8124
+ voltageReporting: false,
8125
+ voltageReportingConfig: false,
8126
+ }),
8127
+ ],
8128
+ },
7203
8129
  ];
7204
8130
  //# sourceMappingURL=efekta.js.map