Moes TV01 TRV temp sensor issues

Got the Moes TV01 TRV: Tuya ZigBee3.0 New Mini Radiator Actuator Valve Smart Programmable The – Moes

It’s setup in ZHA:

  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.EndDevice: 2>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress: 128>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=True, *is_full_function_device=False, *is_mains_powered=False, *is_receiver_on_when_idle=False, *is_router=False, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x0301",
      "in_clusters": [
      "out_clusters": [
  "manufacturer": "_TZE200_e9ba97vf",
  "model": "TS0601",
  "class": "zhaquirks.tuya.ts0601_trv.ZonnsmartTV01_ZG"

I have two problems with the temp sensor:

  1. The internal temp sensor is not working, sending a static value way above actual room temp (26,2C). Using the built-in temp offset feature I’m able to affect the temp reading but it’s still static and still wrong (also the offset value is not 1:1 to the temp reading)

  2. I was not too concerned as I was planning on using an external temp sensor anyways, using a script and automation based on this principle: Danfoss Ally TRV working with remote temp sensor
    Unfortunately I’m unable to send any temp value to the Zigbee cluster. Target temp, mode, etc. works without any issue but no success with temp. I’m using the following settings:
    Cluster: ZONNSMARTManufCluster (Endpoint id: 1, Id: 0xef00, Type: in)
    Cluster attribute: ZONNSMARTManufCluster (Endpoint id: 1, Id: 0xef00, Type: in)

Any ideas on how to solve these issues?

Did some more testing. Updating temperature offset (with same offset each time) will update temperature in HA. I brought the TRV outside, then back inside and updated offset again and again. Each time the temperature was updated, see screenshot.

In other words it seems like the TRV is working as it should but for some reason the only way of getting the temp reading to HA seems to be to update temp offset. Still no luck sending values to the TRV.

I’d really appreciate any help, input or just a link to where I can read up on how ZHA quirks configs work.

I’m wondering if I’m using wrong zha quirk (ZonnsmartTV01_ZG) as my TRV is a Moes. Clusters and attributes are different in the quirk: zha-device-handlers/ at 4682b810447efd95e4d4a62bb0f9b4a642b2e23c · zigpy/zha-device-handlers · GitHub

Found more users reporting the same problem: [Device Support Request] Tesla Smart Thermostatic Valve _TZE200_husqqvux TS0601 · Issue #1072 · zigpy/zha-device-handlers · GitHub

I have similar one TRV (_TZE200_husqqvux) which has the same issue when internal temp sensor updates only when calibration sensor is changed.

So I managed to find handle of temperature calibration (it’s 0x021b) according to debug from my zha communication.

I created pull request to zha quirks to enable this handle:

Now I am able to send just 0 to this handle and TRV’s internal temperature is updated in HA :slight_smile:

run this automation once per few mins:

service: zha.set_zigbee_cluster_attribute
  ieee: tr:vi:ee:ea:dd:re:ss
  value: 0
  attribute: 0x021b
  cluster_id: 0xef00
  endpoint_id: 1

This TRV has special online mode, when activated it publishes for ca 1 minute all parameters inclusive room temperature. The problem is I cannot activate it from zha. In Z2M it works without a problem, but when I’m publishing the same value to the same dp from zha, the trv just ignores me.

So do I understand you correct?
The Device “knows” the correct Temperature but is only unable to send the correct value to HA?
I mean can I expect, that the Device will work correctly even though it shows a static/incorrect value?

Mine is showing 19.6°C all the time.
So if this is the Temperature which is being measured by the Device itself, it cannot work correctly.

But if I understood you correctly only HA shows an incorrect/static value while the Device “knows” the correct one.

If this is the case, we “only” have an optical Issue and not a “technical”…
It’s not nice, but I could live with that (for now).

The device won’t publish any data unless it needs to. From HA 2022.3 there is a new on_off switch which has reversed polarity (normally on, after turning off it will go back to on). This activates the online mode, in which the device will publish current temperature. Call it periodically from automation.


Hi, this sounds exactly like what I’m looking for. Could you be please more specific about how to achieve this, as I’m pretty much new with a home assistant?

Hi All,

I have a problem with script running, could you help me

alias: TRV (Duplicate)
  - service: zha.issue_zigbee_cluster_command
      cluster_type: in
      ieee: 50:32:5f:ff:fe:58:ea:21
      endpoint_id: 1
      cluster_id: 0xef00
      attribute: 0x021b
      value: 0

extra keys not allowed @ data[‘attribute’]