zigpy / zha-device-handlers

ZHA device handlers bridge the functionality gap created when manufacturers deviate from the ZCL specification, handling deviations and exceptions by parsing custom messages to and from Zigbee devices.
Apache License 2.0
696 stars 641 forks source link

[Device Support Request] TS0215A by _TZ3000_fsiepnrh #1052

Open rgcouto opened 2 years ago

rgcouto commented 2 years ago

Hi everyone,

I've recently bought two remote controls Nedis ZBRC10WT, and I'm having a hard time configuring them as they're detected as alarm panel controls but they're really simply just a remote control with four buttons, which is different from some similar products which have buttons that lead to a alarm panel control, like the Woox Smart Remote Control.

Is your feature request related to a problem? Please describe. On Home Assistant I've figured out that I can change the device type to a sensor, but then when I'm listening to zha_events I can only find buttons I (or 1), A and B, the button O (or 0) doesn't seem to be working. This happens on both controls, which indicates its probably not a faulty device/button.

So I can read buttons I, A and B, but not O.

Describe the solution you'd like In this particular case, since this device is aesthetically closer to a generic remote control, It would be nicer if it would be possible to issue commands like O, I, A and B instead of "Disarm", "Arm_Day_Home_Only", etc. And also readings from the four buttons instead of only three.

Device signature - this can be acquired by removing the device from ZHA and pairing it again from the add devices screen. Be sure to add the entire content of the log panel after pairing the device to a code block below this line. 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=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": "0x0401",
      "in_clusters": [
        "0x0000",
        "0x0001",
        "0x0500",
        "0x0501"
      ],
      "out_clusters": [
        "0x000a",
        "0x0019"
      ]
    }
  },
  "manufacturer": "_TZ3000_fsiepnrh",
  "model": "TS0215A",
  "class": "zigpy.device.Device"
}

Log:

