Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Device Support Request] TS0601 _TZE200_upagmta9 #2577

Open
MStapelfeldt opened this issue Sep 8, 2023 · 18 comments
Open

[Device Support Request] TS0601 _TZE200_upagmta9 #2577

MStapelfeldt opened this issue Sep 8, 2023 · 18 comments
Labels
Tuya Request/PR regarding a Tuya device

Comments

@MStapelfeldt
Copy link

MStapelfeldt commented Sep 8, 2023

Problem description

I got a Zigbee device (https://de.aliexpress.com/item/1005004666251263.html) which is regonized, but without Values. I tried to add signature to ts0601_sensor.py but still no luck to get it working.

Solution description

Help with integration

Screenshots/Video

Screenshots/Video

[Paste/upload your media here]

Device signature

Device signature
{
  "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=4417, maximum_buffer_size=66, maximum_incoming_transfer_size=66, server_mask=10752, maximum_outgoing_transfer_size=66, 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": "0x0104",
      "device_type": "0x0302",
      "input_clusters": [
        "0x0000",
        "0x0001",
        "0x0004",
        "0x0005",
        "0x0402",
        "0x0408",
        "0xef00"
      ],
      "output_clusters": [
        "0x000a",
        "0x0019"
      ]
    }
  },
  "manufacturer": "_TZE200_upagmta9",
  "model": "TS0601",
  "class": "ts0601_sensor.TuyaSoilSensor"
}

Diagnostic information

