zigbee-herdsman-converters 21.32.0 → 21.34.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.
package/devices/efekta.js CHANGED
@@ -39,6 +39,9 @@ const defaultReporting = { min: 0, max: 300, change: 0 };
39
39
  const normalReporting = { min: 0, max: 3600, change: 0 };
40
40
  const rareReporting = { min: 0, max: 21600, change: 0 };
41
41
  const rarestReporting = { min: 0, max: 64800, change: 0 };
42
+ const threeReporting = { min: 30, max: 1800, change: 1 };
43
+ const fourReporting = { min: 30, max: 1800, change: 10 };
44
+ const sixReporting = { min: 3600, max: 21600, change: 1 };
42
45
  const definitions = [
43
46
  {
44
47
  zigbeeModel: ['EFEKTA_iAQ3'],
@@ -1009,6 +1012,1621 @@ const definitions = [
1009
1012
  }),
1010
1013
  ],
1011
1014
  },
1015
+ {
1016
+ zigbeeModel: ['EFEKTA_ePST_POW_E_LR'],
1017
+ model: 'EFEKTA_ePST_POW_E_LR',
1018
+ vendor: 'EFEKTA',
1019
+ description: 'Water, gas smart pressure monitor with e-ink display',
1020
+ extend: [
1021
+ m.pressure({
1022
+ unit: 'kPa',
1023
+ description: 'Pressure in kPa',
1024
+ scale: 10,
1025
+ reporting: false,
1026
+ access: 'STATE',
1027
+ }),
1028
+ m.numeric({
1029
+ name: 'bar',
1030
+ unit: 'bar',
1031
+ cluster: 'msPressureMeasurement',
1032
+ attribute: 'measuredValue',
1033
+ description: 'Pressure in bar',
1034
+ scale: 1000,
1035
+ precision: 2,
1036
+ access: 'STATE',
1037
+ }),
1038
+ m.numeric({
1039
+ name: 'psi',
1040
+ unit: 'psi',
1041
+ cluster: 'msPressureMeasurement',
1042
+ attribute: 'measuredValue',
1043
+ description: 'Pressure in psi',
1044
+ scale: 68.94757,
1045
+ precision: 2,
1046
+ access: 'STATE',
1047
+ }),
1048
+ m.temperature({
1049
+ reporting: false,
1050
+ access: 'STATE',
1051
+ }),
1052
+ m.numeric({
1053
+ name: 'pressure_offset',
1054
+ unit: 'kPa',
1055
+ valueMin: -100.0,
1056
+ valueMax: 100.0,
1057
+ cluster: 'msPressureMeasurement',
1058
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1059
+ description: 'Adjust pressure sensor',
1060
+ access: 'STATE_SET',
1061
+ }),
1062
+ m.numeric({
1063
+ name: 'raw_temperature_calibration',
1064
+ unit: 'raw unit',
1065
+ valueMin: -8192,
1066
+ valueMax: 8192,
1067
+ cluster: 'msTemperatureMeasurement',
1068
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1069
+ description: 'Adjust temperature sensor',
1070
+ access: 'STATE_SET',
1071
+ }),
1072
+ m.numeric({
1073
+ name: 'mains_voltage',
1074
+ unit: 'V',
1075
+ cluster: 'genPowerCfg',
1076
+ attribute: 'mainsVoltage',
1077
+ description: 'Mains voltage',
1078
+ scale: 10,
1079
+ precision: 1,
1080
+ access: 'STATE',
1081
+ }),
1082
+ m.battery({
1083
+ percentage: true,
1084
+ lowStatus: true,
1085
+ voltage: false,
1086
+ percentageReporting: false,
1087
+ voltageReporting: false,
1088
+ }),
1089
+ m.numeric({
1090
+ name: 'reading_interval',
1091
+ unit: 'sec',
1092
+ valueMin: 10,
1093
+ valueMax: 300,
1094
+ cluster: 'genPowerCfg',
1095
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1096
+ description: 'Setting the sensor reading interval in seconds, by default 20 seconds',
1097
+ access: 'STATE_SET',
1098
+ }),
1099
+ m.enumLookup({
1100
+ name: 'tx_radio_power',
1101
+ lookup: { '4dbm': 4, '19dbm': 19 },
1102
+ cluster: 'genPowerCfg',
1103
+ attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
1104
+ description: 'Set TX Radio Power, dbm',
1105
+ access: 'STATE_SET',
1106
+ }),
1107
+ m.binary({
1108
+ name: 'comparison_previous_data',
1109
+ valueOn: ['ON', 1],
1110
+ valueOff: ['OFF', 0],
1111
+ cluster: 'genPowerCfg',
1112
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1113
+ description: 'Enable сontrol of comparison with previous data',
1114
+ access: 'STATE_SET',
1115
+ }),
1116
+ m.enumLookup({
1117
+ name: 'invert',
1118
+ lookup: { BW: 0, WB: 1 },
1119
+ cluster: 'genPowerCfg',
1120
+ attribute: { ID: 0xf004, type: zigbee_herdsman_1.Zcl.DataType.UINT8 },
1121
+ description: 'Invert display color',
1122
+ access: 'STATE_SET',
1123
+ }),
1124
+ m.enumLookup({
1125
+ name: 'fastmode',
1126
+ lookup: { Fast: 0, 'Ultra Fast': 1 },
1127
+ cluster: 'genPowerCfg',
1128
+ attribute: { ID: 0xf005, type: zigbee_herdsman_1.Zcl.DataType.UINT8 },
1129
+ description: 'Display refresh mode',
1130
+ access: 'STATE_SET',
1131
+ }),
1132
+ ],
1133
+ },
1134
+ {
1135
+ zigbeeModel: ['EFEKTA_eTH_POW_E_LR'],
1136
+ model: 'EFEKTA_eTH_POW_E_LR',
1137
+ vendor: 'EFEKTA',
1138
+ description: 'Temperature and humidity smart sensor with with e-ink display',
1139
+ extend: [
1140
+ m.temperature({
1141
+ reporting: false,
1142
+ access: 'STATE',
1143
+ }),
1144
+ m.humidity({
1145
+ reporting: false,
1146
+ access: 'STATE',
1147
+ }),
1148
+ m.numeric({
1149
+ name: 'mains_voltage',
1150
+ unit: 'V',
1151
+ cluster: 'genPowerCfg',
1152
+ attribute: 'mainsVoltage',
1153
+ description: 'Mains voltage',
1154
+ scale: 10,
1155
+ precision: 1,
1156
+ access: 'STATE',
1157
+ }),
1158
+ m.battery({
1159
+ percentage: true,
1160
+ percentageReporting: false,
1161
+ lowStatus: true,
1162
+ voltage: false,
1163
+ voltageReporting: false,
1164
+ }),
1165
+ m.numeric({
1166
+ name: 'reading_interval',
1167
+ unit: 'sec',
1168
+ valueMin: 10,
1169
+ valueMax: 300,
1170
+ cluster: 'genPowerCfg',
1171
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1172
+ description: 'Setting the sensor reading interval in seconds, by default 40 seconds',
1173
+ access: 'STATE_SET',
1174
+ }),
1175
+ m.enumLookup({
1176
+ name: 'tx_radio_power',
1177
+ lookup: { '4dbm': 4, '19dbm': 19 },
1178
+ cluster: 'genPowerCfg',
1179
+ attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
1180
+ description: 'Set TX Radio Power, dbm',
1181
+ access: 'STATE_SET',
1182
+ }),
1183
+ m.binary({
1184
+ name: 'comparison_previous_data',
1185
+ valueOn: ['ON', 1],
1186
+ valueOff: ['OFF', 0],
1187
+ cluster: 'genPowerCfg',
1188
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1189
+ description: 'Enable сontrol of comparison with previous data',
1190
+ access: 'STATE_SET',
1191
+ }),
1192
+ m.enumLookup({
1193
+ name: 'invert',
1194
+ lookup: { BW: 0, WB: 1 },
1195
+ cluster: 'genPowerCfg',
1196
+ attribute: { ID: 0xf004, type: zigbee_herdsman_1.Zcl.DataType.UINT8 },
1197
+ description: 'Invert display color',
1198
+ access: 'STATE_SET',
1199
+ }),
1200
+ m.enumLookup({
1201
+ name: 'fastmode',
1202
+ lookup: { Fast: 0, 'Ultra Fast': 1 },
1203
+ cluster: 'genPowerCfg',
1204
+ attribute: { ID: 0xf005, type: zigbee_herdsman_1.Zcl.DataType.UINT8 },
1205
+ description: 'Display refresh mode',
1206
+ access: 'STATE_SET',
1207
+ }),
1208
+ ],
1209
+ },
1210
+ {
1211
+ zigbeeModel: ['EFEKTA_T1_Y_LR'],
1212
+ model: 'EFEKTA_T1_Y_LR',
1213
+ vendor: 'EFEKTA',
1214
+ description: 'Temperature sensor DS18B20, AAA bsttery, signal amplifier, works in Tuya',
1215
+ extend: [
1216
+ m.temperature({
1217
+ reporting: false,
1218
+ access: 'STATE',
1219
+ }),
1220
+ m.battery({
1221
+ percentage: true,
1222
+ lowStatus: true,
1223
+ voltage: true,
1224
+ percentageReporting: false,
1225
+ voltageReporting: false,
1226
+ }),
1227
+ ],
1228
+ },
1229
+ {
1230
+ zigbeeModel: ['EFEKTA_T8_POW'],
1231
+ model: 'EFEKTA_T8_POW',
1232
+ vendor: 'EfektaLab',
1233
+ description: 'Temperature sensor with a signal amplifier, support up to 8 DS18B20',
1234
+ extend: [
1235
+ m.deviceEndpoints({
1236
+ endpoints: {
1237
+ '1': 1,
1238
+ '2': 2,
1239
+ '3': 3,
1240
+ '4': 4,
1241
+ '5': 5,
1242
+ '6': 6,
1243
+ '7': 7,
1244
+ '8': 8,
1245
+ },
1246
+ }),
1247
+ m.temperature({
1248
+ endpointNames: ['1'],
1249
+ description: 'Measured value of the 1 temperature sensor',
1250
+ reporting: fourReporting,
1251
+ access: 'STATE',
1252
+ }),
1253
+ m.temperature({
1254
+ endpointNames: ['2'],
1255
+ description: 'Measured value of the 2 temperature sensor',
1256
+ reporting: fourReporting,
1257
+ access: 'STATE',
1258
+ }),
1259
+ m.temperature({
1260
+ endpointNames: ['3'],
1261
+ description: 'Measured value of the 3 temperature sensor',
1262
+ reporting: fourReporting,
1263
+ access: 'STATE',
1264
+ }),
1265
+ m.temperature({
1266
+ endpointNames: ['4'],
1267
+ description: 'Measured value of the 4 temperature sensor',
1268
+ reporting: fourReporting,
1269
+ access: 'STATE',
1270
+ }),
1271
+ m.temperature({
1272
+ endpointNames: ['5'],
1273
+ description: 'Measured value of the 5 temperature sensor',
1274
+ reporting: fourReporting,
1275
+ access: 'STATE',
1276
+ }),
1277
+ m.temperature({
1278
+ endpointNames: ['6'],
1279
+ description: 'Measured value of the 6 temperature sensor',
1280
+ reporting: fourReporting,
1281
+ access: 'STATE',
1282
+ }),
1283
+ m.temperature({
1284
+ endpointNames: ['7'],
1285
+ description: 'Measured value of the 7 temperature sensor',
1286
+ reporting: fourReporting,
1287
+ access: 'STATE',
1288
+ }),
1289
+ m.temperature({
1290
+ endpointNames: ['8'],
1291
+ description: 'Measured value of the 8 temperature sensor',
1292
+ reporting: fourReporting,
1293
+ access: 'STATE',
1294
+ }),
1295
+ m.battery({
1296
+ percentage: true,
1297
+ lowStatus: true,
1298
+ voltage: false,
1299
+ percentageReporting: true,
1300
+ percentageReportingConfig: sixReporting,
1301
+ }),
1302
+ m.numeric({
1303
+ name: 'number_of_sensors',
1304
+ cluster: 'msTemperatureMeasurement',
1305
+ attribute: { ID: 0xa199, type: zigbee_herdsman_1.Zcl.DataType.UINT8 },
1306
+ description: 'Number of ds18b20 sensors per data bus',
1307
+ access: 'STATE',
1308
+ }),
1309
+ m.numeric({
1310
+ name: 'uptime',
1311
+ unit: 'Hours',
1312
+ cluster: 'genTime',
1313
+ attribute: 'localTime',
1314
+ description: 'Uptime',
1315
+ access: 'STATE',
1316
+ }),
1317
+ m.numeric({
1318
+ name: 'mains_voltage',
1319
+ unit: 'V',
1320
+ cluster: 'genPowerCfg',
1321
+ attribute: 'mainsVoltage',
1322
+ description: 'Mains voltage',
1323
+ scale: 10,
1324
+ precision: 1,
1325
+ access: 'STATE_GET',
1326
+ }),
1327
+ m.numeric({
1328
+ name: 'reading_interval',
1329
+ unit: 'sec',
1330
+ valueMin: 3,
1331
+ valueMax: 360,
1332
+ cluster: 'genPowerCfg',
1333
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1334
+ description: 'Setting the sensor reading interval in seconds, by default 15 seconds',
1335
+ }),
1336
+ m.enumLookup({
1337
+ name: 'tx_radio_power',
1338
+ lookup: { '4dbm': 4, '19dbm': 19 },
1339
+ cluster: 'genPowerCfg',
1340
+ attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
1341
+ description: 'Set TX Radio Power, dbm',
1342
+ access: 'STATE_SET',
1343
+ }),
1344
+ m.binary({
1345
+ name: 'smart_sleep',
1346
+ valueOn: ['ON', 1],
1347
+ valueOff: ['OFF', 0],
1348
+ cluster: 'genPowerCfg',
1349
+ attribute: { ID: 0x0216, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1350
+ description: 'Enable Smart Sleep, short wakeup every 2-7 seconds',
1351
+ }),
1352
+ ],
1353
+ },
1354
+ {
1355
+ zigbeeModel: ['EFEKTA_PST_V1_LR'],
1356
+ model: 'EFEKTA_PST_V1_LR',
1357
+ vendor: 'EFEKTA',
1358
+ description: 'Water, gas smart pressure monitor with signal amplifier',
1359
+ extend: [
1360
+ m.pressure({
1361
+ unit: 'kPa',
1362
+ description: 'Measured pressure value in kPa',
1363
+ scale: 10,
1364
+ reporting: threeReporting,
1365
+ access: 'STATE',
1366
+ }),
1367
+ m.numeric({
1368
+ name: 'bar',
1369
+ unit: 'bar',
1370
+ cluster: 'msPressureMeasurement',
1371
+ attribute: 'measuredValue',
1372
+ description: 'Measured pressure value in bar',
1373
+ scale: 1000,
1374
+ precision: 2,
1375
+ access: 'STATE',
1376
+ }),
1377
+ m.numeric({
1378
+ name: 'psi',
1379
+ unit: 'psi',
1380
+ cluster: 'msPressureMeasurement',
1381
+ attribute: 'measuredValue',
1382
+ description: 'Measured pressure value in psi',
1383
+ scale: 68.94757,
1384
+ precision: 2,
1385
+ access: 'STATE',
1386
+ }),
1387
+ m.temperature({
1388
+ reporting: fourReporting,
1389
+ access: 'STATE',
1390
+ }),
1391
+ m.numeric({
1392
+ name: 'pressure_offset',
1393
+ unit: 'kPa',
1394
+ valueMin: -100.0,
1395
+ valueMax: 100.0,
1396
+ cluster: 'msPressureMeasurement',
1397
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1398
+ description: 'Adjust first pressure sensor',
1399
+ access: 'STATE_SET',
1400
+ }),
1401
+ m.numeric({
1402
+ name: 'raw_temperature_calibration',
1403
+ unit: 'raw unit',
1404
+ valueMin: -8192,
1405
+ valueMax: 8192,
1406
+ cluster: 'msTemperatureMeasurement',
1407
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1408
+ description: 'Adjust first temperature sensor',
1409
+ access: 'STATE_SET',
1410
+ }),
1411
+ m.numeric({
1412
+ name: 'raw_temperature',
1413
+ unit: 'raw unit',
1414
+ cluster: 'msTemperatureMeasurement',
1415
+ attribute: { ID: 0x0007, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1416
+ description: 'Sensor raw temperature',
1417
+ access: 'STATE',
1418
+ }),
1419
+ m.numeric({
1420
+ name: 'raw_temperature_recalibrated',
1421
+ unit: 'raw unit',
1422
+ cluster: 'msTemperatureMeasurement',
1423
+ attribute: { ID: 0x0009, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1424
+ description: 'Recalibrated sensor raw temperature',
1425
+ access: 'STATE',
1426
+ }),
1427
+ m.battery({
1428
+ percentage: true,
1429
+ lowStatus: true,
1430
+ voltage: true,
1431
+ percentageReporting: true,
1432
+ voltageReporting: false,
1433
+ percentageReportingConfig: sixReporting,
1434
+ }),
1435
+ m.numeric({
1436
+ name: 'uptime',
1437
+ unit: 'Hours',
1438
+ cluster: 'genTime',
1439
+ attribute: 'localTime',
1440
+ description: 'Uptime',
1441
+ access: 'STATE',
1442
+ }),
1443
+ m.numeric({
1444
+ name: 'reading_interval',
1445
+ unit: 'sec',
1446
+ valueMin: 10,
1447
+ valueMax: 300,
1448
+ cluster: 'genPowerCfg',
1449
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1450
+ description: 'Setting the sensor reading interval in seconds, by default 15 seconds',
1451
+ access: 'STATE_SET',
1452
+ }),
1453
+ m.enumLookup({
1454
+ name: 'tx_radio_power',
1455
+ lookup: { '4dbm': 4, '19dbm': 19 },
1456
+ cluster: 'genPowerCfg',
1457
+ attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
1458
+ description: 'Set TX Radio Power, dbm',
1459
+ access: 'STATE_SET',
1460
+ }),
1461
+ m.binary({
1462
+ name: 'smart_sleep',
1463
+ valueOn: ['ON', 1],
1464
+ valueOff: ['OFF', 0],
1465
+ cluster: 'genPowerCfg',
1466
+ attribute: { ID: 0x0216, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1467
+ description: 'Enable Smart Sleep, short wakeup every 7 seconds',
1468
+ access: 'STATE_SET',
1469
+ }),
1470
+ m.binary({
1471
+ name: 'config_report_enable',
1472
+ valueOn: ['ON', 1],
1473
+ valueOff: ['OFF', 0],
1474
+ cluster: 'genPowerCfg',
1475
+ attribute: { ID: 0x0275, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1476
+ description: 'Enable reporting based on reporting configuration',
1477
+ access: 'STATE_SET',
1478
+ }),
1479
+ m.binary({
1480
+ name: 'comparison_previous_data',
1481
+ valueOn: ['ON', 1],
1482
+ valueOff: ['OFF', 0],
1483
+ cluster: 'genPowerCfg',
1484
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1485
+ description: 'Enable сontrol of comparison with previous data',
1486
+ access: 'STATE_SET',
1487
+ }),
1488
+ ],
1489
+ },
1490
+ {
1491
+ zigbeeModel: ['EFEKTA_PST_POW_V1_LR'],
1492
+ model: 'EFEKTA_PST_POW_V1_LR',
1493
+ vendor: 'EFEKTA',
1494
+ description: 'Water, gas smart pressure monitor with two types of power supply',
1495
+ extend: [
1496
+ m.pressure({
1497
+ unit: 'kPa',
1498
+ description: 'Measured pressure value in kPa',
1499
+ scale: 10,
1500
+ reporting: threeReporting,
1501
+ access: 'STATE',
1502
+ }),
1503
+ m.numeric({
1504
+ name: 'bar',
1505
+ unit: 'bar',
1506
+ cluster: 'msPressureMeasurement',
1507
+ attribute: 'measuredValue',
1508
+ description: 'Measured pressure value in bar',
1509
+ scale: 1000,
1510
+ precision: 2,
1511
+ access: 'STATE',
1512
+ }),
1513
+ m.numeric({
1514
+ name: 'psi',
1515
+ unit: 'psi',
1516
+ cluster: 'msPressureMeasurement',
1517
+ attribute: 'measuredValue',
1518
+ description: 'Measured pressure value in psi',
1519
+ scale: 68.94757,
1520
+ precision: 2,
1521
+ access: 'STATE',
1522
+ }),
1523
+ m.temperature({
1524
+ reporting: fourReporting,
1525
+ access: 'STATE',
1526
+ }),
1527
+ m.numeric({
1528
+ name: 'pressure_offset',
1529
+ unit: 'kPa',
1530
+ valueMin: -100.0,
1531
+ valueMax: 100.0,
1532
+ cluster: 'msPressureMeasurement',
1533
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1534
+ description: 'Adjust first pressure sensor',
1535
+ access: 'STATE_SET',
1536
+ }),
1537
+ m.numeric({
1538
+ name: 'raw_temperature_calibration',
1539
+ unit: 'raw unit',
1540
+ valueMin: -8192,
1541
+ valueMax: 8192,
1542
+ cluster: 'msTemperatureMeasurement',
1543
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1544
+ description: 'Adjust first temperature sensor',
1545
+ access: 'STATE_SET',
1546
+ }),
1547
+ m.numeric({
1548
+ name: 'mains_voltage',
1549
+ unit: 'V',
1550
+ cluster: 'genPowerCfg',
1551
+ attribute: 'mainsVoltage',
1552
+ description: 'Mains voltage',
1553
+ scale: 10,
1554
+ precision: 1,
1555
+ access: 'STATE_GET',
1556
+ }),
1557
+ m.battery({
1558
+ percentage: true,
1559
+ lowStatus: true,
1560
+ voltage: false,
1561
+ percentageReporting: true,
1562
+ percentageReportingConfig: sixReporting,
1563
+ }),
1564
+ m.numeric({
1565
+ name: 'uptime',
1566
+ unit: 'Hours',
1567
+ cluster: 'genTime',
1568
+ attribute: 'localTime',
1569
+ description: 'Uptime',
1570
+ access: 'STATE',
1571
+ }),
1572
+ m.numeric({
1573
+ name: 'reading_interval',
1574
+ unit: 'sec',
1575
+ valueMin: 10,
1576
+ valueMax: 360,
1577
+ cluster: 'genPowerCfg',
1578
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1579
+ description: 'Setting the sensor reading interval in seconds, by default 10 seconds',
1580
+ access: 'STATE_SET',
1581
+ }),
1582
+ m.enumLookup({
1583
+ name: 'tx_radio_power',
1584
+ lookup: { '4dbm': 4, '19dbm': 19 },
1585
+ cluster: 'genPowerCfg',
1586
+ attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
1587
+ description: 'Set TX Radio Power, dbm',
1588
+ access: 'STATE_SET',
1589
+ }),
1590
+ m.binary({
1591
+ name: 'smart_sleep',
1592
+ valueOn: ['ON', 1],
1593
+ valueOff: ['OFF', 0],
1594
+ cluster: 'genPowerCfg',
1595
+ attribute: { ID: 0x0216, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1596
+ description: 'Enable Smart Sleep, short wakeup every 2-7 seconds',
1597
+ access: 'STATE_SET',
1598
+ }),
1599
+ m.binary({
1600
+ name: 'config_report_enable',
1601
+ valueOn: ['ON', 1],
1602
+ valueOff: ['OFF', 0],
1603
+ cluster: 'genPowerCfg',
1604
+ attribute: { ID: 0x0275, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1605
+ description: 'Enable reporting based on reporting configuration',
1606
+ access: 'STATE_SET',
1607
+ }),
1608
+ m.binary({
1609
+ name: 'comparison_previous_data',
1610
+ valueOn: ['ON', 1],
1611
+ valueOff: ['OFF', 0],
1612
+ cluster: 'genPowerCfg',
1613
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1614
+ description: 'Enable сontrol of comparison with previous data',
1615
+ access: 'STATE_SET',
1616
+ }),
1617
+ ],
1618
+ },
1619
+ {
1620
+ zigbeeModel: ['EFEKTA_PST_POW_V2_LR'],
1621
+ model: 'EFEKTA_PST_POW_V2_LR',
1622
+ vendor: 'EFEKTA',
1623
+ description: 'Water, gas smart pressure monitor with two types of power supply V2',
1624
+ extend: [
1625
+ m.pressure({
1626
+ unit: 'kPa',
1627
+ description: 'Measured pressure value in kPa',
1628
+ scale: 10,
1629
+ reporting: threeReporting,
1630
+ access: 'STATE',
1631
+ }),
1632
+ m.numeric({
1633
+ name: 'bar',
1634
+ unit: 'bar',
1635
+ cluster: 'msPressureMeasurement',
1636
+ attribute: 'measuredValue',
1637
+ description: 'Measured pressure value in bar',
1638
+ scale: 1000,
1639
+ precision: 2,
1640
+ access: 'STATE',
1641
+ }),
1642
+ m.numeric({
1643
+ name: 'psi',
1644
+ unit: 'psi',
1645
+ cluster: 'msPressureMeasurement',
1646
+ attribute: 'measuredValue',
1647
+ description: 'Measured pressure value in psi',
1648
+ scale: 68.94757,
1649
+ precision: 2,
1650
+ access: 'STATE',
1651
+ }),
1652
+ m.temperature({
1653
+ reporting: fourReporting,
1654
+ access: 'STATE',
1655
+ }),
1656
+ m.numeric({
1657
+ name: 'pressure_offset',
1658
+ unit: 'kPa',
1659
+ valueMin: -100.0,
1660
+ valueMax: 100.0,
1661
+ cluster: 'msPressureMeasurement',
1662
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1663
+ description: 'Adjust first pressure sensor',
1664
+ access: 'STATE_SET',
1665
+ }),
1666
+ m.numeric({
1667
+ name: 'raw_temperature_calibration',
1668
+ unit: 'raw unit',
1669
+ valueMin: -8192,
1670
+ valueMax: 8192,
1671
+ cluster: 'msTemperatureMeasurement',
1672
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1673
+ description: 'Adjust first temperature sensor',
1674
+ access: 'STATE_SET',
1675
+ }),
1676
+ m.numeric({
1677
+ name: 'mains_voltage',
1678
+ unit: 'V',
1679
+ cluster: 'genPowerCfg',
1680
+ attribute: 'mainsVoltage',
1681
+ description: 'Mains voltage',
1682
+ scale: 10,
1683
+ precision: 1,
1684
+ access: 'STATE_GET',
1685
+ }),
1686
+ m.battery({
1687
+ percentage: true,
1688
+ lowStatus: true,
1689
+ voltage: false,
1690
+ percentageReporting: true,
1691
+ percentageReportingConfig: sixReporting,
1692
+ }),
1693
+ m.numeric({
1694
+ name: 'uptime',
1695
+ unit: 'Hours',
1696
+ cluster: 'genTime',
1697
+ attribute: 'localTime',
1698
+ description: 'Uptime',
1699
+ access: 'STATE',
1700
+ }),
1701
+ m.numeric({
1702
+ name: 'reading_interval',
1703
+ unit: 'sec',
1704
+ valueMin: 10,
1705
+ valueMax: 360,
1706
+ cluster: 'genPowerCfg',
1707
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1708
+ description: 'Setting the sensor reading interval in seconds, by default 10 seconds',
1709
+ access: 'STATE_SET',
1710
+ }),
1711
+ m.enumLookup({
1712
+ name: 'tx_radio_power',
1713
+ lookup: { '4dbm': 4, '19dbm': 19 },
1714
+ cluster: 'genPowerCfg',
1715
+ attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
1716
+ description: 'Set TX Radio Power, dbm',
1717
+ access: 'STATE_SET',
1718
+ }),
1719
+ m.binary({
1720
+ name: 'smart_sleep',
1721
+ valueOn: ['ON', 1],
1722
+ valueOff: ['OFF', 0],
1723
+ cluster: 'genPowerCfg',
1724
+ attribute: { ID: 0x0216, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1725
+ description: 'Enable Smart Sleep, short wakeup every 2-7 seconds',
1726
+ access: 'STATE_SET',
1727
+ }),
1728
+ m.binary({
1729
+ name: 'config_report_enable',
1730
+ valueOn: ['ON', 1],
1731
+ valueOff: ['OFF', 0],
1732
+ cluster: 'genPowerCfg',
1733
+ attribute: { ID: 0x0275, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1734
+ description: 'Enable reporting based on reporting configuration',
1735
+ access: 'STATE_SET',
1736
+ }),
1737
+ m.binary({
1738
+ name: 'comparison_previous_data',
1739
+ valueOn: ['ON', 1],
1740
+ valueOff: ['OFF', 0],
1741
+ cluster: 'genPowerCfg',
1742
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1743
+ description: 'Enable сontrol of comparison with previous data',
1744
+ access: 'STATE_SET',
1745
+ }),
1746
+ ],
1747
+ },
1748
+ {
1749
+ zigbeeModel: ['EFEKTA_PST_V1'],
1750
+ model: 'EFEKTA_PST_V1',
1751
+ vendor: 'EFEKTA',
1752
+ description: 'Water, gas smart pressure monitor',
1753
+ extend: [
1754
+ m.pressure({
1755
+ unit: 'kPa',
1756
+ description: 'Measured pressure value in kPa',
1757
+ scale: 10,
1758
+ reporting: threeReporting,
1759
+ access: 'STATE',
1760
+ }),
1761
+ m.numeric({
1762
+ name: 'bar',
1763
+ unit: 'bar',
1764
+ cluster: 'msPressureMeasurement',
1765
+ attribute: 'measuredValue',
1766
+ description: 'Measured pressure value in bar',
1767
+ scale: 1000,
1768
+ precision: 2,
1769
+ access: 'STATE',
1770
+ }),
1771
+ m.numeric({
1772
+ name: 'psi',
1773
+ unit: 'psi',
1774
+ cluster: 'msPressureMeasurement',
1775
+ attribute: 'measuredValue',
1776
+ description: 'Measured pressure value in psi',
1777
+ scale: 68.94757,
1778
+ precision: 2,
1779
+ access: 'STATE',
1780
+ }),
1781
+ m.temperature({
1782
+ reporting: fourReporting,
1783
+ access: 'STATE',
1784
+ }),
1785
+ m.numeric({
1786
+ name: 'pressure_offset',
1787
+ unit: 'kPa',
1788
+ valueMin: -100.0,
1789
+ valueMax: 100.0,
1790
+ cluster: 'msPressureMeasurement',
1791
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1792
+ description: 'Adjust first pressure sensor',
1793
+ access: 'STATE_SET',
1794
+ }),
1795
+ m.numeric({
1796
+ name: 'raw_temperature_calibration',
1797
+ unit: 'raw unit',
1798
+ valueMin: -8192,
1799
+ valueMax: 8192,
1800
+ cluster: 'msTemperatureMeasurement',
1801
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1802
+ description: 'Adjust first temperature sensor',
1803
+ access: 'STATE_SET',
1804
+ }),
1805
+ m.numeric({
1806
+ name: 'raw_temperature',
1807
+ unit: 'raw unit',
1808
+ cluster: 'msTemperatureMeasurement',
1809
+ attribute: { ID: 0x0007, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1810
+ description: 'Sensor raw temperature',
1811
+ access: 'STATE',
1812
+ }),
1813
+ m.numeric({
1814
+ name: 'raw_temperature_recalibrated',
1815
+ unit: 'raw unit',
1816
+ cluster: 'msTemperatureMeasurement',
1817
+ attribute: { ID: 0x0009, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
1818
+ description: 'Recalibrated sensor raw temperature',
1819
+ access: 'STATE',
1820
+ }),
1821
+ m.battery({
1822
+ percentage: true,
1823
+ lowStatus: true,
1824
+ voltage: true,
1825
+ percentageReporting: true,
1826
+ voltageReporting: false,
1827
+ percentageReportingConfig: sixReporting,
1828
+ }),
1829
+ m.numeric({
1830
+ name: 'uptime',
1831
+ unit: 'Hours',
1832
+ cluster: 'genTime',
1833
+ attribute: 'localTime',
1834
+ description: 'Uptime',
1835
+ access: 'STATE',
1836
+ }),
1837
+ m.numeric({
1838
+ name: 'reading_interval',
1839
+ unit: 'sec',
1840
+ valueMin: 10,
1841
+ valueMax: 300,
1842
+ cluster: 'genPowerCfg',
1843
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
1844
+ description: 'Setting the sensor reading interval in seconds, by default 15 seconds',
1845
+ access: 'STATE_SET',
1846
+ }),
1847
+ m.binary({
1848
+ name: 'smart_sleep',
1849
+ valueOn: ['ON', 1],
1850
+ valueOff: ['OFF', 0],
1851
+ cluster: 'genPowerCfg',
1852
+ attribute: { ID: 0x0216, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1853
+ description: 'Enable Smart Sleep, short wakeup every 7 seconds',
1854
+ access: 'STATE_SET',
1855
+ }),
1856
+ m.binary({
1857
+ name: 'config_report_enable',
1858
+ valueOn: ['ON', 1],
1859
+ valueOff: ['OFF', 0],
1860
+ cluster: 'genPowerCfg',
1861
+ attribute: { ID: 0x0275, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1862
+ description: 'Enable reporting based on reporting configuration',
1863
+ access: 'STATE_SET',
1864
+ }),
1865
+ m.binary({
1866
+ name: 'comparison_previous_data',
1867
+ valueOn: ['ON', 1],
1868
+ valueOff: ['OFF', 0],
1869
+ cluster: 'genPowerCfg',
1870
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1871
+ description: 'Enable сontrol of comparison with previous data',
1872
+ access: 'STATE_SET',
1873
+ }),
1874
+ ],
1875
+ },
1876
+ {
1877
+ zigbeeModel: ['EFEKTA_PST_DUO_V1'],
1878
+ model: 'EFEKTA_PST_DUO_V1',
1879
+ vendor: 'EFEKTA',
1880
+ description: 'Water, gas smart pressure monitor with two sensors',
1881
+ extend: [
1882
+ m.deviceEndpoints({ endpoints: { '1': 1, '2': 2 } }),
1883
+ m.pressure({
1884
+ endpointNames: ['1'],
1885
+ unit: 'kPa',
1886
+ description: 'Measured pressure value оf the first sensor in kPa',
1887
+ scale: 10,
1888
+ reporting: threeReporting,
1889
+ access: 'STATE',
1890
+ }),
1891
+ m.numeric({
1892
+ endpointNames: ['1'],
1893
+ name: 'bar',
1894
+ unit: 'bar',
1895
+ cluster: 'msPressureMeasurement',
1896
+ attribute: 'measuredValue',
1897
+ description: 'Measured pressure value оf the first sensor in bar',
1898
+ scale: 1000,
1899
+ precision: 2,
1900
+ access: 'STATE',
1901
+ }),
1902
+ m.numeric({
1903
+ endpointNames: ['1'],
1904
+ name: 'psi',
1905
+ unit: 'psi',
1906
+ cluster: 'msPressureMeasurement',
1907
+ attribute: 'measuredValue',
1908
+ description: 'Measured pressure value оf the first sensor in psi',
1909
+ scale: 68.94757,
1910
+ precision: 2,
1911
+ access: 'STATE',
1912
+ }),
1913
+ m.temperature({
1914
+ endpointNames: ['1'],
1915
+ description: 'Measured value of the first temperature sensor',
1916
+ reporting: fourReporting,
1917
+ access: 'STATE',
1918
+ }),
1919
+ m.numeric({
1920
+ endpointNames: ['1'],
1921
+ name: 'pressure_offset',
1922
+ unit: 'kPa',
1923
+ valueMin: -100.0,
1924
+ valueMax: 100.0,
1925
+ cluster: 'msPressureMeasurement',
1926
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1927
+ description: 'Adjust first pressure sensor',
1928
+ access: 'STATE_SET',
1929
+ }),
1930
+ m.numeric({
1931
+ endpointNames: ['1'],
1932
+ name: 'raw_temperature_calibration',
1933
+ unit: 'raw unit',
1934
+ valueMin: -8192,
1935
+ valueMax: 8192,
1936
+ cluster: 'msTemperatureMeasurement',
1937
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1938
+ description: 'Adjust first temperature sensor',
1939
+ access: 'STATE_SET',
1940
+ }),
1941
+ m.pressure({
1942
+ endpointNames: ['2'],
1943
+ unit: 'kPa',
1944
+ description: 'Measured pressure value оf the second sensor in kPa',
1945
+ scale: 10,
1946
+ reporting: threeReporting,
1947
+ access: 'STATE',
1948
+ }),
1949
+ m.numeric({
1950
+ endpointNames: ['2'],
1951
+ name: 'bar',
1952
+ unit: 'bar',
1953
+ cluster: 'msPressureMeasurement',
1954
+ attribute: 'measuredValue',
1955
+ description: 'Measured pressure value оf the second sensor in bar',
1956
+ scale: 1000,
1957
+ precision: 2,
1958
+ access: 'STATE',
1959
+ }),
1960
+ m.numeric({
1961
+ endpointNames: ['2'],
1962
+ name: 'psi',
1963
+ unit: 'psi',
1964
+ cluster: 'msPressureMeasurement',
1965
+ attribute: 'measuredValue',
1966
+ description: 'pressure in psi',
1967
+ scale: 68.94757,
1968
+ precision: 2,
1969
+ access: 'STATE',
1970
+ }),
1971
+ m.temperature({
1972
+ endpointNames: ['2'],
1973
+ description: 'Measured value of the second temperature sensor',
1974
+ reporting: fourReporting,
1975
+ access: 'STATE',
1976
+ }),
1977
+ m.numeric({
1978
+ endpointNames: ['2'],
1979
+ name: 'pressure_offset',
1980
+ unit: 'kPa',
1981
+ valueMin: -100.0,
1982
+ valueMax: 100.0,
1983
+ cluster: 'msPressureMeasurement',
1984
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1985
+ description: 'Adjust second pressure sensor',
1986
+ access: 'STATE_SET',
1987
+ }),
1988
+ m.numeric({
1989
+ endpointNames: ['2'],
1990
+ name: 'raw_temperature_cal',
1991
+ unit: 'raw unit',
1992
+ valueMin: -8192,
1993
+ valueMax: 8192,
1994
+ cluster: 'msTemperatureMeasurement',
1995
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
1996
+ description: 'Adjust second temperature sensor',
1997
+ access: 'STATE_SET',
1998
+ }),
1999
+ m.battery({
2000
+ percentage: true,
2001
+ lowStatus: true,
2002
+ voltage: true,
2003
+ percentageReporting: true,
2004
+ voltageReporting: false,
2005
+ percentageReportingConfig: sixReporting,
2006
+ }),
2007
+ m.numeric({
2008
+ name: 'uptime',
2009
+ unit: 'Hours',
2010
+ cluster: 'genTime',
2011
+ attribute: 'localTime',
2012
+ description: 'Uptime',
2013
+ access: 'STATE',
2014
+ }),
2015
+ m.numeric({
2016
+ name: 'reading_interval',
2017
+ unit: 'sec',
2018
+ valueMin: 10,
2019
+ valueMax: 360,
2020
+ cluster: 'genPowerCfg',
2021
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
2022
+ description: 'Setting sensor reading interval in seconds, by default 20 seconds',
2023
+ access: 'STATE_SET',
2024
+ }),
2025
+ m.binary({
2026
+ name: 'smart_sleep',
2027
+ valueOn: ['ON', 1],
2028
+ valueOff: ['OFF', 0],
2029
+ cluster: 'genPowerCfg',
2030
+ attribute: { ID: 0x0216, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2031
+ description: 'Enable Smart Sleep, short wakeup every 7 seconds',
2032
+ access: 'STATE_SET',
2033
+ }),
2034
+ m.binary({
2035
+ name: 'config_report_enable',
2036
+ valueOn: ['ON', 1],
2037
+ valueOff: ['OFF', 0],
2038
+ cluster: 'genPowerCfg',
2039
+ attribute: { ID: 0x0275, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2040
+ description: 'Enable reporting based on reporting configuration',
2041
+ access: 'STATE_SET',
2042
+ }),
2043
+ m.binary({
2044
+ name: 'comparison_previous_data',
2045
+ valueOn: ['ON', 1],
2046
+ valueOff: ['OFF', 0],
2047
+ cluster: 'genPowerCfg',
2048
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2049
+ description: 'Enable сontrol of comparison with previous data',
2050
+ access: 'STATE_SET',
2051
+ }),
2052
+ ],
2053
+ },
2054
+ {
2055
+ zigbeeModel: ['EFEKTA_PST_DUO_V1_LR'],
2056
+ model: 'EFEKTA_PST_DUO_V1_LR',
2057
+ vendor: 'EFEKTA',
2058
+ description: 'Water, gas smart pressure monitor with two sensors and signal amplifier',
2059
+ extend: [
2060
+ m.deviceEndpoints({ endpoints: { '1': 1, '2': 2 } }),
2061
+ m.pressure({
2062
+ endpointNames: ['1'],
2063
+ unit: 'kPa',
2064
+ description: 'Measured pressure value оf the first sensor in kPa',
2065
+ scale: 10,
2066
+ reporting: threeReporting,
2067
+ access: 'STATE',
2068
+ }),
2069
+ m.numeric({
2070
+ endpointNames: ['1'],
2071
+ name: 'bar',
2072
+ unit: 'bar',
2073
+ cluster: 'msPressureMeasurement',
2074
+ attribute: 'measuredValue',
2075
+ description: 'Measured pressure value оf the first sensor in bar',
2076
+ scale: 1000,
2077
+ precision: 2,
2078
+ access: 'STATE',
2079
+ }),
2080
+ m.numeric({
2081
+ endpointNames: ['1'],
2082
+ name: 'psi',
2083
+ unit: 'psi',
2084
+ cluster: 'msPressureMeasurement',
2085
+ attribute: 'measuredValue',
2086
+ description: 'Measured pressure value оf the first sensor in psi',
2087
+ scale: 68.94757,
2088
+ precision: 2,
2089
+ access: 'STATE',
2090
+ }),
2091
+ m.temperature({
2092
+ endpointNames: ['1'],
2093
+ description: 'Measured value of the first temperature sensor',
2094
+ reporting: fourReporting,
2095
+ access: 'STATE',
2096
+ }),
2097
+ m.numeric({
2098
+ endpointNames: ['1'],
2099
+ name: 'pressure_offset',
2100
+ unit: 'kPa',
2101
+ valueMin: -100.0,
2102
+ valueMax: 100.0,
2103
+ cluster: 'msPressureMeasurement',
2104
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2105
+ description: 'Adjust first pressure sensor',
2106
+ access: 'STATE_SET',
2107
+ }),
2108
+ m.numeric({
2109
+ endpointNames: ['1'],
2110
+ name: 'raw_temperature_cal',
2111
+ unit: 'raw unit',
2112
+ valueMin: -8192,
2113
+ valueMax: 8192,
2114
+ cluster: 'msTemperatureMeasurement',
2115
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2116
+ description: 'Adjust first temperature sensor',
2117
+ access: 'STATE_SET',
2118
+ }),
2119
+ m.pressure({
2120
+ endpointNames: ['2'],
2121
+ unit: 'kPa',
2122
+ description: 'Measured pressure value оf the second sensor in kPa',
2123
+ scale: 10,
2124
+ reporting: threeReporting,
2125
+ access: 'STATE',
2126
+ }),
2127
+ m.numeric({
2128
+ endpointNames: ['2'],
2129
+ name: 'bar',
2130
+ unit: 'bar',
2131
+ cluster: 'msPressureMeasurement',
2132
+ attribute: 'measuredValue',
2133
+ description: 'Measured pressure value оf the second sensor in bar',
2134
+ scale: 1000,
2135
+ precision: 2,
2136
+ access: 'STATE',
2137
+ }),
2138
+ m.numeric({
2139
+ endpointNames: ['2'],
2140
+ name: 'psi',
2141
+ unit: 'psi',
2142
+ cluster: 'msPressureMeasurement',
2143
+ attribute: 'measuredValue',
2144
+ description: 'Measured pressure value оf the second sensor in psi',
2145
+ scale: 68.94757,
2146
+ precision: 2,
2147
+ access: 'STATE',
2148
+ }),
2149
+ m.temperature({
2150
+ endpointNames: ['2'],
2151
+ description: 'Measured value of the second temperature sensor',
2152
+ reporting: fourReporting,
2153
+ access: 'STATE',
2154
+ }),
2155
+ m.numeric({
2156
+ endpointNames: ['2'],
2157
+ name: 'pressure_offset',
2158
+ unit: 'kPa',
2159
+ valueMin: -100.0,
2160
+ valueMax: 100.0,
2161
+ cluster: 'msPressureMeasurement',
2162
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2163
+ description: 'Adjust second pressure sensor',
2164
+ access: 'STATE_SET',
2165
+ }),
2166
+ m.numeric({
2167
+ endpointNames: ['2'],
2168
+ name: 'raw_temperature_calibration',
2169
+ unit: 'raw unit',
2170
+ valueMin: -8192,
2171
+ valueMax: 8192,
2172
+ cluster: 'msTemperatureMeasurement',
2173
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2174
+ description: 'Adjust second temperature sensor',
2175
+ access: 'STATE_SET',
2176
+ }),
2177
+ m.battery({
2178
+ percentage: true,
2179
+ lowStatus: true,
2180
+ voltage: true,
2181
+ percentageReporting: true,
2182
+ voltageReporting: false,
2183
+ percentageReportingConfig: sixReporting,
2184
+ }),
2185
+ m.numeric({
2186
+ name: 'uptime',
2187
+ unit: 'Hours',
2188
+ cluster: 'genTime',
2189
+ attribute: 'localTime',
2190
+ description: 'Uptime',
2191
+ access: 'STATE',
2192
+ }),
2193
+ m.numeric({
2194
+ name: 'reading_interval',
2195
+ unit: 'sec',
2196
+ valueMin: 10,
2197
+ valueMax: 360,
2198
+ cluster: 'genPowerCfg',
2199
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
2200
+ description: 'Setting the sensor reading interval in seconds, by default 40 seconds',
2201
+ access: 'STATE_SET',
2202
+ }),
2203
+ m.enumLookup({
2204
+ name: 'tx_radio_power',
2205
+ lookup: { '4dbm': 4, '19dbm': 19 },
2206
+ cluster: 'genPowerCfg',
2207
+ attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
2208
+ description: 'Set TX Radio Power, dbm',
2209
+ access: 'STATE_SET',
2210
+ }),
2211
+ m.binary({
2212
+ name: 'smart_sleep',
2213
+ valueOn: ['ON', 1],
2214
+ valueOff: ['OFF', 0],
2215
+ cluster: 'genPowerCfg',
2216
+ attribute: { ID: 0x0216, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2217
+ description: 'Enable Smart Sleep, short wakeup every 7 seconds',
2218
+ access: 'STATE_SET',
2219
+ }),
2220
+ m.binary({
2221
+ name: 'config_report_enable',
2222
+ valueOn: ['ON', 1],
2223
+ valueOff: ['OFF', 0],
2224
+ cluster: 'genPowerCfg',
2225
+ attribute: { ID: 0x0275, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2226
+ description: 'Enable reporting based on reporting configuration',
2227
+ access: 'STATE_SET',
2228
+ }),
2229
+ m.binary({
2230
+ name: 'comparison_previous_data',
2231
+ valueOn: ['ON', 1],
2232
+ valueOff: ['OFF', 0],
2233
+ cluster: 'genPowerCfg',
2234
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2235
+ description: 'Enable сontrol of comparison with previous data',
2236
+ access: 'STATE_SET',
2237
+ }),
2238
+ ],
2239
+ },
2240
+ {
2241
+ zigbeeModel: ['EFEKTA_PST_POW_DUO_V1_LR'],
2242
+ model: 'EFEKTA_PST_POW_DUO_V1_LR',
2243
+ vendor: 'EFEKTA',
2244
+ description: 'Water, gas smart pressure monitor with two sensors, two power supply',
2245
+ extend: [
2246
+ m.deviceEndpoints({ endpoints: { '1': 1, '2': 2 } }),
2247
+ m.pressure({
2248
+ endpointNames: ['1'],
2249
+ unit: 'kPa',
2250
+ description: 'Measured pressure value оf the first sensor in kPa',
2251
+ scale: 10,
2252
+ reporting: threeReporting,
2253
+ access: 'STATE',
2254
+ }),
2255
+ m.numeric({
2256
+ endpointNames: ['1'],
2257
+ name: 'bar',
2258
+ unit: 'bar',
2259
+ cluster: 'msPressureMeasurement',
2260
+ attribute: 'measuredValue',
2261
+ description: 'Measured pressure value оf the first sensor in bar',
2262
+ scale: 1000,
2263
+ precision: 2,
2264
+ access: 'STATE',
2265
+ }),
2266
+ m.numeric({
2267
+ endpointNames: ['1'],
2268
+ name: 'psi',
2269
+ unit: 'psi',
2270
+ cluster: 'msPressureMeasurement',
2271
+ attribute: 'measuredValue',
2272
+ description: 'Measured pressure value оf the first sensor in psi',
2273
+ scale: 68.94757,
2274
+ precision: 2,
2275
+ access: 'STATE',
2276
+ }),
2277
+ m.temperature({
2278
+ endpointNames: ['1'],
2279
+ description: 'Measured value of the first temperature sensor',
2280
+ reporting: fourReporting,
2281
+ access: 'STATE',
2282
+ }),
2283
+ m.numeric({
2284
+ endpointNames: ['1'],
2285
+ name: 'pressure_offset',
2286
+ unit: 'kPa',
2287
+ valueMin: -100.0,
2288
+ valueMax: 100.0,
2289
+ cluster: 'msPressureMeasurement',
2290
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2291
+ description: 'Adjust first pressure sensor',
2292
+ access: 'STATE_SET',
2293
+ }),
2294
+ m.numeric({
2295
+ endpointNames: ['1'],
2296
+ name: 'raw_temperature_calibration',
2297
+ unit: 'raw unit',
2298
+ valueMin: -8192,
2299
+ valueMax: 8192,
2300
+ cluster: 'msTemperatureMeasurement',
2301
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2302
+ description: 'Adjust first temperature sensor',
2303
+ access: 'STATE_SET',
2304
+ }),
2305
+ m.pressure({
2306
+ endpointNames: ['2'],
2307
+ unit: 'kPa',
2308
+ description: 'Measured pressure value оf the second sensor in kPa',
2309
+ scale: 10,
2310
+ reporting: threeReporting,
2311
+ access: 'STATE',
2312
+ }),
2313
+ m.numeric({
2314
+ endpointNames: ['2'],
2315
+ name: 'bar',
2316
+ unit: 'bar',
2317
+ cluster: 'msPressureMeasurement',
2318
+ attribute: 'measuredValue',
2319
+ description: 'Measured pressure value оf the second sensor in bar',
2320
+ scale: 1000,
2321
+ precision: 2,
2322
+ access: 'STATE',
2323
+ }),
2324
+ m.numeric({
2325
+ endpointNames: ['2'],
2326
+ name: 'psi',
2327
+ unit: 'psi',
2328
+ cluster: 'msPressureMeasurement',
2329
+ attribute: 'measuredValue',
2330
+ description: 'Measured pressure value оf the second sensor in psi',
2331
+ scale: 68.94757,
2332
+ precision: 2,
2333
+ access: 'STATE',
2334
+ }),
2335
+ m.temperature({
2336
+ endpointNames: ['2'],
2337
+ description: 'Measured value of the second temperature sensor',
2338
+ reporting: fourReporting,
2339
+ access: 'STATE',
2340
+ }),
2341
+ m.numeric({
2342
+ endpointNames: ['2'],
2343
+ name: 'pressure_offset',
2344
+ unit: 'kPa',
2345
+ valueMin: -100.0,
2346
+ valueMax: 100.0,
2347
+ cluster: 'msPressureMeasurement',
2348
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2349
+ description: 'Adjust second pressure sensor',
2350
+ access: 'STATE_SET',
2351
+ }),
2352
+ m.numeric({
2353
+ endpointNames: ['2'],
2354
+ name: 'raw_temperature_calibration',
2355
+ unit: 'raw unit',
2356
+ valueMin: -8192,
2357
+ valueMax: 8192,
2358
+ cluster: 'msTemperatureMeasurement',
2359
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2360
+ description: 'Adjust second temperature sensor',
2361
+ access: 'STATE_SET',
2362
+ }),
2363
+ m.numeric({
2364
+ name: 'mains_voltage',
2365
+ unit: 'V',
2366
+ cluster: 'genPowerCfg',
2367
+ attribute: 'mainsVoltage',
2368
+ description: 'Mains voltage',
2369
+ scale: 10,
2370
+ precision: 1,
2371
+ access: 'STATE_GET',
2372
+ }),
2373
+ m.battery({
2374
+ percentage: true,
2375
+ lowStatus: true,
2376
+ voltage: false,
2377
+ percentageReporting: true,
2378
+ percentageReportingConfig: sixReporting,
2379
+ }),
2380
+ m.numeric({
2381
+ name: 'uptime',
2382
+ unit: 'Hours',
2383
+ cluster: 'genTime',
2384
+ attribute: 'localTime',
2385
+ description: 'Uptime',
2386
+ access: 'STATE',
2387
+ }),
2388
+ m.numeric({
2389
+ name: 'reading_interval',
2390
+ unit: 'sec',
2391
+ valueMin: 10,
2392
+ valueMax: 360,
2393
+ cluster: 'genPowerCfg',
2394
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
2395
+ description: 'Setting the sensor reading interval in seconds, by default 10 seconds',
2396
+ access: 'STATE_SET',
2397
+ }),
2398
+ m.enumLookup({
2399
+ name: 'tx_radio_power',
2400
+ lookup: { '4dbm': 4, '19dbm': 19 },
2401
+ cluster: 'genPowerCfg',
2402
+ attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
2403
+ description: 'Set TX Radio Power, dbm',
2404
+ access: 'STATE_SET',
2405
+ }),
2406
+ m.binary({
2407
+ name: 'smart_sleep',
2408
+ valueOn: ['ON', 1],
2409
+ valueOff: ['OFF', 0],
2410
+ cluster: 'genPowerCfg',
2411
+ attribute: { ID: 0x0216, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2412
+ description: 'Enable Smart Sleep, short wakeup every 2-7 seconds',
2413
+ access: 'STATE_SET',
2414
+ }),
2415
+ m.binary({
2416
+ name: 'config_report_enable',
2417
+ valueOn: ['ON', 1],
2418
+ valueOff: ['OFF', 0],
2419
+ cluster: 'genPowerCfg',
2420
+ attribute: { ID: 0x0275, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2421
+ description: 'Enable reporting based on reporting configuration',
2422
+ access: 'STATE_SET',
2423
+ }),
2424
+ m.binary({
2425
+ name: 'comparison_previous_data',
2426
+ valueOn: ['ON', 1],
2427
+ valueOff: ['OFF', 0],
2428
+ cluster: 'genPowerCfg',
2429
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2430
+ description: 'Enable сontrol of comparison with previous data',
2431
+ access: 'STATE_SET',
2432
+ }),
2433
+ ],
2434
+ },
2435
+ {
2436
+ zigbeeModel: ['EFEKTA_PST_POW_DUO_V2_LR'],
2437
+ model: 'EFEKTA_PST_POW_DUO_V2_LR',
2438
+ vendor: 'EFEKTA',
2439
+ description: 'Water, gas smart pressure monitor with two sensors, power supply, V2',
2440
+ extend: [
2441
+ m.deviceEndpoints({ endpoints: { '1': 1, '2': 2 } }),
2442
+ m.pressure({
2443
+ endpointNames: ['1'],
2444
+ unit: 'kPa',
2445
+ description: 'Measured pressure value оf the first sensor in kPa',
2446
+ scale: 10,
2447
+ reporting: threeReporting,
2448
+ access: 'STATE',
2449
+ }),
2450
+ m.numeric({
2451
+ endpointNames: ['1'],
2452
+ name: 'bar',
2453
+ unit: 'bar',
2454
+ cluster: 'msPressureMeasurement',
2455
+ attribute: 'measuredValue',
2456
+ description: 'Measured pressure value оf the first sensor in bar',
2457
+ scale: 1000,
2458
+ precision: 2,
2459
+ access: 'STATE',
2460
+ }),
2461
+ m.numeric({
2462
+ endpointNames: ['1'],
2463
+ name: 'psi',
2464
+ unit: 'psi',
2465
+ cluster: 'msPressureMeasurement',
2466
+ attribute: 'measuredValue',
2467
+ description: 'Measured pressure value оf the first sensor in psi',
2468
+ scale: 68.94757,
2469
+ precision: 2,
2470
+ access: 'STATE',
2471
+ }),
2472
+ m.temperature({
2473
+ endpointNames: ['1'],
2474
+ description: 'Measured value of the first temperature sensor',
2475
+ reporting: fourReporting,
2476
+ access: 'STATE',
2477
+ }),
2478
+ m.numeric({
2479
+ endpointNames: ['1'],
2480
+ name: 'pressure_offset',
2481
+ unit: 'kPa',
2482
+ valueMin: -100.0,
2483
+ valueMax: 100.0,
2484
+ cluster: 'msPressureMeasurement',
2485
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2486
+ description: 'Adjust first pressure sensor',
2487
+ access: 'STATE_SET',
2488
+ }),
2489
+ m.numeric({
2490
+ endpointNames: ['1'],
2491
+ name: 'raw_temperature_calibration',
2492
+ unit: 'raw unit',
2493
+ valueMin: -8192,
2494
+ valueMax: 8192,
2495
+ cluster: 'msTemperatureMeasurement',
2496
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2497
+ description: 'Adjust first temperature sensor',
2498
+ access: 'STATE_SET',
2499
+ }),
2500
+ m.pressure({
2501
+ endpointNames: ['2'],
2502
+ unit: 'kPa',
2503
+ description: 'Measured pressure value оf the second sensor in kPa',
2504
+ scale: 10,
2505
+ reporting: threeReporting,
2506
+ access: 'STATE',
2507
+ }),
2508
+ m.numeric({
2509
+ endpointNames: ['2'],
2510
+ name: 'bar',
2511
+ unit: 'bar',
2512
+ cluster: 'msPressureMeasurement',
2513
+ attribute: 'measuredValue',
2514
+ description: 'Measured pressure value оf the second sensor in bar',
2515
+ scale: 1000,
2516
+ precision: 2,
2517
+ access: 'STATE',
2518
+ }),
2519
+ m.numeric({
2520
+ endpointNames: ['2'],
2521
+ name: 'psi',
2522
+ unit: 'psi',
2523
+ cluster: 'msPressureMeasurement',
2524
+ attribute: 'measuredValue',
2525
+ description: 'Measured pressure value оf the second sensor in psi',
2526
+ scale: 68.94757,
2527
+ precision: 2,
2528
+ access: 'STATE',
2529
+ }),
2530
+ m.temperature({
2531
+ endpointNames: ['2'],
2532
+ description: 'Measured value of the second temperature sensor',
2533
+ reporting: fourReporting,
2534
+ access: 'STATE',
2535
+ }),
2536
+ m.numeric({
2537
+ endpointNames: ['2'],
2538
+ name: 'pressure_offset',
2539
+ unit: 'kPa',
2540
+ valueMin: -100.0,
2541
+ valueMax: 100.0,
2542
+ cluster: 'msPressureMeasurement',
2543
+ attribute: { ID: 0x0210, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2544
+ description: 'Adjust second pressure sensor',
2545
+ access: 'STATE_SET',
2546
+ }),
2547
+ m.numeric({
2548
+ endpointNames: ['2'],
2549
+ name: 'raw_temperature_calibration',
2550
+ unit: 'raw unit',
2551
+ valueMin: -8192,
2552
+ valueMax: 8192,
2553
+ cluster: 'msTemperatureMeasurement',
2554
+ attribute: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
2555
+ description: 'Adjust second temperature sensor',
2556
+ access: 'STATE_SET',
2557
+ }),
2558
+ m.numeric({
2559
+ name: 'mains_voltage',
2560
+ unit: 'V',
2561
+ cluster: 'genPowerCfg',
2562
+ attribute: 'mainsVoltage',
2563
+ description: 'Mains voltage',
2564
+ scale: 10,
2565
+ precision: 1,
2566
+ access: 'STATE_GET',
2567
+ }),
2568
+ m.battery({
2569
+ percentage: true,
2570
+ lowStatus: true,
2571
+ voltage: false,
2572
+ percentageReporting: true,
2573
+ percentageReportingConfig: sixReporting,
2574
+ }),
2575
+ m.numeric({
2576
+ name: 'uptime',
2577
+ unit: 'Hours',
2578
+ cluster: 'genTime',
2579
+ attribute: 'localTime',
2580
+ description: 'Uptime',
2581
+ access: 'STATE',
2582
+ }),
2583
+ m.numeric({
2584
+ name: 'reading_interval',
2585
+ unit: 'sec',
2586
+ valueMin: 10,
2587
+ valueMax: 360,
2588
+ cluster: 'genPowerCfg',
2589
+ attribute: { ID: 0x0201, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
2590
+ description: 'Setting the sensor reading interval in seconds, by default 10 seconds',
2591
+ access: 'STATE_SET',
2592
+ }),
2593
+ m.enumLookup({
2594
+ name: 'tx_radio_power',
2595
+ lookup: { '4dbm': 4, '19dbm': 19 },
2596
+ cluster: 'genPowerCfg',
2597
+ attribute: { ID: 0x0236, type: zigbee_herdsman_1.Zcl.DataType.INT8 },
2598
+ description: 'Set TX Radio Power, dbm',
2599
+ access: 'STATE_SET',
2600
+ }),
2601
+ m.binary({
2602
+ name: 'smart_sleep',
2603
+ valueOn: ['ON', 1],
2604
+ valueOff: ['OFF', 0],
2605
+ cluster: 'genPowerCfg',
2606
+ attribute: { ID: 0x0216, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2607
+ description: 'Enable Smart Sleep, short wakeup every 2-7 seconds',
2608
+ access: 'STATE_SET',
2609
+ }),
2610
+ m.binary({
2611
+ name: 'config_report_enable',
2612
+ valueOn: ['ON', 1],
2613
+ valueOff: ['OFF', 0],
2614
+ cluster: 'genPowerCfg',
2615
+ attribute: { ID: 0x0275, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2616
+ description: 'Enable reporting based on reporting configuration',
2617
+ access: 'STATE_SET',
2618
+ }),
2619
+ m.binary({
2620
+ name: 'comparison_previous_data',
2621
+ valueOn: ['ON', 1],
2622
+ valueOff: ['OFF', 0],
2623
+ cluster: 'genPowerCfg',
2624
+ attribute: { ID: 0x0205, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
2625
+ description: 'Enable сontrol of comparison with previous data',
2626
+ access: 'STATE_SET',
2627
+ }),
2628
+ ],
2629
+ },
1012
2630
  ];
1013
2631
  exports.default = definitions;
1014
2632
  module.exports = definitions;