Sending 'zdo_leave_req' failed: 
light.led_sala: polling current state
[0x05b7:1:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=135 command_id=Command.Read_Attributes_rsp>
[0x05b7:1:0x0008] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=136 command_id=Command.Read_Attributes_rsp>
[0x05B7:1:0x0008]: received attribute: 0 update with value: 61
[0x05b7:1:0x0300] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=137 command_id=Command.Read_Attributes_rsp>
New device 0xb4d5 (bc:33:ac:ff:fe:5d:26:d8) joined the network
[0xb4d5] Scheduling initialization
Received frame on uninitialized device <Device model=None manuf=None nwk=0xB4D5 ieee=bc:33:ac:ff:fe:5d:26:d8 is_initialized=False> from ep 0 to ep 0, cluster ZDOCmd.Device_annce: b'\xFF\xD5\xB4\xD8\x26\x5D\xFE\xFF\xAC\x33\xBC\x80'
[0xb4d5:zdo] ZDO request ZDOCmd.Device_annce: [0xB4D5, bc:33:ac:ff:fe:5d:26:d8, 128]
Tries remaining: 3
[0xb4d5] Requesting 'Node Descriptor'
Tries remaining: 2
[0xb4d5] Extending timeout for 0x8a request
Received frame on uninitialized device <Device model=None manuf=None nwk=0xB4D5 ieee=bc:33:ac:ff:fe:5d:26:d8 is_initialized=False> from ep 0 to ep 0, cluster ZDOCmd.Node_Desc_rsp: b'\x8A\x00\xD5\xB4\x02\x40\x80\x02\x10\x52\x52\x00\x00\x2C\x52\x00\x00'
[0xb4d5] Got 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)
[0xb4d5] Discovering endpoints
Tries remaining: 3
[0xb4d5] Extending timeout for 0x8b request
Received frame on uninitialized device <Device model=None manuf=None nwk=0xB4D5 ieee=bc:33:ac:ff:fe:5d:26:d8 is_initialized=False> from ep 0 to ep 0, cluster ZDOCmd.Active_EP_rsp: b'\x8B\x00\xD5\xB4\x01\x01'
[0xb4d5] Discovered endpoints: [1]
[0xb4d5] Initializing endpoints [<Endpoint id=1 in=[] out=[] status=<Status.NEW: 0>>]
[0xb4d5:1] Discovering endpoint information
Tries remaining: 3
[0xb4d5] Extending timeout for 0x8c request
Received frame on uninitialized device <Device model=None manuf=None nwk=0xB4D5 ieee=bc:33:ac:ff:fe:5d:26:d8 is_initialized=False> from ep 0 to ep 0, cluster ZDOCmd.Simple_Desc_rsp: b'\x8C\x00\xD5\xB4\x14\x01\x04\x01\x01\x04\x01\x04\x00\x00\x01\x00\x00\x05\x01\x05\x02\x19\x00\x0A\x00'
[0xb4d5:1] Discovered endpoint information: SizePrefixedSimpleDescriptor(endpoint=1, profile=260, device_type=1025, device_version=1, input_clusters=[0, 1, 1280, 1281], output_clusters=[25, 10])
[0xb4d5] Extending timeout for 0x8d request
[0xb4d5:1:0x0000] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=141 command_id=Command.Read_Attributes_rsp>
[0xb4d5] Read model 'TS0215A' and manufacturer '_TZ3000_fsiepnrh' from <Endpoint id=1 in=[basic:0x0000, power:0x0001, ias_zone:0x0500, ias_ace:0x0501] out=[ota:0x0019, time:0x000A] status=<Status.ZDO_INIT: 1>>
[0xb4d5] Discovered basic device information for <Device model='TS0215A' manuf='_TZ3000_fsiepnrh' nwk=0xB4D5 ieee=bc:33:ac:ff:fe:5d:26:d8 is_initialized=True>
Device is initialized <Device model='TS0215A' manuf='_TZ3000_fsiepnrh' nwk=0xB4D5 ieee=bc:33:ac:ff:fe:5d:26:d8 is_initialized=True>
Checking quirks for _TZ3000_fsiepnrh TS0215A (bc:33:ac:ff:fe:5d:26:d8)
Considering <class 'zhaquirks.xbee.xbee_io.XBeeSensor'>
Fail because endpoint list mismatch: {232, 230} {1}
Considering <class 'zhaquirks.xbee.xbee3_io.XBee3Sensor'>
Fail because endpoint list mismatch: {232, 230} {1}
Considering <class 'zhaquirks.smartthings.tag_v4.SmartThingsTagV4'>
Fail because device_type mismatch on at least one endpoint
Considering <class 'zhaquirks.smartthings.multi.SmartthingsMultiPurposeSensor'>
Fail because device_type mismatch on at least one endpoint
Considering <class 'zhaquirks.netvox.z308e3ed.Z308E3ED'>
Fail because device_type mismatch on at least one endpoint
Considering <class 'zhaquirks.gledopto.soposhgu10.SoposhGU10'>
Fail because endpoint list mismatch: {11, 13} {1}
Considering <class 'bellows.zigbee.application.EZSPCoordinator'>
Fail because device_type mismatch on at least one endpoint
device - 0xB4D5:bc:33:ac:ff:fe:5d:26:d8 entering async_device_initialized - is_new_join: True
device - 0xB4D5:bc:33:ac:ff:fe:5d:26:d8 has joined the ZHA zigbee network
[0xB4D5](TS0215A): started configuration
[0xB4D5:ZDO](TS0215A): 'async_configure' stage succeeded
[0xb4d5] Extending timeout for 0x8e request
[0xb4d5] Extending timeout for 0x8f request
[0xb4d5] Extending timeout for 0x90 request
Error handling '_save_attribute' event with (bc:33:ac:ff:fe:5d:26:d8, 1, 0, 4, '_TZ3000_fsiepnrh') params: FOREIGN KEY constraint failed
Error handling '_save_attribute' event with (bc:33:ac:ff:fe:5d:26:d8, 1, 0, 5, 'TS0215A') params: FOREIGN KEY constraint failed
[0xB4D5:1:0x0501]: bound 'ias_ace' cluster: Status.SUCCESS
[0xB4D5:1:0x0501]: finished channel configuration
[0xB4D5:1:0x0000]: finished channel configuration
[0xB4D5:1:0x0019]: finished channel configuration
[0xB4D5:1:0x0001]: bound 'power' cluster: Status.SUCCESS
[0xb4d5] Extending timeout for 0x91 request
[0xb4d5:1:0x0500] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=144 command_id=Command.Read_Attributes_rsp>
[0xB4D5:1:0x0500]: started IASZoneChannel configuration
[0xb4d5] Extending timeout for 0x92 request
[0xb4d5:1:0x0001] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=145 command_id=Command.Default_Response>
[0xB4D5:1:0x0001]: reporting 'battery_voltage' attr on 'power' cluster: 3600/10800/1: Result: '[6, <Status.UNSUP_GENERAL_COMMAND: 130>]'
[0xB4D5:1:0x0500]: bound 'ias_zone' cluster: Status.SUCCESS
[0xb4d5] Extending timeout for 0x93 request
[0xb4d5:1:0x0500] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=147 command_id=Command.Write_Attributes_rsp>
[0xB4D5:1:0x0500]: wrote cie_addr: 00:12:4b:00:14:d9:17:89 to 'ias_zone' cluster: [WriteAttributesStatusRecord(status=<Status.SUCCESS: 0>)]
[0xB4D5:1:0x0500]: Sending pro-active IAS enroll response
[0xB4D5:1:0x0500]: finished IASZoneChannel configuration
[0xb4d5] Extending timeout for 0x94 request
[0xB4D5:1:0x0501]: 'async_configure' stage succeeded
[0xB4D5:1:0x0001]: 'async_configure' stage failed: 'uint8_t' object is not subscriptable
[0xB4D5:1:0x0500]: 'async_configure' stage succeeded
[0xB4D5:1:0x0000]: 'async_configure' stage succeeded
[0xB4D5:1:0x0019]: 'async_configure' stage succeeded
[0xb4d5:1:0x0500] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=CLUSTER_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=49 command_id=1>
[0xb4d5:1:0x0500] ZCL request 0x0001: [<ZoneType.Remote_Control: 271>, 4098]
[0xb4d5:1:0x0500] No handler for cluster command 1
[0xB4D5:1:0x0500]: Enroll requested
[0xb4d5] Extending timeout for 0x95 request
[0xB4D5](TS0215A): completed configuration
[0xB4D5](TS0215A): stored in registry: ZhaDeviceEntry(name='_TZ3000_fsiepnrh TS0215A', ieee='bc:33:ac:ff:fe:5d:26:d8', last_seen=1633090791.685368)
[0xB4D5](TS0215A): started initialization
[0xB4D5:ZDO](TS0215A): 'async_initialize' stage succeeded
[0xB4D5:1:0x0501]: initializing channel: from_cache: False
[0xB4D5:1:0x0501]: finished channel configuration
[0xB4D5:1:0x0001]: initializing channel: from_cache: False
[0xb4d5] Extending timeout for 0x96 request
[0xB4D5:1:0x0500]: initializing channel: from_cache: False
[0xb4d5] Extending timeout for 0x97 request
[0xB4D5:1:0x0000]: initializing channel: from_cache: False
[0xB4D5:1:0x0000]: finished channel configuration
[0xB4D5:1:0x0019]: initializing channel: from_cache: False
[0xB4D5:1:0x0019]: finished channel configuration
[0xb4d5:1:0x0500] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=148 command_id=Command.Default_Response>
[0xb4d5:1:0x0500] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=149 command_id=Command.Default_Response>
[0xb4d5:1:0x0001] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=150 command_id=Command.Read_Attributes_rsp>
[0xb4d5] Extending timeout for 0x98 request
[0xb4d5:1:0x0500] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=151 command_id=Command.Read_Attributes_rsp>
[0xB4D5:1:0x0500]: finished channel configuration
[0xb4d5:1:0x0001] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=152 command_id=Command.Read_Attributes_rsp>
[0xB4D5:1:0x0001]: finished channel configuration
[0xB4D5:1:0x0501]: 'async_initialize' stage succeeded
[0xB4D5:1:0x0001]: 'async_initialize' stage succeeded
[0xB4D5:1:0x0500]: 'async_initialize' stage succeeded
[0xB4D5:1:0x0000]: 'async_initialize' stage succeeded
[0xB4D5:1:0x0019]: 'async_initialize' stage succeeded
[0xB4D5](TS0215A): power source: Battery or Unknown
[0xB4D5](TS0215A): completed initialization
[0xb4d5:1:0x0500] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=CLUSTER_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=49 command_id=1>
[0xb4d5:1:0x0500] ZCL request 0x0001: [<ZoneType.Remote_Control: 271>, 4098]
[0xb4d5:1:0x0500] No handler for cluster command 1
[0xB4D5:1:0x0500]: Enroll requested
[0xb4d5] Extending timeout for 0x99 request
[0xb4d5:1:0x0500] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=153 command_id=Command.Default_Response>
[0xb4d5:1:0x000a] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=False disable_default_response=False> manufacturer=None tsn=50 command_id=Command.Read_Attributes>
[0xb4d5:1:0x000a] ZCL request 0x0000: [[7]]