Diagnostic information
{
  "home_assistant": {
    "installation_type": "Home Assistant OS",
    "version": "2023.9.0",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.5",
    "docker": true,
    "arch": "x86_64",
    "timezone": "Europe/Berlin",
    "os_name": "Linux",
    "os_version": "6.1.45",
    "supervisor": "2023.08.3",
    "host_os": "Home Assistant OS 10.5",
    "docker_version": "23.0.6",
    "chassis": "embedded",
    "run_as_root": true
  },
  "custom_components": {
    "hacs": {
      "version": "1.32.1",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    },
  },
  "integration_manifest": {
    "domain": "zha",
    "name": "Zigbee Home Automation",
    "after_dependencies": [
      "onboarding",
      "usb"
    ],
    "codeowners": [
      "@dmulcahey",
      "@adminiuga",
      "@puddly"
    ],
    "config_flow": true,
    "dependencies": [
      "file_upload"
    ],
    "documentation": "https://www.home-assistant.io/integrations/zha",
    "iot_class": "local_polling",
    "loggers": [
      "aiosqlite",
      "bellows",
      "crccheck",
      "pure_pcapy3",
      "zhaquirks",
      "zigpy",
      "zigpy_deconz",
      "zigpy_xbee",
      "zigpy_zigate",
      "zigpy_znp",
      "universal_silabs_flasher"
    ],
    "requirements": [
      "bellows==0.36.2",
      "pyserial==3.5",
      "pyserial-asyncio==0.6",
      "zha-quirks==0.0.103",
      "zigpy-deconz==0.21.0",
      "zigpy==0.57.1",
      "zigpy-xbee==0.18.1",
      "zigpy-zigate==0.11.0",
      "zigpy-znp==0.11.4",
      "universal-silabs-flasher==0.0.13"
    ],
    "usb": [
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*2652*",
        "known_devices": [
          "slae.sh cc2652rb stick"
        ]
      },
      {
        "vid": "1A86",
        "pid": "55D4",
        "description": "*sonoff*plus*",
        "known_devices": [
          "sonoff zigbee dongle plus v2"
        ]
      },
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*sonoff*plus*",
        "known_devices": [
          "sonoff zigbee dongle plus"
        ]
      },
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*tubeszb*",
        "known_devices": [
          "TubesZB Coordinator"
        ]
      },
      {
        "vid": "1A86",
        "pid": "7523",
        "description": "*tubeszb*",
        "known_devices": [
          "TubesZB Coordinator"
        ]
      },
      {
        "vid": "1A86",
        "pid": "7523",
        "description": "*zigstar*",
        "known_devices": [
          "ZigStar Coordinators"
        ]
      },
      {
        "vid": "1CF1",
        "pid": "0030",
        "description": "*conbee*",
        "known_devices": [
          "Conbee II"
        ]
      },
      {
        "vid": "10C4",
        "pid": "8A2A",
        "description": "*zigbee*",
        "known_devices": [
          "Nortek HUSBZB-1"
        ]
      },
      {
        "vid": "0403",
        "pid": "6015",
        "description": "*zigate*",
        "known_devices": [
          "ZiGate+"
        ]
      },
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*zigate*",
        "known_devices": [
          "ZiGate"
        ]
      },
      {
        "vid": "10C4",
        "pid": "8B34",
        "description": "*bv 2010/10*",
        "known_devices": [
          "Bitron Video AV2010/10"
        ]
      }
    ],
    "zeroconf": [
      {
        "type": "_esphomelib._tcp.local.",
        "name": "tube*"
      },
      {
        "type": "_zigate-zigbee-gateway._tcp.local.",
        "name": "*zigate*"
      },
      {
        "type": "_zigstar_gw._tcp.local.",
        "name": "*zigstar*"
      },
      {
        "type": "_uzg-01._tcp.local.",
        "name": "uzg-01*"
      },
      {
        "type": "_slzb-06._tcp.local.",
        "name": "slzb-06*"
      }
    ],
    "is_built_in": true
  },
  "data": {
    "ieee": "**REDACTED**",
    "nwk": 14628,
    "manufacturer": "_TZE200_upagmta9",
    "model": "TS0601",
    "name": "_TZE200_upagmta9 TS0601",
    "quirk_applied": true,
    "quirk_class": "ts0601_sensor.TuyaSoilSensor",
    "manufacturer_code": 4417,
    "power_source": "Battery or Unknown",
    "lqi": 196,
    "rssi": -51,
    "last_seen": "2023-09-08T23:21:45",
    "available": true,
    "device_type": "EndDevice",
    "signature": {
      "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=4417, maximum_buffer_size=66, maximum_incoming_transfer_size=66, server_mask=10752, maximum_outgoing_transfer_size=66, 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": "0x0104",
          "device_type": "0x0302",
          "input_clusters": [
            "0x0000",
            "0x0001",
            "0x0004",
            "0x0005",
            "0x0402",
            "0x0408",
            "0xef00"
          ],
          "output_clusters": [
            "0x000a",
            "0x0019"
          ]
        }
      },
      "manufacturer": "_TZE200_upagmta9",
      "model": "TS0601"
    },
    "active_coordinator": false,
    "entities": [
      {
        "entity_id": "sensor.schlafzimmer_temperatur_battery",
        "name": "_TZE200_upagmta9 TS0601"
      },
      {
        "entity_id": "sensor.schlafzimmer_temperatur_soil_moisture",
        "name": "_TZE200_upagmta9 TS0601"
      },
      {
        "entity_id": "sensor.schlafzimmer_temperatur_temperature",
        "name": "_TZE200_upagmta9 TS0601"
      }
    ],
    "neighbors": [],
    "routes": [],
    "endpoint_names": [
      {
        "name": "TEMPERATURE_SENSOR"
      }
    ],
    "user_given_name": "Schlafzimmer Temperatur",
    "device_reg_id": "92956b01bebc87d0228602992419c38a",
    "area_id": "schlafzimmer",
    "cluster_details": {
      "1": {
        "device_type": {
          "name": "TEMPERATURE_SENSOR",
          "id": 770
        },
        "profile_id": 260,
        "in_clusters": {
          "0x0000": {
            "endpoint_attribute": "basic",
            "attributes": {
              "0x0001": {
                "attribute_name": "app_version",
                "value": 72
              }
            },
            "unsupported_attributes": {}
          },
          "0x0004": {
            "endpoint_attribute": "groups",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0005": {
            "endpoint_attribute": "scenes",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0xef00": {
            "endpoint_attribute": "tuya_manufacturer",
            "attributes": {
              "0xef00": {
                "attribute_name": "mcu_version",
                "value": "1.0.0"
              }
            },
            "unsupported_attributes": {}
          },
          "0x0402": {
            "endpoint_attribute": "temperature",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0408": {
            "endpoint_attribute": "soil_moisture",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0001": {
            "endpoint_attribute": "power",
            "attributes": {
              "0x0033": {
                "attribute_name": "battery_quantity",
                "value": 2
              },
              "0x0034": {
                "attribute_name": "battery_rated_voltage",
                "value": 15
              },
              "0x0031": {
                "attribute_name": "battery_size",
                "value": 4
              }
            },
            "unsupported_attributes": {}
          }
        },
        "out_clusters": {
          "0x0019": {
            "endpoint_attribute": "ota",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x000a": {
            "endpoint_attribute": "time",
            "attributes": {},
            "unsupported_attributes": {}
          }
        }
      }
    }
  }
}

Logs

Logs
[Paste the logs here]

Custom quirk

Custom quirk
[Paste your custom quirk here]

Additional information

No response

@TheJulianJES TheJulianJES added the Tuya Request/PR regarding a Tuya device label Sep 8, 2023
@javicalle
Copy link
Collaborator

javicalle commented Sep 9, 2023

Attach the signature without the local quirk applied.
I would try to add it in this quirk:

