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] Namron Zigbee Touch Thermostat 16A 4512752/4512753 #2868

Open
itwtds opened this issue Dec 28, 2023 · 12 comments · May be fixed by #3565
Open

[Device Support Request] Namron Zigbee Touch Thermostat 16A 4512752/4512753 #2868

itwtds opened this issue Dec 28, 2023 · 12 comments · May be fixed by #3565
Labels
Tuya Request/PR regarding a Tuya device

Comments

@itwtds
Copy link

itwtds commented Dec 28, 2023

Problem description

New Namron Zigbee Touch Termostat 2.0 is identified as TS0601 by _TZE204_p3lqqy2r with no controls or diagnostic.

https://www.namron.com/products/namron-zigbee-touch-termostat-16a-sort-41/ / 4512753
https://www.namron.com/products/namron-zigbee-touch-termostat-16a-hvit-23/ / 4512752

Solution description

The device should have similar support as it's predecessor https://www.namron.com/products/namron-zigbee-touch-termostat-16a-sort / 4512738.

Screenshots/Video

Screenshots/Video

image

Device signature

Device signature
{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.FullFunctionDevice|MainsPowered|RxOnWhenIdle|AllocateAddress: 142>, 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=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": "0x0104",
      "device_type": "0x0051",
      "input_clusters": [
        "0x0000",
        "0x0004",
        "0x0005",
        "0xef00"
      ],
      "output_clusters": [
        "0x000a",
        "0x0019"
      ]
    }
  },
  "manufacturer": "_TZE204_p3lqqy2r",
  "model": "TS0601",
  "class": "zigpy.device.Device"
}

Diagnostic information

Diagnostic information
{
  "home_assistant": {
    "installation_type": "Home Assistant OS",
    "version": "2023.12.4",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.6",
    "docker": true,
    "arch": "x86_64",
    "timezone": "Europe/Oslo",
    "os_name": "Linux",
    "os_version": "6.1.63-haos",
    "supervisor": "2023.12.0",
    "host_os": "Home Assistant OS 11.2",
    "docker_version": "24.0.7",
    "chassis": "vm",
    "run_as_root": true
  },
  "custom_components": {
    "hacs": {
      "version": "1.33.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    },
    "easee": {
      "version": "0.9.55",
      "requirements": [
        "pyeasee==0.7.55"
      ]
    },
    "tesla_custom": {
      "version": "3.19.5",
      "requirements": [
        "teslajsonpy==3.9.8"
      ]
    }
  },
  "integration_manifest": {
    "domain": "zha",
    "name": "Zigbee Home Automation",
    "after_dependencies": [
      "onboarding",
      "usb"
    ],
    "codeowners": [
      "@dmulcahey",
      "@adminiuga",
      "@puddly",
      "@TheJulianJES"
    ],
    "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.37.4",
      "pyserial==3.5",
      "pyserial-asyncio==0.6",
      "zha-quirks==0.0.108",
      "zigpy-deconz==0.22.3",
      "zigpy==0.60.2",
      "zigpy-xbee==0.20.1",
      "zigpy-zigate==0.12.0",
      "zigpy-znp==0.12.1",
      "universal-silabs-flasher==0.0.15",
      "pyserial-asyncio-fast==0.11"
    ],
    "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": "0403",
        "pid": "6015",
        "description": "*conbee*",
        "known_devices": [
          "Conbee III"
        ]
      },
      {
        "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": 31358,
    "manufacturer": "_TZE204_p3lqqy2r",
    "model": "TS0601",
    "name": "_TZE204_p3lqqy2r TS0601",
    "quirk_applied": false,
    "quirk_class": "zigpy.device.Device",
    "quirk_id": null,
    "manufacturer_code": 4098,
    "power_source": "Mains",
    "lqi": 144,
    "rssi": -64,
    "last_seen": "2023-12-28T15:46:27",
    "available": true,
    "device_type": "Router",
    "signature": {
      "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.FullFunctionDevice|MainsPowered|RxOnWhenIdle|AllocateAddress: 142>, 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=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)",
      "endpoints": {
        "1": {
          "profile_id": "0x0104",
          "device_type": "0x0051",
          "input_clusters": [
            "0x0000",
            "0x0004",
            "0x0005",
            "0xef00"
          ],
          "output_clusters": [
            "0x000a",
            "0x0019"
          ]
        }
      },
      "manufacturer": "_TZE204_p3lqqy2r",
      "model": "TS0601"
    },
    "active_coordinator": false,
    "entities": [],
    "neighbors": [
      {
        "device_type": "Coordinator",
        "rx_on_when_idle": "On",
        "relationship": "Parent",
        "extended_pan_id": "**REDACTED**",
        "ieee": "**REDACTED**",
        "nwk": "0x0000",
        "permit_joining": "Unknown",
        "depth": "0",
        "lqi": "124"
      },
      {
        "device_type": "Router",
        "rx_on_when_idle": "On",
        "relationship": "Sibling",
        "extended_pan_id": "**REDACTED**",
        "ieee": "**REDACTED**",
        "nwk": "0x6E66",
        "permit_joining": "Unknown",
        "depth": "15",
        "lqi": "107"
      },
      {
        "device_type": "Router",
        "rx_on_when_idle": "On",
        "relationship": "Sibling",
        "extended_pan_id": "**REDACTED**",
        "ieee": "**REDACTED**",
        "nwk": "0x9F35",
        "permit_joining": "Unknown",
        "depth": "15",
        "lqi": "67"
      }
    ],
    "routes": [
      {
        "dest_nwk": "0x0000",
        "route_status": "Active",
        "memory_constrained": true,
        "many_to_one": true,
        "route_record_required": false,
        "next_hop": "0x6E66"
      }
    ],
    "endpoint_names": [
      {
        "name": "SMART_PLUG"
      }
    ],
    "user_given_name": "livingroom_thermostat_namron",
    "device_reg_id": "0d43525102b95a56bf9b7159ec66d547",
    "area_id": "living_room_1st_floor",
    "cluster_details": {
      "1": {
        "device_type": {
          "name": "SMART_PLUG",
          "id": 81
        },
        "profile_id": 260,
        "in_clusters": {
          "0x0000": {
            "endpoint_attribute": "basic",
            "attributes": {
              "0x0001": {
                "attribute_name": "app_version",
                "value": 70
              },
              "0x0003": {
                "attribute_name": "hw_version",
                "value": 1
              },
              "0x0004": {
                "attribute_name": "manufacturer",
                "value": "_TZE204_p3lqqy2r"
              },
              "0x0005": {
                "attribute_name": "model",
                "value": "TS0601"
              }
            },
            "unsupported_attributes": {
              "0x4000": {
                "attribute_name": "sw_build_id"
              }
            }
          },
          "0x0004": {
            "endpoint_attribute": "groups",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0005": {
            "endpoint_attribute": "scenes",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0xef00": {
            "endpoint_attribute": null,
            "attributes": {},
            "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

@Jellyfrog
Copy link

Support was added in zigbee2mqtt, I might give it a shot to implement this during the week.
Koenkk/zigbee-herdsman-converters#6811

@miahn
Copy link

miahn commented Jan 28, 2024

@Jellyfrog do you need any help testing it?

@Jellyfrog
Copy link

Sadly I decided to give z2m a shot after some other unrelated troubles, so I won't be working on this

@vegardoveras
Copy link

I've tried to build my first quirk for this termostat, but can't get my head around it. I think the guide for making a quirk is a bit too general. Do we have a example for a tuya quirk and how to figure out the input/output?

@Kjelllis
Copy link

Kjelllis commented May 6, 2024

@miahn @Jellyfrog do you need any help testing it?

Hi. I would love some help to get this supported in ZHA for everyone or with a custom quirk.
I have installed this thermostat but can't control it. I can see that Z2M has support now.

@lindhe
Copy link

lindhe commented May 29, 2024

@itwtds Can you please add some more details to the title? 🙏

@itwtds itwtds changed the title [Device Support Request] [Device Support Request] Namron Zigbee Touch Thermostat 16A 4512752/4512753 May 29, 2024
@eeriksen
Copy link

In need support for this one too. @itwtds How you found a way to control this thermostat with ZHA?

@hansarh
Copy link

hansarh commented Aug 13, 2024

Would be awesome to get this supported! the product URL's are not working btw. I believe this is the new one:
https://www.namron.com/products/namron-zigbee-touch-termostat-16a-hvit-23/

@itwtds
Copy link
Author

itwtds commented Aug 13, 2024

In need support for this one too. @itwtds How you found a way to control this thermostat with ZHA?

Hei, Eivind.

Sorry about the late reply, I went with z2m as the support was already there.

@hansarh
Copy link

hansarh commented Aug 15, 2024

I've tried looking into if there's semi-simple way of creating a quirk by looking at what has been added to the zigbee2mqtt "parsing" here and map it to how a quirk is built in this repository.
Can anyone provide some guidelines for this? or is this not the best approach?

@mellowism
Copy link

I would very much like to get this added as well, or help with a quirk. Just bought a couple thinking it would work the same as it's predecessor but sadly no.

@Beastware-666
Copy link

Beastware-666 commented Nov 11, 2024

I have the same issue with this one. (TS0601 by _TZE204_p3lqqy2r) Not showing any controls in ZHA.

Namron support says that this product is Tuya Zigbee and not Zigbee 3.0. (That does not tell me much, at this stage.)

@mellowism mellowism linked a pull request Nov 29, 2024 that will close this issue
3 tasks
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

Successfully merging a pull request may close this issue.