TS0601_thermostat_manual_on.../README.en.md
2026-01-18 23:47:47 +00:00

3.2 KiB
Raw Permalink Blame History

🇵🇱 Polish version

TS0601_BY_RK.js

Minimalist Zigbee2MQTT converter for Tuya TS0601 TRV heads (ON / OFF)

Why this converter exists

This converter was created to solve a real-world problem:
some Tuya TS0601 thermostatic radiator valves generate a huge amount of Zigbee reports, which:

  • spam MQTT
  • cause constant state changes in Home Assistant
  • increase CPU usage and database load
  • destabilise automations
  • provide no real value in everyday use

In installations with many TRVs (a dozen or more), this resulted in:

  • Home Assistant slowdowns
  • difficult troubleshooting
  • unpredictable automation behaviour

Conscious design decision

Instead of fighting every reported variable, a different approach was chosen:

minimalism over completeness

This converter:

  • removes all unnecessary exposes
  • ignores temperature, mode, and calibration reports
  • reduces control to a single simple action: ON / OFF

Result:

  • minimal Zigbee traffic
  • no MQTT spam
  • stable Home Assistant
  • predictable automations

How the converter works

Tuya TS0601 TRVs are controlled using datapoint DP=2 (setpoint).

Mapping:

  • ON -> sends 45°C (valve forced fully open)
  • OFF -> sends 0°C (valve fully closed)

Any other value:

  • is treated as ON
  • is not corrected back to avoid generating additional Zigbee traffic

The state is published immediately after sending the command, without waiting for further device reports.

What is NOT exposed (by design)

This converter deliberately does NOT expose:

  • target temperature
  • operating modes
  • calibration or offsets
  • diagnostic data

This is not a bug or missing feature — it is a deliberate limitation to ensure system stability.

Exposed features

  • Switch (ON / OFF) main valve control
  • Battery (%) if reported by the device
  • Local temperature (°C) passive only

How to add the converter to Zigbee2MQTT

  1. Copy the file TS0601_BY_RK.js to the Zigbee2MQTT directory, for example: /zigbee2mqtt/external_converters/TS0601_BY_RK.js

    If the external_converters directory does not exist, create it.

  2. In /zigbee2mqtt/configuration.yaml add:

    external_converters:
    - TS0601_BY_RK.js
    

conf

  1. Restart Zigbee2MQTT

How to add a new TRV (fingerprint)

If your TS0601 TRV is not supported, you need to add its identifier.

  1. In Zigbee2MQTT, check:

    • modelID
    • manufacturerName

    Example: modelID: TS0601 manufacturerName: _TZE200_xxxxxxxx

  2. In TS0601_BY_RK.js add a new fingerprint entry:

    { modelID: 'TS0601', manufacturerName: '_TZE200_NOWYID' }
    
add new trv
  1. Restart Zigbee2MQTT

Who this converter is for

  • installations with many TRVs
  • systems sensitive to MQTT spam
  • simple open / close valve control
  • stable and predictable automations

It is NOT intended for users who expect full temperature control from Home Assistant.

Summary

This converter does not try to be perfect.
Its goal is stability, silence, and predictable behaviour.