class TuyaTempHumiditySensor_Square(CustomDevice):

@MattWestb

This comment was marked as outdated.

@MStapelfeldt
Copy link
Author

Attach the signature without the local quirk aoolied. I would try to add it in this quirk:

class TuyaTempHumiditySensor_Square(CustomDevice):

Dammit, I wrote answer but somehow it wasn't submitted.

I added the signiture to ts0601_sensor.py, the line you suggestet and also tried all other signature definitions, without luck.

@AlexNoop
Copy link

AlexNoop commented Sep 16, 2023

hey ;)

Same issue for me ! with ZHA and signature in ts0601_sensor.py

How can I help?

@Stevelande
Copy link

https://de.aliexpress.com/item/1005005627336725.html?spm=a2g0o.order_list.order_list_main.5.17da5c5fF6CUMQ&gatewayAdapt=glo2deu
Same issue here.
I tried.
("_TZE200_upagmta9", "TS0601"),
in
class TuyaTempHumiditySensor_Square(CustomDevice): """Custom device representing tuya temp and humidity sensor with e-ink screen."""

z2m

@01fr
Copy link

01fr commented Dec 20, 2023

Anyone managed to get the TS0601 _TZE204_upagmta9 working in ZHA?

this is the small tuya zigbee temperature and humidity sensor with screen.

@ewoudwerkman
Copy link

ewoudwerkman commented Dec 20, 2023

For zigbee2mqtt they seem to have solved this issue. See Koenkk/zigbee2mqtt#19137
According to this comment Koenkk/zigbee2mqtt#19137 (comment) the Tuya device requires an extra command send from the controller after the interview:

  • if you issue a cluster 0xef00 command 0x03 the device send all values and goes to sleep.
  • send a temperature F° Command from frontend UI, which is confirmed on screen sensor switching to °F, then sending the cluster 0xef00 command 0x03 the sensor goes to sleep

Not sure how to implement this in zha.

@01fr
Copy link

01fr commented Dec 23, 2023

We need the help of the experts. Can someone help? :)

@MStapelfeldt
Copy link
Author

I wasn't able to get it working and the extra command after interview requires more knowledge then I have. (I'm just a regular C++/PHP/VB/C#/Ruby developer, no phyton 😅)
I brought some other devices without screen which was more easy and will look to buy known supported once if I need some with display.

@RoboKaren
Copy link

Have the same little temp/humidity sensor. Can pair it but then it freezes up and no values come in. Sucks as it's inexpensive, I hope the next release of ZHA can get it working, it looks like there's a ton of work on TUYA devices over on the "other side" that ZHA can pull from.

@SmarthomeBot
Copy link

It would be great to have support for this device given the fact this it has native support for Zigbee.

Adding in to ZHA is not an issue, no entities showing is the problem

image

@dualmacops
Copy link

@javicalle The device signature:

{ "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=4417, maximum_buffer_size=66, maximum_incoming_transfer_size=66, server_mask=10752, maximum_outgoing_transfer_size=66, 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": "0x0104", "device_type": "0x0051", "input_clusters": [ "0x0000", "0x0004", "0x0005", "0xef00" ], "output_clusters": [ "0x000a", "0x0019" ] } }, "manufacturer": "_TZE204_upagmta9", "model": "TS0601", "class": "zigpy.device.Device" }

@TheJulianJES
Copy link
Collaborator

TheJulianJES commented Jan 30, 2024

For zigbee2mqtt they seem to have solved this issue. See Koenkk/zigbee2mqtt#19137 According to this comment Koenkk/zigbee2mqtt#19137 (comment) the Tuya device requires an extra command send from the controller after the interview:

  • if you issue a cluster 0xef00 command 0x03 the device send all values and goes to sleep.

Haven't tested this at all, but linking my comment from the other thread (for the same exact device): #2694 (comment)

@OZub
Copy link

OZub commented Feb 23, 2024

same issue here.
is there any hope for a fix?
image

@MStapelfeldt
Copy link
Author

@dmulcahey should be one of the people responsible. But there is no one assigned to this issue. So I don't have much hope they try to change it...

@01fr
Copy link

01fr commented Apr 21, 2024

Given that there is solution to integrate these thermometers in HA, has anyone found any use for them?
Is it possible to convert them from Zigbeee to bluetooth?

@MacDada
Copy link

MacDada commented Apr 21, 2024

has anyone found any use for them?

well… they are thermometers… they report temperature… what other use can they be?

@01fr
Copy link

01fr commented Jul 28, 2024

Just wondering if anyone managed to get these devices working on ZHA?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Tuya Request/PR regarding a Tuya device
Projects
None yet
Development

No branches or pull requests