Bonjour,
Mon problème
j’ai fais l’acquisiton de thermostat Avatto TS0601 « _TZE204_eq83dclk` ». cependant lors de l’intégration dans zigbee2mqtt (meme dev) l’appareil n’est pas reconnu.. Autant dire que j’ai sollicité Gemini et ChatGPT sans reel succes.
c’est un thermostat fil pilote avec 4 ou 6 modes et une sonde température. voila un exemple de fichier généré. A part le bouton « off / Heat » qui semble trigger le thermostat mais pour le reste reste sans succes.
Quand je change de mode physiquement j’ai bien une ligne dans HA, par exemple :
[17/01/2026 18:12:51] z2m:mqtt: MQTT publish: topic ‹ zigbee2mqttHA/0xa4c138ae5274038a ›, payload ‹ {« linkquality »:152,« preset »:« nuit »,« system_mode »:« heat »} ›
J’ai exactement la meme ligne quand je trigger depuis HA mais rien ne bouge sur le thermostat.
Ma configuration
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 ea = exposes.access;
const tuya = require('zigbee-herdsman-converters/lib/tuya');
const definition = {
fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE204_eq83dclk'}],
model: 'WT-FP-5J',
vendor: 'Avatto',
description: 'Thermostat Fil Pilote (Forçage Reporting)',
fromZigbee: [tuya.fz.datapoints],
toZigbee: [tuya.tz.datapoints],
onEvent: tuya.onEventSetTime,
configure: async (device, adapter, coordinatorEndpoint) => {
const endpoint = device.getEndpoint(1);
await tuya.configureMagicPacket(device, adapter, coordinatorEndpoint);
// Force la lecture du cluster de base pour stabiliser la connexion
await endpoint.read('genBasic', ['manufacturerName', 'modelId']);
},
exposes: [
exposes.climate()
.withSetpoint('current_heating_setpoint', 5, 35, 1, ea.STATE_SET)
.withLocalTemperature(ea.STATE)
.withSystemMode(['off', 'heat'], ea.STATE_SET)
.withPreset(['comfort', 'comfort-1', 'antifreeze', 'off', 'nuit', 'program'], ea.STATE_SET),
],
meta: {
tuyaDatapoints: [
[1, 'system_mode', tuya.valueConverterBasic.lookup({'off': false, 'heat': true})],
[2, 'preset', tuya.valueConverterBasic.lookup({
'comfort': 0, 'comfort-1': 1, 'antifreeze': 2, 'off': 3, 'nuit': 4, 'program': 5
})],
[16, 'current_heating_setpoint', tuya.valueConverter.raw],
[24, 'local_temperature', tuya.valueConverter.divideBy10],
],
},
};
module.exports = definition;
Voila si quelqu’un sait m’aider ca serait grandemen apprécié, je pensais pas galérer a ce point en achetant un thermosatat Zigbee…merci d’avance !