Skip to content

[External Converter]: TS0601 from _TZE204_wc2w9t1sΒ #29535

@engabd11

Description

@engabd11

Link

https://www.aliexpress.com/item/1005006655059249.html?src=google&albch=search&acnt=479-062-3723&isdl=y&aff_short_key=UneMJZVf&albcp=23163377508&albag=187383838317&slnk=301763830928&trgt=dsa-2501419016287&plac=&crea=780559989106&albad=780559989106&netw=g&device=c&mtctp=&memo1=&albbt=Google_7_search&aff_platform=google&albagn=888888&isSmbActive=false&isSmbAutoCall=false&needSmbHouyi=false&gad_source=1&gad_campaignid=23163377508&gclid=CjwKCAiA8bvIBhBJEiwAu5ayrKNb7yOO1vaeccyaaP1O2MwTLXlVrN-v06RfFiVdXXWCZFz76qPkXhoC3l4QAvD_BwE

Database entry

N/A

Zigbee2MQTT version

2.6.3 (unknown)

External converter

const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
const exposes = require('zigbee-herdsman-converters/lib/exposes');
const tuya = require('zigbee-herdsman-converters/lib/tuya');
const ea = exposes.access;

const definition = {
    fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE204_wc2w9t1s'}],
    model: 'BOT-R9V-ZB',
    vendor: 'Tuya',
    description: 'Wall-mount thermostat',
    whiteLabel: [
        {vendor: 'Beok', model: 'BOT-R9V-ZB'},
        {vendor: 'AVATTO', model: 'ZWT-100-16A'},
    ],
    fromZigbee: [tuya.fz.datapoints],
    toZigbee: [tuya.tz.datapoints],
    configure: tuya.configureMagicPacket,
    onEvent: tuya.onEventSetTime,
    exposes: [
        exposes.climate()
            .withSetpoint('current_heating_setpoint', 5, 60, 0.5, ea.STATE_SET)
            .withLocalTemperature(ea.STATE)
            .withLocalTemperatureCalibration(-9.9, 9.9, 0.1, ea.STATE_SET)
            .withSystemMode(['off', 'heat'], ea.STATE_SET)
            .withRunningState(['idle', 'heat'], ea.STATE),
        exposes.enum('preset', ea.STATE_SET, ['auto', 'manual'])
            .withDescription('Preset mode'),
        exposes.enum('child_lock', ea.STATE_SET, ['LOCK', 'UNLOCK'])
            .withDescription('Child lock'),
        exposes.enum('battery_low', ea.STATE, [true, false])
            .withDescription('Low battery indicator'),
        exposes.numeric('deadzone_temperature', ea.STATE_SET)
            .withUnit('Β°C')
            .withValueMin(0)
            .withValueMax(5)
            .withValueStep(0.5)
            .withDescription('The delta between local_temperature and current_heating_setpoint to trigger activity'),
    ],
    meta: {
        tuyaDatapoints: [
            [1, 'system_mode', {
                from: (v) => {
                    if (v === true || v === 1) return 'heat';
                    if (v === false || v === 0 || v === 2) return 'off';
                    return 'heat';
                },
                to: (v) => {
                    if (v === 'off') return false;
                    if (v === 'heat') return true;
                    return true;
                },
            }],
            [36, 'running_state', {
                from: (v) => {
                    if (v === true || v === 1) return 'heat';
                    if (v === false || v === 0) return 'idle';
                    return 'idle';
                },
            }],
            [16, 'current_heating_setpoint', tuya.valueConverter.divideBy10],
            [4, 'preset', tuya.valueConverterBasic.lookup({manual: true, auto: false})],
            [24, 'local_temperature', tuya.valueConverter.divideBy10],
            [27, 'local_temperature_calibration', tuya.valueConverter.divideBy10],
            [40, 'child_lock', tuya.valueConverter.lockUnlock],
            [26, 'deadzone_temperature', tuya.valueConverter.raw],
            [14, 'battery_low', tuya.valueConverter.trueFalse],
        ],
    },
};

module.exports = definition;

What does/doesn't work with the external definition?

This converter works with BOT-R9V-ZB thermostat, and similar battery operated zigbee thermostats. The battery status still doesn't work properly, you can remove it. However, temp set, deadzone temp, childloock, temp calibration, and running status are all working perfectly.

Notes

BOT-R9V-ZB external converter.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions