diff --git a/src/devices/tuya.js b/src/devices/tuya.js index 427f3105ab988..b58693664f673 100644 --- a/src/devices/tuya.js +++ b/src/devices/tuya.js @@ -3330,8 +3330,7 @@ module.exports = [ }, { zigbeeModel: ['5p1vj8r'], - fingerprint: tuya.fingerprint('TS0601', ['_TZE200_t5p1vj8r', '_TZE200_uebojraa', '_TZE200_vzekyi4c', '_TZE200_yh7aoahi', - '_TZE200_dnz6yvl2', '_TZE200_dq1mfjug']), + fingerprint: tuya.fingerprint('TS0601', ['_TZE200_t5p1vj8r', '_TZE200_uebojraa', '_TZE200_vzekyi4c', '_TZE200_yh7aoahi', '_TZE200_dq1mfjug']), model: 'TS0601_smoke_4', vendor: 'TuYa', description: 'Smoke sensor', @@ -3367,6 +3366,29 @@ module.exports = [ ], }, }, + { + fingerprint: tuya.fingerprint('TS0601', ['_TZE200_e2bedvo9', '_TZE200_dnz6yvl2']), + model: 'ZSS-QY-SSD-A-EN', + vendor: 'TuYa', + description: 'Smart smoke alarm', + fromZigbee: [tuya.fz.datapoints], + toZigbee: [tuya.tz.datapoints], + onEvent: tuya.onEventSetTime, + configure: tuya.configureMagicPacket, + exposes: [e.smoke(), tuya.exposes.faultAlarm(), tuya.exposes.batteryState(), e.battery(), tuya.exposes.silence(), tuya.exposes.selfTest(), + exposes.numeric('smoke_concentration', ea.STATE).withUnit('ppm').withDescription('Parts per million of smoke detected')], + meta: { + tuyaDatapoints: [ + [1, 'smoke', tuya.valueConverter.trueFalse0], + [2, 'smoke_concentration', tuya.valueConverter.divideBy10], + [11, 'fault_alarm', tuya.valueConverter.trueFalse1], + [14, 'battery_state', tuya.valueConverter.batteryState], + [15, 'battery', tuya.valueConverter.raw], + [16, 'silence', tuya.valueConverter.raw], + [17, 'self_test', tuya.valueConverter.raw], + ], + }, + }, { fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_5d3vhjro'}], model: 'SA12IZL',