Thanks for your precious work and for reviewing my issue.

rgcouto commented 2 years ago

Dear All,

Any updates on this issue?

Thanks!

github-actions[bot] commented 2 years ago

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

rgcouto commented 2 years ago

Is there any chance someone might pick this up?

drfuture commented 2 years ago

Hi, i bought this too and have the same Problem, if i press the 0 Button i recieve a "Alarm activated" because its recognised as "ias_ace" maybe its detected as this one? https://zigbee.blakadder.com/Tuya_TS0215A.html but its this one: https://zigbee.blakadder.com/Nedis_ZBRC10WT.html

rgcouto commented 2 years ago

Hi! Did you managed to find a solution?

Sent from mobile


From: drfuture @.> Sent: Friday, June 10, 2022 9:08:22 AM To: zigpy/zha-device-handlers @.> Cc: Rafael Couto @.>; Author @.> Subject: Re: [zigpy/zha-device-handlers] [Device Support Request] TS0215A by _TZ3000_fsiepnrh (#1052)

Hi, i bought this too and have the same Problem, if i press the 0 Button i recieve a "Alarm activated" because its recognised as "ias_ace" maybe its detected as this one? https://zigbee.blakadder.com/Tuya_TS0215A.html but its this one: https://zigbee.blakadder.com/Nedis_ZBRC10WT.html

— Reply to this email directly, view it on GitHubhttps://github.com/zigpy/zha-device-handlers/issues/1052#issuecomment-1152092441, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABCZJUSFTEOLGBT3B2D7IADVOLZXNANCNFSM5FESIKLQ. You are receiving this because you authored the thread.Message ID: @.***>

drfuture commented 2 years ago

no, not yet

jpa77 commented 1 year ago

Same problem here, thought this would work as easily as other Nedis devices that I have tried/used.

mar1u50 commented 1 year ago

Same problem here. Any update?

No0Vad commented 1 year ago

I also have this device (signature is identical to OP) and same issue (no solution).

The only thing the [O] button does is trigger the "alarm". You can disable it with 1234 in the UI. Pressing the "disarm" key does not disable it. image

The [O] event is only fired when the alarm is off (a state_changed). The [I], [A] and [B] is sent on every press (a state_changed and a zha_event).

Also when pressing [O] no zha_event is sent. From what I can see when I listen to all events in developer tools.

rgcouto commented 1 year ago

Hi thanks for your input. In my case I also always receive 3 times the same signal, which messes up any automation I have. Do you know any workaround? Or have you experienced the same issue?

mar1u50 commented 1 year ago

Yes, 3 times here too.

rgcouto commented 1 year ago

Currently on Home Assistant I'm making automations to run only single (not in parallel) and in the end I just add a sleep so that the other two inputs are, hopefully, ignored, but this doesn't work everytime which sucks!

No0Vad commented 1 year ago

Hi thanks for your input. In my case I also always receive 3 times the same signal, which messes up any automation I have. Do you know any workaround? Or have you experienced the same issue?

I just got the device and noticed it was registered as an alarm and I found this github issue while googling 😅

mycanaletto commented 1 year ago

This remote control, like the one from Heiman, is seen as an AlarmControlPanel. This is a choice of the integrators.

The problem is that if you want to monitor the events you will find that it sends several in a row and it is impossible to differentiate them.

The temporary solution is to process only the first one in single mode and pause it. But this is not a totally reliable solution, especially if you operate several of them...

I tried to change the type :

zha:
  device_config:
     a4:c1:38:96:0b:cf:xx:xx-1:
       type: "remote"  # or button

It doesn't work

I noticed that under Z2MQTT it works fine as a remote, the behavior is normal and we can process the information correctly.


> arm_day_zones
> arm_all_zones
> disarm
> emergency

So under ZHA we should be able to choose the operating mode.

I tried to play with clusters or ZhaToolkit without success...

Information and updates welcome...

etpedro commented 1 year ago

I'm having the same issue with this device. As anyone found a solution yet?

@mycanaletto under Z2MQTT you can use this device as a remote instead of an alarm device?

rgcouto commented 1 year ago

At this point I basically just gave up waiting for a solution.

I basically just switched to this https://www.ikea.com/pt/pt/p/tradfri-regulador-intensidade-s-fios-smart-branco-70408595/ works like a charm!

timiman commented 1 year ago

Neither I've found a working solution with this Woox 4-button controller. I'll be using remote switches like the IKEA's one or Aqara Mini Switch (if its short, double and long click is working with ZHA/SkyConnect).

jpa77 commented 1 year ago

Zigbee2MQTT solved my problem, configured this remote with lights on/of and brightness +/-

mycanaletto commented 1 year ago

Zigbee2MQTT a résolu mon problème

We all know that some objects are better managed under Z2M. But here the objective is to make it work properly in ZHA...

mar1u50 commented 1 year ago

ikea.com/pt/pt/p/tradfri-regulador-intensidade-s-fios-smart-branco-70408595 works like a charm

Yes, it works, but the battery lasts only a few weeks :(

rgcouto commented 1 year ago

I've got mine for more than half a year now and it is still rocking it's first battery, maybe you should activate the warranty on the device because there might be something wrong with it.

On Mon, Mar 6, 2023 at 1:19 PM Marius Oancea @.***> wrote:

ikea.com/pt/pt/p/tradfri-regulador-intensidade-s-fios-smart-branco-70408595 https://www.ikea.com/pt/pt/p/tradfri-regulador-intensidade-s-fios-smart-branco-70408595/ works like a charm

Yes, it works, but the battery lasts only a few weeks :(

— Reply to this email directly, view it on GitHub https://github.com/zigpy/zha-device-handlers/issues/1052#issuecomment-1456122195, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABCZJUQYNWNWJGHCYTNXL7TW2XP6PANCNFSM5FESIKLQ . You are receiving this because you authored the thread.Message ID: @.***>

mycanaletto commented 1 year ago

Some series of these small Ikea remotes consume batteries quickly under ZHA or Z2M (I no longer have the link at hand). But not all of them.

I have 8 of them and the only solution I found is to leave them on my old deconz gateway which manages them correctly and where the batteries last more than 1 or 2 years.

sylv1697 commented 11 months ago

Bonjour, peut-on espérer une évolution de ZHA, pour une prise en compte direct des boutons de cette télécommande ?

apn201 commented 9 months ago

Oh no. I just bough this device before reading these comments. It is an universal remote. Why in the world would anyone hardcode it as an alarm control panel? I had a bit similar problem with Tuya scene controller, but luckily there was a magic key combination which changed the behavior. Nothing like that here? Would it even help to have the Nedis hub and program it from there?

teffcz commented 7 months ago

Same problem, any update?

JoeyDieleman78 commented 6 months ago

Also looking for a solution 😅

teeten commented 5 months ago

Same here. I guess an alternative custom integration is needed to make this appear as a simple 4-button remote. Does someone know of a step-by-step tutorial on how to create a custom ZHA integration? I might try it if it is not too complicated.

mycanaletto commented 5 months ago

What I did at the end of my article https://www.canaletto.fr/post/home-assistant-and-alarm-encore

charlierh commented 4 months ago

2024 same problem, no solution... i have a Philips Hue dimer switch, and this one works very well. I think I'll buy another one of these. Tuya only have good open door sensors, but, no motion sensor, no buttons, these devices are a pieces of junk