zigbee-herdsman-converters
Version:
Collection of device converters to be used with zigbee-herdsman
849 lines • 42.5 kB
JavaScript
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.definitions = void 0;
const exposes = __importStar(require("../lib/exposes"));
const m = __importStar(require("../lib/modernExtend"));
const tuya = __importStar(require("../lib/tuya"));
const e = exposes.presets;
const ea = exposes.access;
const te = tuya.exposes;
exports.definitions = [
{
fingerprint: [{ modelID: "TS0601", manufacturerName: "_TZE284_ajhu0zqb" }],
model: "SZW08",
vendor: "Lincukoo",
description: "Smart water leakage/lack alarm sensor",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.enum("alarm_status", ea.STATE, ["normal", "alarm"]).withDescription("device alarm status"),
e.enum("mode", ea.STATE_SET, ["leakage", "shortage"]).withDescription("work mode of the alarm"),
e.enum("alarm_ringtone", ea.STATE_SET, ["mute", "ring1", "ring2", "ring3"]).withDescription("Ringtone of the alarm"),
e.battery(),
],
meta: {
tuyaDatapoints: [
[],
[],
[
103,
"alarm_ringtone",
tuya.valueConverterBasic.lookup({ mute: tuya.enum(0), ring1: tuya.enum(1), ring2: tuya.enum(2), ring3: tuya.enum(3) }),
],
[],
],
},
},
{
fingerprint: [{ modelID: "TS0601", manufacturerName: "_TZE204_lw5ny7tp" }],
model: "SZLR08",
vendor: "Lincukoo",
description: "24GHz millimeter wave radar",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.presence(),
e
.numeric("detection_distance", ea.STATE)
.withValueMin(0)
.withValueMax(1000)
.withValueStep(1)
.withDescription("Distance of detected person")
.withUnit("cm"),
e.illuminance(),
e
.numeric("installation_height", ea.STATE_SET)
.withValueMin(1.5)
.withValueMax(6)
.withValueStep(0.75)
.withUnit("m")
.withDescription("Maximum range"),
e
.numeric("radar_sensitivity", ea.STATE_SET)
.withValueMin(68)
.withValueMax(90)
.withValueStep(1)
.withDescription("Sensitivity of the radar"),
e.numeric("fading_time", ea.STATE_SET).withValueMin(3).withValueMax(1799).withValueStep(1).withDescription("Fading time").withUnit("s"),
e.binary("relay_switch", ea.STATE_SET, "ON", "OFF").withDescription("Relay switch"),
e.binary("radar_switch", ea.STATE_SET, "ON", "OFF").withDescription("Radar switch"),
e.binary("indicator", ea.STATE_SET, "ON", "OFF").withDescription("LED indicator"),
e.enum("relay_mode", ea.STATE_SET, ["auto", "manual"]).withDescription("control mode of the relay"),
e.enum("radar_mode", ea.STATE_SET, ["people_on", "people_off"]).withDescription("radar mode for the relay controlling"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[],
[],
[],
[],
[], // toggle to enable presence notifications in app is ignored
[],
[],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_9ovska9w", "_TZE284_bquwrqh1"]),
model: "SZLM04U",
vendor: "Lincukoo",
description: "Motion and brightness sensor",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.occupancy(),
e.illuminance(),
e.battery(),
e.binary("usb_power", ea.STATE, "ON", "OFF").withDescription("check usb power plug in or not"),
e.binary("switch", ea.STATE, "ON", "OFF").withDescription("enable or disable the sensor"),
e.numeric("fading_time", ea.STATE_SET).withValueMin(5).withValueMax(300).withValueStep(1).withDescription("Fading time").withUnit("s"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[],
[],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_sndkanfr", "_TZE204_bjf8qum1", "_TZE284_sndkanfr"]),
model: "SZLMR10",
vendor: "Lincukoo",
description: "Human Motion & Presence Sensor",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.presence(),
e.illuminance(),
e
.numeric("detection_distance", ea.STATE_SET)
.withValueMin(3)
.withValueMax(6)
.withValueStep(1.5)
.withUnit("m")
.withDescription("Maximum range"),
e.numeric("radar_sensitivity", ea.STATE_SET).withValueMin(0).withValueMax(9).withValueStep(1).withDescription("Sensitivity of the radar"),
e.numeric("fading_time", ea.STATE_SET).withValueMin(30).withValueMax(300).withValueStep(1).withDescription("Fading time").withUnit("s"),
e.binary("radar_switch", ea.STATE_SET, "ON", "OFF").withDescription("Radar switch"),
e.binary("indicator", ea.STATE_SET, "ON", "OFF").withDescription("LED indicator"),
e.enum("work_mode", ea.STATE_SET, ["pir_mode", "radar_mode", "combine_mode"]).withDescription("work mode of device"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[],
[],
[],
[],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_gw05grph", "_TZE284_chcnj5st", "_TZE284_pislt0wa"]),
model: "CZF02",
vendor: "Lincukoo",
description: "Finger Robot", //fingerbot
extend: [tuya.modernExtend.tuyaBase({ dp: true, queryOnConfigure: true })],
whiteLabel: [
tuya.whitelabel("Sygonix", "SY-6811314", "Zigbee Smart button/switch Pusher", ["_TZE284_chcnj5st"]),
tuya.whitelabel("Nous", "C2", "Button/switch pusher", ["_TZE284_pislt0wa"]),
],
exposes: [
te.switch(),
e
.enum("switch_states", ea.STATE_SET, ["SWITCH"])
.withDescription("Changes the displayed state to the opposite state")
.withCategory("config"),
e
.enum("mode", ea.STATE_SET, ["button", "switch"])
.withDescription("Work mode of the finger robot. Button: press and release, Switch: press")
.withCategory("config"),
e
.numeric("button_hold_duration", ea.STATE_SET)
.withValueMin(0.3)
.withValueMax(10)
.withValueStep(0.1)
.withDescription("Sets the press duration for button mode")
.withUnit("s")
.withCategory("config"),
e
.enum("auto_adjustment", ea.STATE_SET, ["START"])
.withDescription("Auto select the end position. Slowly lower the arm until it fully presses the button, and save the result")
.withCategory("config"),
e
.numeric("arm_start_position", ea.STATE_SET)
.withValueMin(0)
.withValueMax(30)
.withValueStep(1)
.withDescription("Sets arm position when idle")
.withCategory("config"),
e
.numeric("arm_end_position", ea.STATE_SET)
.withValueMin(0)
.withValueMax(30)
.withValueStep(1)
.withDescription("Sets arm position when fully pressed")
.withCategory("config"),
e.battery(),
],
meta: {
tuyaDatapoints: [
[],
[],
[], // springback_time
[], // initial_percent
[], // end_percent
[],
[], // auto
[], // switching_display_status
],
},
},
{
fingerprint: [{ modelID: "SZT06", manufacturerName: "LINCUKOO" }],
model: "SZT06",
vendor: "Lincukoo",
description: "Smart mini temperature and humidity sensor",
extend: [m.temperature(), m.humidity(), m.identify({ isSleepy: true }), m.battery({ voltage: true })],
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_rs62zxk8", "_TZE284_4dosadbh", "_TZE284_mpzuabwk"]),
model: "SZT04",
vendor: "Lincukoo",
description: "Temperature and humidity sensor with clock",
extend: [tuya.modernExtend.tuyaBase({ dp: true, forceTimeUpdates: true, timeStart: "1970" })],
exposes: [
e.temperature(),
e.humidity(),
e.battery(),
e.enum("temperature_unit_convert", ea.STATE_SET, ["celsius", "fahrenheit"]).withDescription("Current display unit"),
e.enum("temperature_alarm", ea.STATE, ["canceled", "lower_alarm", "upper_alarm"]).withDescription("Temperature alarm status"),
e.numeric("max_temperature", ea.STATE_SET).withUnit("°C").withValueMin(-20).withValueMax(60).withDescription("Alarm temperature max"),
e.numeric("min_temperature", ea.STATE_SET).withUnit("°C").withValueMin(-20).withValueMax(60).withDescription("Alarm temperature min"),
e
.numeric("temperature_sensitivity", ea.STATE_SET)
.withUnit("°C")
.withValueMin(0.3)
.withValueMax(5)
.withValueStep(0.1)
.withDescription("Temperature sensitivity"),
e.enum("humidity_alarm", ea.STATE, ["canceled", "lower_alarm", "upper_alarm"]).withDescription("Humidity alarm status"),
e.numeric("max_humidity", ea.STATE_SET).withUnit("%").withValueMin(0).withValueMax(100).withDescription("Alarm humidity max"),
e.numeric("min_humidity", ea.STATE_SET).withUnit("%").withValueMin(0).withValueMax(100).withDescription("Alarm humidity min"),
e
.numeric("humidity_sensitivity", ea.STATE_SET)
.withUnit("%")
.withValueMin(1)
.withValueMax(100)
.withValueStep(1)
.withDescription("Humidity sensitivity"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[
14,
"temperature_alarm",
tuya.valueConverterBasic.lookup({ canceled: tuya.enum(0), lower_alarm: tuya.enum(1), upper_alarm: tuya.enum(2) }),
],
[],
[],
[],
[
15,
"humidity_alarm",
tuya.valueConverterBasic.lookup({ canceled: tuya.enum(0), lower_alarm: tuya.enum(1), upper_alarm: tuya.enum(2) }),
],
[],
[],
[],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_khoqss0a"]),
model: "SZR07",
vendor: "Lincukoo",
description: "24GHz millimeter wave radar",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.presence(),
e.illuminance(),
e
.numeric("detection_distance", ea.STATE_SET)
.withValueMin(3)
.withValueMax(6)
.withValueStep(1.5)
.withUnit("m")
.withDescription("Maximum range"),
e.numeric("radar_sensitivity", ea.STATE_SET).withValueMin(0).withValueMax(9).withValueStep(1).withDescription("Sensitivity of the radar"),
e.numeric("fading_time", ea.STATE_SET).withValueMin(5).withValueMax(300).withValueStep(1).withDescription("Fading time").withUnit("s"),
e.binary("radar_switch", ea.STATE_SET, "ON", "OFF").withDescription("Radar switch"),
e.binary("indicator", ea.STATE_SET, "ON", "OFF").withDescription("LED indicator"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[],
[], // toggle to enable presence notifications in app is ignored
[],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_b8vxct9l"]),
model: "SZLR08T",
vendor: "Lincukoo",
description: "24GHz millimeter wave radar",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.presence(),
e.illuminance(),
e
.numeric("installation_height", ea.STATE_SET)
.withValueMin(3)
.withValueMax(5)
.withValueStep(1)
.withUnit("m")
.withDescription("Maximum range"),
e.numeric("radar_sensitivity", ea.STATE_SET).withValueMin(0).withValueMax(9).withValueStep(1).withDescription("Sensitivity of the radar"),
e.numeric("fading_time", ea.STATE_SET).withValueMin(5).withValueMax(300).withValueStep(1).withDescription("Fading time").withUnit("s"),
e.binary("radar_switch", ea.STATE_SET, "ON", "OFF").withDescription("Radar switch"),
e.binary("indicator", ea.STATE_SET, "ON", "OFF").withDescription("LED indicator"),
e.binary("relay_switch", ea.STATE_SET, "ON", "OFF").withDescription("Relay switch"),
e.enum("relay_mode", ea.STATE_SET, ["auto", "manual"]).withDescription("control mode of the relay"),
e.enum("radar_mode", ea.STATE_SET, ["people_on", "people_off"]).withDescription("radar mode for the relay controlling"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[],
[], // toggle to enable presence notifications in app is ignored
[],
[],
[],
[],
],
},
},
{
zigbeeModel: ["CZB01"],
model: "CZB01",
vendor: "Lincukoo",
description: "Wireless switch with 1 button",
extend: [m.battery(), m.commandsOnOff()],
},
{
zigbeeModel: ["G91E-ZH", "G94E"],
model: "G91E-ZH",
vendor: "Lincukoo",
description: "Zigbee Router",
extend: [],
whiteLabel: [{ fingerprint: [{ modelID: "G94E" }], vendor: "Lincukoo", model: "G94E" }],
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_vbgmewta", "_TZE284_iunyuzwe"]),
model: "W04-Z10T",
vendor: "Lincukoo",
description: "Smart water leakage alarm sensor",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: (device) => {
const exps = [
e.enum("alarm_status", ea.STATE, ["normal", "alarm"]).withDescription("device alarm status"),
e.enum("alarm_switch", ea.STATE_SET, ["mute", "alarm"]).withDescription("switch of the alarm"),
];
if (["_TZE284_iunyuzwe"].includes(device.manufacturerName)) {
exps.push(e.enum("battery_state", ea.STATE, ["low", "middle", "high"]).withDescription("battery state of the sensor"));
}
else {
exps.push(e.enum("alarm_ringtone", ea.STATE_SET, ["ring1", "ring2", "ring3"]).withDescription("Ringtone of the alarm"));
exps.push(e.battery());
}
return exps;
},
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[],
],
},
whiteLabel: [tuya.whitelabel("Lincukoo", "W10-Z10T", "Smart water leakage alarm sensor", ["_TZE284_iunyuzwe"])],
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_aghfucwi", "_TZE284_2qx7sivb", "_TZE284_8sejxcue", "_TZE284_7trh4ihp"]),
model: "TS0601_vibration_alarm_sensor",
vendor: "Tuya",
description: "Vibration alarm sensor",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: (device) => {
const exps = [
e.enum("alarm_status", ea.STATE, ["normal", "alarm"]).withDescription("device alarm status"),
e.enum("sensitivity", ea.STATE_SET, ["low", "middle", "high"]).withDescription("Sensitivity of the sensor"),
];
if (["_TZE284_2qx7sivb"].includes(device.manufacturerName)) {
exps.push(e.enum("battery_state", ea.STATE, ["low", "middle", "high"]).withDescription("battery state of the sensor"));
}
else if (["_TZE284_aghfucwi"].includes(device.manufacturerName)) {
exps.push(e.enum("disarm", ea.STATE_SET, ["normal"]).withDescription("Disarm the current alarm"), e.binary("silence_mode", ea.STATE_SET, "ON", "OFF").withDescription("enable/disable alarm"), e.battery());
}
else {
exps.push(e.enum("disarm", ea.STATE_SET, ["normal"]).withDescription("Disarm the current alarm"), e.binary("silence_mode", ea.STATE_SET, "ON", "OFF").withDescription("enable/disable alarm"), e.enum("battery_state", ea.STATE, ["low", "middle", "high"]).withDescription("battery state of the sensor"));
}
return exps;
},
meta: {
tuyaDatapoints: [
[], // shake_state
[],
[],
[],
[], // turn_off_the_current_alarm_sound
[], // mute_mode
],
},
whiteLabel: [
tuya.whitelabel("Lincukoo", "V04-Z10T", "Vibration alarm sensor", ["_TZE284_aghfucwi"]),
tuya.whitelabel("Lincukoo", "V06-Z10T", "Mini vibration sensor", ["_TZE284_2qx7sivb"]),
{ vendor: "Lincukoo", model: "V04-Z20T" },
{ vendor: "Nous", model: "E14" },
],
},
{
zigbeeModel: ["Zigbee-Repeater"],
model: "GEZ65",
vendor: "Lincukoo",
description: "Zigbee Repeater",
extend: [],
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_hqys6frs"]),
model: "R12LM-Z10T",
vendor: "Lincukoo",
description: "Human motion & presence sensor",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.presence(),
e.illuminance(),
e.enum("work_mode", ea.STATE_SET, ["radar_mode", "combine_mode"]).withDescription("work mode of device"),
e.binary("radar_switch", ea.STATE_SET, "ON", "OFF").withDescription("Radar switch"),
e.numeric("fading_time", ea.STATE_SET).withValueMin(5).withValueMax(60).withValueStep(5).withDescription("Fading time").withUnit("s"),
e
.numeric("detection_distance", ea.STATE_SET)
.withValueMin(3)
.withValueMax(9)
.withValueStep(1.5)
.withUnit("m")
.withDescription("Maximum range"),
e.numeric("radar_sensitivity", ea.STATE_SET).withValueMin(0).withValueMax(4).withValueStep(1).withDescription("Sensitivity of the radar"),
e.enum("battery_state", ea.STATE, ["low", "middle", "high", "usb"]).withDescription("battery state of the sensor"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[],
[],
[],
[
108,
"battery_state",
tuya.valueConverterBasic.lookup({ low: tuya.enum(0), middle: tuya.enum(1), high: tuya.enum(2), usb: tuya.enum(3) }),
],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_hyt4iucb"]),
model: "E02C-Z10T",
vendor: "Lincukoo",
description: "Smart air quality monitor (CO2)",
extend: [tuya.modernExtend.tuyaBase({ dp: true, forceTimeUpdates: true, timeStart: "1970" })],
exposes: [
e.temperature(),
e.humidity(),
e.co2(),
e.battery(),
e.enum("temperature_unit_convert", ea.STATE_SET, ["celsius", "fahrenheit"]).withDescription("Current display unit"),
e.binary("alarm_switch", ea.STATE_SET, "ON", "OFF").withDescription("alarm switch"),
e.enum("charge_status", ea.STATE, ["none", "charging"]).withDescription("usb charging status"),
e.enum("reset_co2", ea.STATE_SET, ["reset_co2"]).withDescription("reset the CO2"),
e
.enum("screen_sleep", ea.STATE_SET, [
"after_30s",
"after_1minute",
"after_2minutes",
"after_5minutes",
"after_10minutes",
"never_sleep",
])
.withDescription("Humidity alarm status"),
e
.numeric("co2_alarm_value", ea.STATE_SET)
.withUnit("ppm")
.withValueMin(1000)
.withValueMax(10000)
.withValueStep(100)
.withDescription("CO2 alarm value"),
e.binary("co2_alarm", ea.STATE, "ON", "OFF").withDescription("CO2 alarm"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[],
[],
[],
[],
[
105,
"screen_sleep",
tuya.valueConverterBasic.lookup({
after_30s: tuya.enum(0),
after_1minute: tuya.enum(1),
after_2minutes: tuya.enum(2),
after_5minutes: tuya.enum(3),
after_10minutes: tuya.enum(4),
never_sleep: tuya.enum(5),
}),
],
[],
[],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_isvlaage"]),
model: "EZC04",
vendor: "Lincukoo",
description: "Smart air quality monitor (CO2)",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.co2(),
e.temperature(),
e.humidity(),
e.enum("temperature_unit_convert", ea.STATE_SET, ["celsius", "fahrenheit"]).withDescription("Current display unit"),
e
.numeric("co2_alarm_value", ea.STATE_SET)
.withUnit("ppm")
.withValueMin(1000)
.withValueMax(10000)
.withValueStep(100)
.withDescription("CO2 alarm value"),
e.enum("alarm_ringtone", ea.STATE_SET, ["ringtone_0", "ringtone_1", "ringtone_2", "ringtone_3"]).withDescription("alarm_ringtone"),
e.enum("co2_state", ea.STATE, ["alarm", "normal"]).withDescription("CO2 alarm status"),
e.enum("reset_co2", ea.STATE_SET, ["reset_co2"]).withDescription("reset the CO2"),
],
meta: {
tuyaDatapoints: [
[],
[],
[
6,
"alarm_ringtone",
tuya.valueConverterBasic.lookup({
ringtone_0: tuya.enum(0),
ringtone_1: tuya.enum(1),
ringtone_2: tuya.enum(2),
ringtone_3: tuya.enum(3),
}),
],
[],
[],
[],
[],
[],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_fpwtjlfh"]),
model: "EZCP04",
vendor: "Lincukoo",
description: "Smart air quality monitor (CO2+PM2.5)",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.co2(),
e.pm25(),
e.temperature(),
e.humidity(),
e.enum("temperature_unit_convert", ea.STATE_SET, ["celsius", "fahrenheit"]).withDescription("Current display unit"),
e
.numeric("co2_alarm_value", ea.STATE_SET)
.withUnit("ppm")
.withValueMin(1000)
.withValueMax(10000)
.withValueStep(100)
.withDescription("CO2 alarm value"),
e
.numeric("pm25_alarm_value", ea.STATE_SET)
.withUnit("ug/m3")
.withValueMin(10)
.withValueMax(1000)
.withValueStep(10)
.withDescription("PM2.5 alarm value"),
e.enum("alarm_ringtone", ea.STATE_SET, ["mute", "ringtone_1", "ringtone_2", "ringtone_3"]).withDescription("alarm_ringtone"),
e.enum("alarm_state", ea.STATE, ["normal", "alarm_co2", "alarm_pm25"]).withDescription("alarm status"),
],
meta: {
tuyaDatapoints: [
[],
[],
[
6,
"alarm_ringtone",
tuya.valueConverterBasic.lookup({
mute: tuya.enum(0),
ringtone_1: tuya.enum(1),
ringtone_2: tuya.enum(2),
ringtone_3: tuya.enum(3),
}),
],
[],
[],
[],
[],
[],
[],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_ra9zfiwr"]),
model: "E04CF-Z10T",
vendor: "Lincukoo",
description: "Smart gas and CO sensor",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.numeric("gas", ea.STATE).withUnit("%LEL").withValueMin(0).withValueMax(20).withDescription("Current Gas Value"),
e.co(),
e
.numeric("set_max_gas_alarm", ea.STATE_SET)
.withUnit("%LEL")
.withValueMin(0.1)
.withValueMax(20)
.withValueStep(0.1)
.withDescription("Gas alarm value"),
e
.numeric("set_max_co_alarm", ea.STATE_SET)
.withUnit("ppm")
.withValueMin(10)
.withValueMax(1000)
.withValueStep(10)
.withDescription("CO alarm value"),
e.enum("gas_sensor_state", ea.STATE, ["normal", "alarm"]).withDescription("Gas alarm status"),
e.enum("co_state", ea.STATE, ["normal", "alarm"]).withDescription("CO alarm status"),
e.binary("self_checking", ea.STATE_SET, "ON", "OFF").withDescription("self checking"),
e.enum("checking_result", ea.STATE, ["checking", "check_success", "check_failure", "others"]).withDescription("checking result"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[
9,
"checking_result",
tuya.valueConverterBasic.lookup({
checking: tuya.enum(0),
check_success: tuya.enum(1),
check_failure: tuya.enum(2),
others: tuya.enum(3),
}),
],
[],
[],
[],
[],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_l4daccga"]),
model: "A08-Z10T",
vendor: "Lincukoo",
description: "Smart sound and flash siren",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.enum("alarm_state", ea.STATE_SET, ["alarm_sound", "alarm_light", "alarm_sound_light", "normal"]).withDescription("alarm status"),
e.enum("alarm_volume", ea.STATE_SET, ["low", "middle", "high", "mute"]).withDescription("alarm volume"),
e.numeric("alarm_time", ea.STATE_SET).withUnit("times").withValueMin(0).withValueMax(100).withValueStep(1).withDescription("alarm times"),
e.binary("mute", ea.STATE_SET, "ON", "OFF").withDescription("mute"),
e
.enum("alarm_ringtone", ea.STATE_SET, [
"ringtone_1",
"ringtone_2",
"ringtone_3",
"ringtone_4",
"ringtone_5",
"ringtone_6",
"ringtone_7",
"ringtone_8",
"ringtone_9",
"ringtone_10",
"ringtone_11",
"ringtone_12",
"ringtone_13",
"ringtone_14",
"ringtone_15",
"ringtone_16",
"ringtone_17",
"ringtone_18",
"ringtone_19",
"ringtone_20",
"ringtone_21",
"ringtone_22",
"ringtone_23",
"ringtone_24",
"ringtone_25",
"ringtone_26",
"ringtone_27",
])
.withDescription("alarm ringtone"),
],
meta: {
tuyaDatapoints: [
[],
[
5,
"alarm_volume",
tuya.valueConverterBasic.lookup({ low: tuya.enum(0), middle: tuya.enum(1), high: tuya.enum(2), mute: tuya.enum(3) }),
],
[],
[],
[
21,
"alarm_ringtone",
tuya.valueConverterBasic.lookup({
ringtone_1: tuya.enum(0),
ringtone_2: tuya.enum(1),
ringtone_3: tuya.enum(2),
ringtone_4: tuya.enum(3),
ringtone_5: tuya.enum(4),
ringtone_6: tuya.enum(5),
ringtone_7: tuya.enum(6),
ringtone_8: tuya.enum(7),
ringtone_9: tuya.enum(8),
ringtone_10: tuya.enum(9),
ringtone_11: tuya.enum(10),
ringtone_12: tuya.enum(11),
ringtone_13: tuya.enum(12),
ringtone_14: tuya.enum(13),
ringtone_15: tuya.enum(14),
ringtone_16: tuya.enum(15),
ringtone_17: tuya.enum(16),
ringtone_18: tuya.enum(17),
ringtone_19: tuya.enum(18),
ringtone_20: tuya.enum(19),
ringtone_21: tuya.enum(20),
ringtone_22: tuya.enum(21),
ringtone_23: tuya.enum(22),
ringtone_24: tuya.enum(23),
ringtone_25: tuya.enum(24),
ringtone_26: tuya.enum(25),
ringtone_27: tuya.enum(26),
}),
],
],
},
},
{
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_zzm83zpz"]),
model: "R12LM-Z11T",
vendor: "Lincukoo",
description: "Human motion & presence sensor",
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
exposes: [
e.enum("scan_environment", ea.STATE_SET, ["start"]).withDescription("Set no one environment"),
e
.enum("scan_result", ea.STATE, ["normal", "scanning", "scan_success", "scan_failure", "scan_start"])
.withDescription("Environment scan result"),
e.enum("mode", ea.STATE_SET, ["radar_mode", "fusion_mode"]).withDescription("Device mode"),
e.presence(),
e.illuminance(),
e.binary("radar_switch", ea.STATE_SET, "ON", "OFF").withDescription("Radar switch"),
e
.numeric("set_detection_distance", ea.STATE_SET)
.withValueMin(3)
.withValueMax(9)
.withValueStep(1.5)
.withUnit("m")
.withDescription("Detection distance"),
e.enum("battery_state", ea.STATE, ["low", "middle", "high", "USB"]).withDescription("Battery status"),
e.binary("switch_night_light", ea.STATE_SET, "ON", "OFF").withDescription("Night light switch"),
],
meta: {
tuyaDatapoints: [
[],
[],
[],
[],
[],
[],
[],
[
108,
"battery_state",
tuya.valueConverterBasic.lookup({ low: tuya.enum(0), middle: tuya.enum(1), high: tuya.enum(2), USB: tuya.enum(3) }),
],
[],
],
},
},
];
//# sourceMappingURL=lincukoo.js.map