Update Winner_ZigBee_dev.js

added local converter instead of messing with herdsman libs
This commit is contained in:
nikzori
2024-07-01 15:52:51 +03:00
committed by GitHub
parent a838f1b852
commit 62172b36e5

View File

@@ -9,7 +9,24 @@ const tuya = require('zigbee-herdsman-converters/lib/tuya');
const exp = require('constants');
const { Numeric } = require('zigbee-herdsman-converters/lib/exposes');
const { Binary } = require('zigbee-herdsman-converters/lib/exposes');
const { default: converters } = require('zigbee-herdsman-converters/converters/fromZigbee');
const convLocal = {
gidrolockWinnerSensor: {
from: (v) => {
return {
signal: (v & 0x00_00_00_FF),
battery: (v & 0x00_00_FF_00),
isOnline: (Boolean)(v & 0b00000000_00000010_00000000_00000000),
leakDetected: (Boolean)(v & 0b00000000_00000100_00000000_00000000),
ignoreLeaks: (Boolean)(v & 0b00000000_00001000_00000000_00000000),
securityMode: (Boolean)(v & 0b00000000_00010000_00000000_00000000),
statusBatterySignal: (Boolean)(v & 0b00000000_00100000_00000000_00000000)
}
}
}
}
const tzDatapoints = {
...tuya.tz.datapoints,
@@ -220,100 +237,100 @@ const definition = {
[106, 'channel_2', tuya.valueConverter.raw],
//#region Sensors DPs
[107, 'sensor_1', tuya.valueConverter.gidrolockWinnerSensor],
[107, 'sensor_1', convLocal.gidrolockWinnerSensor],
[108, 'sensor_name_1', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[109, 'sensor_2', tuya.valueConverter.gidrolockWinnerSensor],
[109, 'sensor_2', convLocal.gidrolockWinnerSensor],
[110, 'sensor_name_2', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[111, 'sensor_3', tuya.valueConverter.raw],
[111, 'sensor_3', convLocal.gidrolockWinnerSensor],
[112, 'sensor_name_3', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[113, 'sensor_4', tuya.valueConverter.raw],
[113, 'sensor_4', convLocal.gidrolockWinnerSensor],
[114, 'sensor_name_4', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[115, 'sensor_5', tuya.valueConverter.raw],
[115, 'sensor_5', convLocal.gidrolockWinnerSensor],
[116, 'sensor_name_5', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[117, 'sensor_6', tuya.valueConverter.raw],
[117, 'sensor_6', convLocal.gidrolockWinnerSensor],
[118, 'sensor_name_6', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[119, 'sensor_7', tuya.valueConverter.raw],
[119, 'sensor_7', convLocal.gidrolockWinnerSensor],
[120, 'sensor_name_7', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[121, 'sensor_8', tuya.valueConverter.raw],
[121, 'sensor_8', convLocal.gidrolockWinnerSensor],
[122, 'sensor_name_8', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[123, 'sensor_9', tuya.valueConverter.raw],
[123, 'sensor_9', convLocal.gidrolockWinnerSensor],
[124, 'sensor_name_9', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[125, 'sensor_10', tuya.valueConverter.raw],
[125, 'sensor_10', convLocal.gidrolockWinnerSensor],
[126, 'sensor_name_10', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[127, 'sensor_11', tuya.valueConverter.raw],
[127, 'sensor_11', convLocal.gidrolockWinnerSensor],
[128, 'sensor_name_11', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[129, 'sensor_12', tuya.valueConverter.raw],
[129, 'sensor_12', convLocal.gidrolockWinnerSensor],
[130, 'sensor_name_12', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[131, 'sensor_13', tuya.valueConverter.raw],
[131, 'sensor_13', convLocal.gidrolockWinnerSensor],
[132, 'sensor_name_13', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[133, 'sensor_14', tuya.valueConverter.raw],
[133, 'sensor_14', convLocal.gidrolockWinnerSensor],
[134, 'sensor_name_14', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[135, 'sensor_15', tuya.valueConverter.raw],
[135, 'sensor_15', convLocal.gidrolockWinnerSensor],
[136, 'sensor_name_15', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[137, 'sensor_16', tuya.valueConverter.raw],
[137, 'sensor_16', convLocal.gidrolockWinnerSensor],
[138, 'sensor_name_16', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[139, 'sensor_17', tuya.valueConverter.raw],
[139, 'sensor_17', convLocal.gidrolockWinnerSensor],
[140, 'sensor_name_17', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[141, 'sensor_18', tuya.valueConverter.raw],
[141, 'sensor_18', convLocal.gidrolockWinnerSensor],
[142, 'sensor_name_18', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[143, 'sensor_19', tuya.valueConverter.raw],
[143, 'sensor_19', convLocal.gidrolockWinnerSensor],
[144, 'sensor_name_19', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[145, 'sensor_20', tuya.valueConverter.raw],
[145, 'sensor_20', convLocal.gidrolockWinnerSensor],
[146, 'sensor_name_20', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[147, 'sensor_21', tuya.valueConverter.raw],
[147, 'sensor_21', convLocal.gidrolockWinnerSensor],
[148, 'sensor_name_21', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[149, 'sensor_22', tuya.valueConverter.raw],
[149, 'sensor_22', convLocal.gidrolockWinnerSensor],
[150, 'sensor_name_22', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[151, 'sensor_23', tuya.valueConverter.raw],
[151, 'sensor_23', convLocal.gidrolockWinnerSensor],
[152, 'sensor_name_23', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[153, 'sensor_24', tuya.valueConverter.raw],
[153, 'sensor_24', convLocal.gidrolockWinnerSensor],
[154, 'sensor_name_24', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[155, 'sensor_25', tuya.valueConverter.raw],
[155, 'sensor_25', convLocal.gidrolockWinnerSensor],
[156, 'sensor_name_25', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[157, 'sensor_26', tuya.valueConverter.raw],
[157, 'sensor_26', convLocal.gidrolockWinnerSensor],
[158, 'sensor_name_26', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[159, 'sensor_27', tuya.valueConverter.raw],
[159, 'sensor_27', convLocal.gidrolockWinnerSensor],
[160, 'sensor_name_27', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[161, 'sensor_28', tuya.valueConverter.raw],
[161, 'sensor_28', convLocal.gidrolockWinnerSensor],
[162, 'sensor_name_28', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[163, 'sensor_29', tuya.valueConverter.raw],
[163, 'sensor_29', convLocal.gidrolockWinnerSensor],
[164, 'sensor_name_29', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[165, 'sensor_30', tuya.valueConverter.raw],
[165, 'sensor_30', convLocal.gidrolockWinnerSensor],
[166, 'sensor_name_30', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[167, 'sensor_31', tuya.valueConverter.raw],
[167, 'sensor_31', convLocal.gidrolockWinnerSensor],
[168, 'sensor_name_31', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
[169, 'sensor_32', tuya.valueConverter.raw],
[169, 'sensor_32', convLocal.gidrolockWinnerSensor],
[170, 'sensor_name_32', tuya.valueConverterBasic.lookup({'single': 0, 'double': 1, 'hold': 2})],
//#endregion
],