Skip to content

[External Converter]: TS0601 from _TZE284_8se38w3c, ZT01 prob temp #30419

@Naudnaud25

Description

@Naudnaud25

Link

https://fr.aliexpress.com/item/1005010543717739.html?spm=a2g0o.order_list.order_list_main.29.1b7f5e5bAwA0Qs&gatewayAdapt=glo2fra

Database entry

{"id":23,"type":"EndDevice","ieeeAddr":"0xa4c138e409b07d56","nwkAddr":6375,"manufId":4417,"manufName":"_TZE284_8se38w3c","powerSource":"Battery","modelId":"TS0601","epList":[1],"endpoints":{"1":{"profId":260,"epId":1,"devId":81,"inClusterList":[4,5,61184,0,60672],"outClusterList":[25,10],"clusters":{"genBasic":{"attributes":{"65487":14400,"65503":"L��0i","65506":56,"65508":0,"modelId":"TS0601","manufacturerName":"_TZE284_8se38w3c","powerSource":3,"zclVersion":3,"appVersion":77,"stackVersion":0,"hwVersion":1,"dateCode":""}}},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":77,"stackVersion":0,"hwVersion":1,"dateCode":"","zclVersion":3,"interviewCompleted":true,"interviewState":"SUCCESSFUL","meta":{},"lastSeen":1767273803353}

Zigbee2MQTT version

2.7.1 (unknown)

External converter

const exposes = require('zigbee-herdsman-converters/lib/exposes');
const e = exposes.presets;
const ea = exposes.access;

const fz = {
    zt01_datapoints: {
        cluster: 'manuSpecificTuya',
        type: 'commandDataReport',
        convert: (model, msg, publish, options, meta) => {
            const result = {};
            for (const dpValue of msg.data.dpValues) {
                const dp = dpValue.dp;
                const data = dpValue.data;

                if (dp === 1) {
                    // Température interne
                    result.temperature = data.readInt32BE(0) / 10;
                }

                if (dp === 38) {
                    // Température sonde externe
                    result.temperature_external = data.readInt32BE(0) / 10;
                }

                if (dp === 2) {
                    result.humidity = data.readInt32BE(0);
                }

                if (dp === 3) {
                    // Batterie enum
                    const map = {0: 10, 1: 50, 2: 100};
                    result.battery = map[data.readUInt8(0)] ?? null;
                }
            }
            return result;
        },
    },
};

module.exports = {
    fingerprint: [
        {
            modelID: 'TS0601',
            manufacturerName: '_TZE284_8se38w3c',
        },
    ],
    model: 'ZT01',
    vendor: 'Tuya',
    description: 'Capteur température / humidité avec sonde externe',
    fromZigbee: [fz.zt01_datapoints],
    toZigbee: [],
    exposes: [
        e.temperature().withLabel('Température interne'),
        e.numeric('temperature_external', ea.STATE).withUnit('°C').withLabel('Température sonde'),
        e.humidity(),
        e.battery(),
    ],
};

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

Internal temp and humidity is working
Prob Temp is working
Battery level is working (only 100%,50% and 10%)

Offset doesnt' work.

Notes

software_build_id: undefined
date_code: ``
endpoints:

{"1":{"clusters":{"input":["genGroups","genScenes","manuSpecificTuya","genBasic","zosungIRTransmit"],"output":["genOta","genTime"]}}}

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions