Skip to content

[New device support]: TS0601 - _TZE200_ppuj1vem #24124

Closed as not planned
Closed as not planned
@benedicttobias

Description

@benedicttobias

Link

https://a.co/d/dpKaOr4

Database entry

{"definition":{"description":"Human presence sensor","model":"TS0601","supports":"presence, battery_level, linkquality","vendor":"Tuya"},"friendlyName":"0xa4c1383bebfbaf96","ieeeAddr":"0xa4c1383bebfbaf96","lastSeen":1727464098607,"manufacturerName":"_TZE200_ppuj1vem","modelID":"TS0601","networkAddress":55019,"type":"EndDevice"}]}}

Zigbee2MQTT version

1.40.1

Comments

See details below... when I trigger sensor, it will log twice about "presence: false" ... and as expected after 30s, another two logs for "presence: true".

External definition

const definition = {
    zigbeeModel: ['TS0601'],
    model: 'TS0601',
    vendor: '_TZE200_ppuj1vem',
    description: 'Automatically generated definition',
    extend: [],
    meta: {},
};

module.exports = definition;

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

I tried this so far:

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

const definition = {
    fingerprint: tuya.fingerprint('TS0601', ['_TZE200_ppuj1vem']),
    model: 'TS0601',
    vendor: 'Tuya',
    description: 'Human presence sensor',
    toZigbee: [],
    exposes: [
        e.presence(),
        exposes.numeric('battery_level', ea.STATE).withDescription('Battery level').withUnit('%'),
    ],
    meta: {
        tuyaDatapoints: [
            [1, 'presence', tuya.valueConverter.trueFalse1], // this return the opposite value. presence is 'false' when motion is detected
            [101, 'battery_level', tuya.valueConverter.raw], // battery seems stuck at low value
        ],
    },
};

module.exports = definition;

when I trigger sensor, it will log twice about "presence: false" ... and as expected after 30s, another two logs for "presence: true".

info 2024-09-27 15:06:59z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/0xa4c1383bebfbaf96', payload '{"battery_level":22,"linkquality":164,"presence":false}'
info 2024-09-27 15:06:59z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/0xa4c1383bebfbaf96', payload '{"battery_level":22,"linkquality":172,"presence":false}'
info 2024-09-27 15:07:31z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/0xa4c1383bebfbaf96', payload '{"battery_level":22,"linkquality":156,"presence":true}'
info 2024-09-27 15:07:31z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/0xa4c1383bebfbaf96', payload '{"battery_level":22,"linkquality":160,"presence":true}'

The battery value also seems low for a battery that just replaced a month ago.

I played around with converter to flip the presence value. but no luck, it just make trigger not triggering at all :(

More info

Zigbee2MQTT version
[1.40.1](https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.40.1) commit: [unknown](https://github.com/Koenkk/zigbee2mqtt/commit/unknown)
Coordinator type
EZSP v12
Coordinator revision
7.3.1.0 build 176
Coordinator IEEE Address
0x8c65a3fffe52226a
Frontend version
0.7.4
zigbee-herdsman-converters version
20.12.1
zigbee-herdsman version
0.57.3

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions