zigbee-herdsman-converters 20.16.0 → 20.16.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/converters/toZigbee.d.ts +4 -0
- package/converters/toZigbee.d.ts.map +1 -1
- package/converters/toZigbee.js +7 -0
- package/converters/toZigbee.js.map +1 -1
- package/devices/bosch.d.ts.map +1 -1
- package/devices/bosch.js +1 -15
- package/devices/bosch.js.map +1 -1
- package/devices/datek.d.ts.map +1 -1
- package/devices/datek.js +3 -49
- package/devices/datek.js.map +1 -1
- package/devices/develco.d.ts.map +1 -1
- package/devices/develco.js +8 -71
- package/devices/develco.js.map +1 -1
- package/devices/lifecontrol.js +1 -1
- package/devices/lifecontrol.js.map +1 -1
- package/devices/owon.d.ts.map +1 -1
- package/devices/owon.js +4 -48
- package/devices/owon.js.map +1 -1
- package/devices/salus_controls.d.ts.map +1 -1
- package/devices/salus_controls.js +2 -23
- package/devices/salus_controls.js.map +1 -1
- package/devices/shinasystem.d.ts.map +1 -1
- package/devices/shinasystem.js +3 -77
- package/devices/shinasystem.js.map +1 -1
- package/devices/sinope.d.ts.map +1 -1
- package/devices/sinope.js +16 -202
- package/devices/sinope.js.map +1 -1
- package/lib/lumi.js +3 -3
- package/lib/lumi.js.map +1 -1
- package/lib/modernExtend.d.ts +6 -1
- package/lib/modernExtend.d.ts.map +1 -1
- package/lib/modernExtend.js +99 -31
- package/lib/modernExtend.js.map +1 -1
- package/lib/reporting.d.ts.map +1 -1
- package/lib/reporting.js +0 -1
- package/lib/reporting.js.map +1 -1
- package/lib/types.d.ts +1 -1
- package/lib/types.d.ts.map +1 -1
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +1 -0
- package/lib/utils.js.map +1 -1
- package/package.json +1 -1
package/devices/sinope.js
CHANGED
|
@@ -628,14 +628,8 @@ const definitions = [
|
|
|
628
628
|
model: 'TH1123ZB',
|
|
629
629
|
vendor: 'Sinopé',
|
|
630
630
|
description: 'Zigbee line volt thermostat',
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
fzLocal.sinope,
|
|
634
|
-
legacy.fz.hvac_user_interface,
|
|
635
|
-
fromZigbee_1.default.electrical_measurement,
|
|
636
|
-
fromZigbee_1.default.metering,
|
|
637
|
-
fromZigbee_1.default.ignore_temperature_report,
|
|
638
|
-
],
|
|
631
|
+
extend: [(0, modernExtend_1.electricityMeter)()],
|
|
632
|
+
fromZigbee: [fzLocal.thermostat, fzLocal.sinope, legacy.fz.hvac_user_interface, fromZigbee_1.default.ignore_temperature_report],
|
|
639
633
|
toZigbee: [
|
|
640
634
|
toZigbee_1.default.thermostat_local_temperature,
|
|
641
635
|
toZigbee_1.default.thermostat_occupied_heating_setpoint,
|
|
@@ -652,7 +646,6 @@ const definitions = [
|
|
|
652
646
|
tzLocal.outdoor_temperature_timeout,
|
|
653
647
|
tzLocal.thermostat_occupancy,
|
|
654
648
|
tzLocal.main_cycle_output,
|
|
655
|
-
toZigbee_1.default.electrical_measurement_power,
|
|
656
649
|
],
|
|
657
650
|
exposes: [
|
|
658
651
|
e
|
|
@@ -694,10 +687,6 @@ const definitions = [
|
|
|
694
687
|
e.enum('backlight_auto_dim', ea.ALL, ['on_demand', 'sensing']).withDescription('Control backlight dimming behavior'),
|
|
695
688
|
e.enum('keypad_lockout', ea.ALL, ['unlock', 'lock1']).withDescription('Enables or disables the device’s buttons'),
|
|
696
689
|
e.enum('main_cycle_output', ea.ALL, ['15_sec', '15_min']).withDescription('The length of the control cycle: 15_sec=normal 15_min=fan'),
|
|
697
|
-
e.power().withAccess(ea.STATE_GET),
|
|
698
|
-
e.current(),
|
|
699
|
-
e.voltage(),
|
|
700
|
-
e.energy(),
|
|
701
690
|
],
|
|
702
691
|
configure: async (device, coordinatorEndpoint) => {
|
|
703
692
|
const endpoint = device.getEndpoint(1);
|
|
@@ -708,8 +697,6 @@ const definitions = [
|
|
|
708
697
|
'hvacThermostat',
|
|
709
698
|
'hvacUserInterfaceCfg',
|
|
710
699
|
'msTemperatureMeasurement',
|
|
711
|
-
'haElectricalMeasurement',
|
|
712
|
-
'seMetering',
|
|
713
700
|
'manuSpecificSinope',
|
|
714
701
|
];
|
|
715
702
|
await reporting.bind(endpoint, coordinatorEndpoint, binds);
|
|
@@ -731,18 +718,6 @@ const definitions = [
|
|
|
731
718
|
catch {
|
|
732
719
|
/* Not all support this */
|
|
733
720
|
}
|
|
734
|
-
await reporting.readMeteringMultiplierDivisor(endpoint);
|
|
735
|
-
await reporting.currentSummDelivered(endpoint, { min: 10, max: 303, change: [1, 1] });
|
|
736
|
-
await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
|
|
737
|
-
try {
|
|
738
|
-
await endpoint.read('haElectricalMeasurement', ['acPowerMultiplier', 'acPowerDivisor']);
|
|
739
|
-
await reporting.activePower(endpoint, { min: 10, max: 305, change: 1 }); // divider 1: 1W
|
|
740
|
-
}
|
|
741
|
-
catch {
|
|
742
|
-
endpoint.saveClusterAttributeKeyValue('haElectricalMeasurement', { acPowerMultiplier: 1, acPowerDivisor: 1 });
|
|
743
|
-
}
|
|
744
|
-
await reporting.rmsCurrent(endpoint, { min: 10, max: 306, change: 100 }); // divider 1000: 0.1Arms
|
|
745
|
-
await reporting.rmsVoltage(endpoint, { min: 10, max: 307, change: 5 }); // divider 10: 0.5Vrms
|
|
746
721
|
},
|
|
747
722
|
},
|
|
748
723
|
{
|
|
@@ -750,14 +725,8 @@ const definitions = [
|
|
|
750
725
|
model: 'TH1124ZB',
|
|
751
726
|
vendor: 'Sinopé',
|
|
752
727
|
description: 'Zigbee line volt thermostat',
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
fzLocal.sinope,
|
|
756
|
-
legacy.fz.hvac_user_interface,
|
|
757
|
-
fromZigbee_1.default.electrical_measurement,
|
|
758
|
-
fromZigbee_1.default.metering,
|
|
759
|
-
fromZigbee_1.default.ignore_temperature_report,
|
|
760
|
-
],
|
|
728
|
+
extend: [(0, modernExtend_1.electricityMeter)()],
|
|
729
|
+
fromZigbee: [fzLocal.thermostat, fzLocal.sinope, legacy.fz.hvac_user_interface, fromZigbee_1.default.ignore_temperature_report],
|
|
761
730
|
toZigbee: [
|
|
762
731
|
toZigbee_1.default.thermostat_local_temperature,
|
|
763
732
|
toZigbee_1.default.thermostat_occupied_heating_setpoint,
|
|
@@ -774,7 +743,6 @@ const definitions = [
|
|
|
774
743
|
tzLocal.outdoor_temperature_timeout,
|
|
775
744
|
tzLocal.thermostat_occupancy,
|
|
776
745
|
tzLocal.main_cycle_output,
|
|
777
|
-
toZigbee_1.default.electrical_measurement_power,
|
|
778
746
|
],
|
|
779
747
|
exposes: [
|
|
780
748
|
e
|
|
@@ -816,10 +784,6 @@ const definitions = [
|
|
|
816
784
|
e.enum('backlight_auto_dim', ea.ALL, ['on_demand', 'sensing']).withDescription('Control backlight dimming behavior'),
|
|
817
785
|
e.enum('keypad_lockout', ea.ALL, ['unlock', 'lock1']).withDescription('Enables or disables the device’s buttons'),
|
|
818
786
|
e.enum('main_cycle_output', ea.ALL, ['15_sec', '15_min']).withDescription('The length of the control cycle: 15_sec=normal 15_min=fan'),
|
|
819
|
-
e.power().withAccess(ea.STATE_GET),
|
|
820
|
-
e.current(),
|
|
821
|
-
e.voltage(),
|
|
822
|
-
e.energy(),
|
|
823
787
|
],
|
|
824
788
|
configure: async (device, coordinatorEndpoint) => {
|
|
825
789
|
const endpoint = device.getEndpoint(1);
|
|
@@ -830,8 +794,6 @@ const definitions = [
|
|
|
830
794
|
'hvacThermostat',
|
|
831
795
|
'hvacUserInterfaceCfg',
|
|
832
796
|
'msTemperatureMeasurement',
|
|
833
|
-
'haElectricalMeasurement',
|
|
834
|
-
'seMetering',
|
|
835
797
|
'manuSpecificSinope',
|
|
836
798
|
];
|
|
837
799
|
await reporting.bind(endpoint, coordinatorEndpoint, binds);
|
|
@@ -853,18 +815,6 @@ const definitions = [
|
|
|
853
815
|
catch {
|
|
854
816
|
/* Not all support this */
|
|
855
817
|
}
|
|
856
|
-
await reporting.readMeteringMultiplierDivisor(endpoint);
|
|
857
|
-
await reporting.currentSummDelivered(endpoint, { min: 10, max: 303, change: [1, 1] });
|
|
858
|
-
await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
|
|
859
|
-
try {
|
|
860
|
-
await endpoint.read('haElectricalMeasurement', ['acPowerMultiplier', 'acPowerDivisor']);
|
|
861
|
-
await reporting.activePower(endpoint, { min: 10, max: 305, change: 1 }); // divider 1: 1W
|
|
862
|
-
}
|
|
863
|
-
catch {
|
|
864
|
-
endpoint.saveClusterAttributeKeyValue('haElectricalMeasurement', { acPowerMultiplier: 1, acPowerDivisor: 1 });
|
|
865
|
-
}
|
|
866
|
-
await reporting.rmsCurrent(endpoint, { min: 10, max: 306, change: 100 }); // divider 1000: 0.1Arms
|
|
867
|
-
await reporting.rmsVoltage(endpoint, { min: 10, max: 307, change: 5 }); // divider 10: 0.5Vrms
|
|
868
818
|
},
|
|
869
819
|
},
|
|
870
820
|
{
|
|
@@ -872,14 +822,8 @@ const definitions = [
|
|
|
872
822
|
model: 'TH1123ZB-G2',
|
|
873
823
|
vendor: 'Sinopé',
|
|
874
824
|
description: 'Zigbee line volt thermostat',
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
fzLocal.sinope,
|
|
878
|
-
legacy.fz.hvac_user_interface,
|
|
879
|
-
fromZigbee_1.default.electrical_measurement,
|
|
880
|
-
fromZigbee_1.default.metering,
|
|
881
|
-
fromZigbee_1.default.ignore_temperature_report,
|
|
882
|
-
],
|
|
825
|
+
extend: [(0, modernExtend_1.electricityMeter)()],
|
|
826
|
+
fromZigbee: [fzLocal.thermostat, fzLocal.sinope, legacy.fz.hvac_user_interface, fromZigbee_1.default.ignore_temperature_report],
|
|
883
827
|
toZigbee: [
|
|
884
828
|
toZigbee_1.default.thermostat_local_temperature,
|
|
885
829
|
toZigbee_1.default.thermostat_occupied_heating_setpoint,
|
|
@@ -896,7 +840,6 @@ const definitions = [
|
|
|
896
840
|
tzLocal.outdoor_temperature_timeout,
|
|
897
841
|
tzLocal.thermostat_occupancy,
|
|
898
842
|
tzLocal.main_cycle_output,
|
|
899
|
-
toZigbee_1.default.electrical_measurement_power,
|
|
900
843
|
],
|
|
901
844
|
exposes: [
|
|
902
845
|
e
|
|
@@ -938,10 +881,6 @@ const definitions = [
|
|
|
938
881
|
e.enum('backlight_auto_dim', ea.ALL, ['on_demand', 'sensing']).withDescription('Control backlight dimming behavior'),
|
|
939
882
|
e.enum('keypad_lockout', ea.ALL, ['unlock', 'lock1']).withDescription('Enables or disables the device’s buttons'),
|
|
940
883
|
e.enum('main_cycle_output', ea.ALL, ['15_sec', '15_min']).withDescription('The length of the control cycle: 15_sec=normal 15_min=fan'),
|
|
941
|
-
e.power().withAccess(ea.STATE_GET),
|
|
942
|
-
e.current(),
|
|
943
|
-
e.voltage(),
|
|
944
|
-
e.energy(),
|
|
945
884
|
],
|
|
946
885
|
configure: async (device, coordinatorEndpoint) => {
|
|
947
886
|
const endpoint = device.getEndpoint(1);
|
|
@@ -952,8 +891,6 @@ const definitions = [
|
|
|
952
891
|
'hvacThermostat',
|
|
953
892
|
'hvacUserInterfaceCfg',
|
|
954
893
|
'msTemperatureMeasurement',
|
|
955
|
-
'haElectricalMeasurement',
|
|
956
|
-
'seMetering',
|
|
957
894
|
'manuSpecificSinope',
|
|
958
895
|
];
|
|
959
896
|
await reporting.bind(endpoint, coordinatorEndpoint, binds); // This G2 version has limited memory space
|
|
@@ -976,12 +913,6 @@ const definitions = [
|
|
|
976
913
|
reportableChange: 1,
|
|
977
914
|
},
|
|
978
915
|
]);
|
|
979
|
-
await reporting.readMeteringMultiplierDivisor(endpoint);
|
|
980
|
-
await reporting.currentSummDelivered(endpoint, { min: 10, max: 303, change: [1, 1] });
|
|
981
|
-
await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
|
|
982
|
-
await reporting.activePower(endpoint, { min: 10, max: 305, change: 1 }); // divider 1: 1W
|
|
983
|
-
await reporting.rmsCurrent(endpoint, { min: 10, max: 306, change: 100 }); // divider 1000: 0.1Arms
|
|
984
|
-
await reporting.rmsVoltage(endpoint, { min: 10, max: 307, change: 5 }); // divider 10: 0.5Vrms
|
|
985
916
|
// Disable default reporting (not used by Sinope)
|
|
986
917
|
await reporting.thermostatRunningState(endpoint, { min: 1, max: 0xffff });
|
|
987
918
|
try {
|
|
@@ -997,14 +928,8 @@ const definitions = [
|
|
|
997
928
|
model: 'TH1124ZB-G2',
|
|
998
929
|
vendor: 'Sinopé',
|
|
999
930
|
description: 'Zigbee line volt thermostat',
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
fzLocal.sinope,
|
|
1003
|
-
legacy.fz.hvac_user_interface,
|
|
1004
|
-
fromZigbee_1.default.electrical_measurement,
|
|
1005
|
-
fromZigbee_1.default.metering,
|
|
1006
|
-
fromZigbee_1.default.ignore_temperature_report,
|
|
1007
|
-
],
|
|
931
|
+
extend: [(0, modernExtend_1.electricityMeter)()],
|
|
932
|
+
fromZigbee: [fzLocal.thermostat, fzLocal.sinope, legacy.fz.hvac_user_interface, fromZigbee_1.default.ignore_temperature_report],
|
|
1008
933
|
toZigbee: [
|
|
1009
934
|
toZigbee_1.default.thermostat_local_temperature,
|
|
1010
935
|
toZigbee_1.default.thermostat_occupied_heating_setpoint,
|
|
@@ -1021,7 +946,6 @@ const definitions = [
|
|
|
1021
946
|
tzLocal.outdoor_temperature_timeout,
|
|
1022
947
|
tzLocal.thermostat_occupancy,
|
|
1023
948
|
tzLocal.main_cycle_output,
|
|
1024
|
-
toZigbee_1.default.electrical_measurement_power,
|
|
1025
949
|
],
|
|
1026
950
|
exposes: [
|
|
1027
951
|
e
|
|
@@ -1063,10 +987,6 @@ const definitions = [
|
|
|
1063
987
|
e.enum('backlight_auto_dim', ea.ALL, ['on_demand', 'sensing']).withDescription('Control backlight dimming behavior'),
|
|
1064
988
|
e.enum('keypad_lockout', ea.ALL, ['unlock', 'lock1']).withDescription('Enables or disables the device’s buttons'),
|
|
1065
989
|
e.enum('main_cycle_output', ea.ALL, ['15_sec', '15_min']).withDescription('The length of the control cycle: 15_sec=normal 15_min=fan'),
|
|
1066
|
-
e.power().withAccess(ea.STATE_GET),
|
|
1067
|
-
e.current(),
|
|
1068
|
-
e.voltage(),
|
|
1069
|
-
e.energy(),
|
|
1070
990
|
],
|
|
1071
991
|
configure: async (device, coordinatorEndpoint) => {
|
|
1072
992
|
const endpoint = device.getEndpoint(1);
|
|
@@ -1077,8 +997,6 @@ const definitions = [
|
|
|
1077
997
|
'hvacThermostat',
|
|
1078
998
|
'hvacUserInterfaceCfg',
|
|
1079
999
|
'msTemperatureMeasurement',
|
|
1080
|
-
'haElectricalMeasurement',
|
|
1081
|
-
'seMetering',
|
|
1082
1000
|
'manuSpecificSinope',
|
|
1083
1001
|
];
|
|
1084
1002
|
await reporting.bind(endpoint, coordinatorEndpoint, binds); // This G2 version has limited memory space
|
|
@@ -1101,12 +1019,6 @@ const definitions = [
|
|
|
1101
1019
|
reportableChange: 1,
|
|
1102
1020
|
},
|
|
1103
1021
|
]);
|
|
1104
|
-
await reporting.readMeteringMultiplierDivisor(endpoint);
|
|
1105
|
-
await reporting.currentSummDelivered(endpoint, { min: 10, max: 303, change: [1, 1] });
|
|
1106
|
-
await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
|
|
1107
|
-
await reporting.activePower(endpoint, { min: 10, max: 305, change: 1 }); // divider 1: 1W
|
|
1108
|
-
await reporting.rmsCurrent(endpoint, { min: 10, max: 306, change: 100 }); // divider 1000: 0.1Arms
|
|
1109
|
-
await reporting.rmsVoltage(endpoint, { min: 10, max: 307, change: 5 }); // divider 10: 0.5Vrms
|
|
1110
1022
|
// Disable default reporting (not used by Sinope)
|
|
1111
1023
|
await reporting.thermostatRunningState(endpoint, { min: 1, max: 0xffff });
|
|
1112
1024
|
try {
|
|
@@ -1125,14 +1037,8 @@ const definitions = [
|
|
|
1125
1037
|
whiteLabel: [
|
|
1126
1038
|
{ model: 'TH1320ZB-04', vendor: 'Sinopé', description: 'Zigbee smart floor heating thermostat', fingerprint: [{ modelID: 'TH1320ZB-04' }] },
|
|
1127
1039
|
],
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
fzLocal.sinope,
|
|
1131
|
-
legacy.fz.hvac_user_interface,
|
|
1132
|
-
fromZigbee_1.default.electrical_measurement,
|
|
1133
|
-
fromZigbee_1.default.metering,
|
|
1134
|
-
fromZigbee_1.default.ignore_temperature_report,
|
|
1135
|
-
],
|
|
1040
|
+
extend: [(0, modernExtend_1.electricityMeter)()],
|
|
1041
|
+
fromZigbee: [fzLocal.thermostat, fzLocal.sinope, legacy.fz.hvac_user_interface, fromZigbee_1.default.ignore_temperature_report],
|
|
1136
1042
|
toZigbee: [
|
|
1137
1043
|
toZigbee_1.default.thermostat_local_temperature,
|
|
1138
1044
|
toZigbee_1.default.thermostat_occupied_heating_setpoint,
|
|
@@ -1153,7 +1059,6 @@ const definitions = [
|
|
|
1153
1059
|
tzLocal.floor_min_heat_setpoint,
|
|
1154
1060
|
tzLocal.floor_max_heat_setpoint,
|
|
1155
1061
|
tzLocal.temperature_sensor,
|
|
1156
|
-
toZigbee_1.default.electrical_measurement_power,
|
|
1157
1062
|
],
|
|
1158
1063
|
exposes: [
|
|
1159
1064
|
e
|
|
@@ -1194,10 +1099,6 @@ const definitions = [
|
|
|
1194
1099
|
e.enum('time_format', ea.ALL, ['24h', '12h']).withDescription('The time format featured on the thermostat display'),
|
|
1195
1100
|
e.enum('backlight_auto_dim', ea.ALL, ['on_demand', 'sensing']).withDescription('Control backlight dimming behavior'),
|
|
1196
1101
|
e.enum('keypad_lockout', ea.ALL, ['unlock', 'lock1']).withDescription('Enables or disables the device’s buttons'),
|
|
1197
|
-
e.power().withAccess(ea.STATE_GET),
|
|
1198
|
-
e.current(),
|
|
1199
|
-
e.voltage(),
|
|
1200
|
-
e.energy(),
|
|
1201
1102
|
],
|
|
1202
1103
|
configure: async (device, coordinatorEndpoint) => {
|
|
1203
1104
|
const endpoint = device.getEndpoint(1);
|
|
@@ -1207,48 +1108,13 @@ const definitions = [
|
|
|
1207
1108
|
'genGroups',
|
|
1208
1109
|
'hvacThermostat',
|
|
1209
1110
|
'hvacUserInterfaceCfg',
|
|
1210
|
-
'haElectricalMeasurement',
|
|
1211
1111
|
'msTemperatureMeasurement',
|
|
1212
|
-
'seMetering',
|
|
1213
1112
|
'manuSpecificSinope',
|
|
1214
1113
|
];
|
|
1215
1114
|
await reporting.bind(endpoint, coordinatorEndpoint, binds);
|
|
1216
1115
|
await reporting.thermostatTemperature(endpoint);
|
|
1217
1116
|
await reporting.thermostatPIHeatingDemand(endpoint);
|
|
1218
1117
|
await reporting.thermostatOccupiedHeatingSetpoint(endpoint);
|
|
1219
|
-
try {
|
|
1220
|
-
await reporting.readMeteringMultiplierDivisor(endpoint);
|
|
1221
|
-
}
|
|
1222
|
-
catch {
|
|
1223
|
-
/* Do nothing*/
|
|
1224
|
-
}
|
|
1225
|
-
try {
|
|
1226
|
-
await reporting.currentSummDelivered(endpoint, { min: 10, max: 303, change: [1, 1] });
|
|
1227
|
-
}
|
|
1228
|
-
catch {
|
|
1229
|
-
/* Do nothing*/
|
|
1230
|
-
}
|
|
1231
|
-
try {
|
|
1232
|
-
await endpoint.read('haElectricalMeasurement', ['acPowerMultiplier', 'acPowerDivisor']);
|
|
1233
|
-
await reporting.activePower(endpoint, { min: 10, max: 305, change: 1 }); // divider 1: 1W
|
|
1234
|
-
}
|
|
1235
|
-
catch {
|
|
1236
|
-
endpoint.saveClusterAttributeKeyValue('haElectricalMeasurement', { acPowerMultiplier: 1, acPowerDivisor: 1 });
|
|
1237
|
-
}
|
|
1238
|
-
try {
|
|
1239
|
-
await endpoint.read('haElectricalMeasurement', ['acCurrentMultiplier', 'acCurrentDivisor']);
|
|
1240
|
-
await reporting.rmsCurrent(endpoint, { min: 10, max: 306, change: 100 }); // divider 1000: 0.1Arms
|
|
1241
|
-
}
|
|
1242
|
-
catch {
|
|
1243
|
-
/* Do nothing*/
|
|
1244
|
-
}
|
|
1245
|
-
try {
|
|
1246
|
-
await endpoint.read('haElectricalMeasurement', ['acVoltageMultiplier', 'acVoltageDivisor']);
|
|
1247
|
-
await reporting.rmsVoltage(endpoint, { min: 10, max: 307, change: 5 }); // divider 10: 0.5Vrms
|
|
1248
|
-
}
|
|
1249
|
-
catch {
|
|
1250
|
-
/* Do nothing*/
|
|
1251
|
-
}
|
|
1252
1118
|
try {
|
|
1253
1119
|
await reporting.thermostatKeypadLockMode(endpoint);
|
|
1254
1120
|
}
|
|
@@ -1523,9 +1389,9 @@ const definitions = [
|
|
|
1523
1389
|
model: 'SW2500ZB',
|
|
1524
1390
|
vendor: 'Sinopé',
|
|
1525
1391
|
description: 'Zigbee smart light switch',
|
|
1526
|
-
|
|
1392
|
+
extend: [(0, modernExtend_1.onOff)(), (0, modernExtend_1.electricityMeter)({ cluster: 'metering' })],
|
|
1393
|
+
fromZigbee: [fzLocal.sinope],
|
|
1527
1394
|
toZigbee: [
|
|
1528
|
-
toZigbee_1.default.on_off,
|
|
1529
1395
|
tzLocal.timer_seconds,
|
|
1530
1396
|
tzLocal.led_intensity_on,
|
|
1531
1397
|
tzLocal.led_intensity_off,
|
|
@@ -1535,7 +1401,6 @@ const definitions = [
|
|
|
1535
1401
|
tzLocal.connected_load,
|
|
1536
1402
|
],
|
|
1537
1403
|
exposes: [
|
|
1538
|
-
e.switch(),
|
|
1539
1404
|
e.action(['up_single', 'up_double', 'up_hold', 'down_single', 'down_double', 'down_hold']),
|
|
1540
1405
|
e
|
|
1541
1406
|
.numeric('timer_seconds', ea.ALL)
|
|
@@ -1570,20 +1435,11 @@ const definitions = [
|
|
|
1570
1435
|
.withDescription('Control status LED color when load OFF'),
|
|
1571
1436
|
e.enum('keypad_lockout', ea.ALL, ['unlock', 'lock']).withDescription('Enables or disables the device’s buttons'),
|
|
1572
1437
|
e.numeric('connected_load', ea.ALL).withUnit('W').withValueMin(0).withValueMax(1800).withDescription('Load connected in watt'),
|
|
1573
|
-
e.energy(),
|
|
1574
1438
|
],
|
|
1575
1439
|
configure: async (device, coordinatorEndpoint) => {
|
|
1576
1440
|
const endpoint = device.getEndpoint(1);
|
|
1577
|
-
const binds = ['
|
|
1441
|
+
const binds = ['manuSpecificSinope'];
|
|
1578
1442
|
await reporting.bind(endpoint, coordinatorEndpoint, binds);
|
|
1579
|
-
await reporting.onOff(endpoint);
|
|
1580
|
-
try {
|
|
1581
|
-
await reporting.readMeteringMultiplierDivisor(endpoint);
|
|
1582
|
-
await reporting.currentSummDelivered(endpoint, { min: 10, max: 300, change: [0, 10] });
|
|
1583
|
-
}
|
|
1584
|
-
catch {
|
|
1585
|
-
/* Do nothing*/
|
|
1586
|
-
}
|
|
1587
1443
|
const payload = [
|
|
1588
1444
|
{
|
|
1589
1445
|
attribute: 'actionReport',
|
|
@@ -1700,63 +1556,21 @@ const definitions = [
|
|
|
1700
1556
|
model: 'SP2600ZB',
|
|
1701
1557
|
vendor: 'Sinopé',
|
|
1702
1558
|
description: 'Zigbee smart plug',
|
|
1703
|
-
|
|
1704
|
-
toZigbee: [toZigbee_1.default.on_off, toZigbee_1.default.frequency],
|
|
1705
|
-
exposes: [e.switch(), e.power(), e.current(), e.voltage(), e.energy()],
|
|
1706
|
-
configure: async (device, coordinatorEndpoint) => {
|
|
1707
|
-
const endpoint = device.getEndpoint(1);
|
|
1708
|
-
const binds = ['genBasic', 'genIdentify', 'genOnOff', 'haElectricalMeasurement', 'seMetering'];
|
|
1709
|
-
await reporting.bind(endpoint, coordinatorEndpoint, binds);
|
|
1710
|
-
await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
|
|
1711
|
-
await reporting.onOff(endpoint);
|
|
1712
|
-
await reporting.activePower(endpoint, { min: 10, max: 305, change: 1 }); // divider 10 : 0.1W
|
|
1713
|
-
await reporting.rmsCurrent(endpoint, { min: 10, max: 306, change: 10 }); // divider 100: 0.1Arms
|
|
1714
|
-
await reporting.rmsVoltage(endpoint, { min: 10, max: 307, change: 10 }); // divider 100: 0.1Vrms
|
|
1715
|
-
endpoint.saveClusterAttributeKeyValue('seMetering', { divisor: 1000, multiplier: 1 });
|
|
1716
|
-
await reporting.currentSummDelivered(endpoint, { min: 10, max: 303, change: [0, 1] }); // divider 1
|
|
1717
|
-
},
|
|
1559
|
+
extend: [(0, modernExtend_1.onOff)(), (0, modernExtend_1.electricityMeter)()],
|
|
1718
1560
|
},
|
|
1719
1561
|
{
|
|
1720
1562
|
zigbeeModel: ['SP2610ZB'],
|
|
1721
1563
|
model: 'SP2610ZB',
|
|
1722
1564
|
vendor: 'Sinopé',
|
|
1723
1565
|
description: 'Zigbee smart plug',
|
|
1724
|
-
|
|
1725
|
-
toZigbee: [toZigbee_1.default.on_off, toZigbee_1.default.frequency],
|
|
1726
|
-
exposes: [e.switch(), e.power(), e.current(), e.voltage(), e.energy()],
|
|
1727
|
-
configure: async (device, coordinatorEndpoint) => {
|
|
1728
|
-
const endpoint = device.getEndpoint(1);
|
|
1729
|
-
const binds = ['genBasic', 'genIdentify', 'genOnOff', 'haElectricalMeasurement', 'seMetering'];
|
|
1730
|
-
await reporting.bind(endpoint, coordinatorEndpoint, binds);
|
|
1731
|
-
await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
|
|
1732
|
-
await reporting.onOff(endpoint);
|
|
1733
|
-
await reporting.activePower(endpoint, { min: 10, max: 305, change: 1 }); // divider 10 : 0.1W
|
|
1734
|
-
await reporting.rmsCurrent(endpoint, { min: 10, max: 306, change: 10 }); // divider 100: 0.1Arms
|
|
1735
|
-
await reporting.rmsVoltage(endpoint, { min: 10, max: 307, change: 10 }); // divider 100: 0.1Vrms
|
|
1736
|
-
endpoint.saveClusterAttributeKeyValue('seMetering', { divisor: 1000, multiplier: 1 });
|
|
1737
|
-
await reporting.currentSummDelivered(endpoint, { min: 10, max: 303, change: [0, 1] }); // divider 1
|
|
1738
|
-
},
|
|
1566
|
+
extend: [(0, modernExtend_1.onOff)(), (0, modernExtend_1.electricityMeter)()],
|
|
1739
1567
|
},
|
|
1740
1568
|
{
|
|
1741
1569
|
zigbeeModel: ['RM3250ZB'],
|
|
1742
1570
|
model: 'RM3250ZB',
|
|
1743
1571
|
vendor: 'Sinopé',
|
|
1744
1572
|
description: '50A Smart electrical load controller',
|
|
1745
|
-
|
|
1746
|
-
toZigbee: [toZigbee_1.default.on_off],
|
|
1747
|
-
exposes: [e.switch(), e.power(), e.current(), e.voltage(), e.energy()],
|
|
1748
|
-
configure: async (device, coordinatorEndpoint) => {
|
|
1749
|
-
const endpoint = device.getEndpoint(1);
|
|
1750
|
-
const binds = ['genOnOff', 'haElectricalMeasurement', 'seMetering'];
|
|
1751
|
-
await reporting.bind(endpoint, coordinatorEndpoint, binds);
|
|
1752
|
-
await reporting.onOff(endpoint);
|
|
1753
|
-
await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
|
|
1754
|
-
await reporting.activePower(endpoint);
|
|
1755
|
-
await reporting.rmsCurrent(endpoint);
|
|
1756
|
-
await reporting.rmsVoltage(endpoint);
|
|
1757
|
-
await reporting.readMeteringMultiplierDivisor(endpoint);
|
|
1758
|
-
await reporting.currentSummDelivered(endpoint);
|
|
1759
|
-
},
|
|
1573
|
+
extend: [(0, modernExtend_1.onOff)(), (0, modernExtend_1.electricityMeter)()],
|
|
1760
1574
|
},
|
|
1761
1575
|
{
|
|
1762
1576
|
zigbeeModel: ['WL4200'],
|