Zigbee - Unable to bind TuYa Knob (TS004F) to group

I have just torn down my zigbee network and repaired each device due to instability.
After adding all mains powered devices, i added most of my end-devices like the dimmer in question.
Before i deleted all entities from my zigbee network, and reset, and repaired them. The dimmer knob worked like a charm. in the same spot.
Now I’m unable to get it to bind to the zigbee group.
I can see that the logbook of the device page i ZHA shows events as i use the device.
And i checked the debug log and saw that (as far as i can tell) the binding was successful:

some debug log
2023-10-28 23:38:54.616 DEBUG (MainThread) [zigpy.zdo] [0xa2eb:zdo] 0xa2eb: Bind_req 70:ac:08:ff:fe:12:52:47, ep: 1, cluster: 768 to group: 0x0003 completed: [<Status.SUCCESS: 0>]
2023-10-28 23:38:54.617 DEBUG (MainThread) [zigpy.zdo] [0xa2eb:zdo] 0xa2eb: Bind_req 70:ac:08:ff:fe:12:52:47, ep: 1, cluster: 4 to group: 0x0003 completed: [<Status.SUCCESS: 0>]
2023-10-28 23:38:54.617 DEBUG (MainThread) [zigpy.zdo] [0xa2eb:zdo] 0xa2eb: Bind_req 70:ac:08:ff:fe:12:52:47, ep: 1, cluster: 3 to group: 0x0003 completed: [<Status.SUCCESS: 0>]
2023-10-28 23:38:54.617 DEBUG (MainThread) [zigpy.zdo] [0xa2eb:zdo] 0xa2eb: Bind_req 70:ac:08:ff:fe:12:52:47, ep: 1, cluster: 8 to group: 0x0003 completed: [<Status.SUCCESS: 0>]
2023-10-28 23:38:54.617 DEBUG (MainThread) [zigpy.zdo] [0xa2eb:zdo] 0xa2eb: Bind_req 70:ac:08:ff:fe:12:52:47, ep: 1, cluster: 4096 to group: 0x0003 completed: [<Status.SUCCESS: 0>]
2023-10-28 23:38:54.617 DEBUG (MainThread) [zigpy.zdo] [0xa2eb:zdo] 0xa2eb: Bind_req 70:ac:08:ff:fe:12:52:47, ep: 1, cluster: 25 to group: 0x0003 completed: [<Status.SUCCESS: 0>]
2023-10-28 23:38:54.617 DEBUG (MainThread) [zigpy.zdo] [0xa2eb:zdo] 0xa2eb: Bind_req 70:ac:08:ff:fe:12:52:47, ep: 1, cluster: 5 to group: 0x0003 completed: [<Status.SUCCESS: 0>]
2023-10-28 23:38:54.617 DEBUG (MainThread) [zigpy.zdo] [0xa2eb:zdo] 0xa2eb: Bind_req 70:ac:08:ff:fe:12:52:47, ep: 1, cluster: 10 to group: 0x0003 completed: [<Status.SUCCESS: 0>]
2023-10-28 23:38:54.617 DEBUG (MainThread) [zigpy.zdo] [0xa2eb:zdo] 0xa2eb: Bind_req 70:ac:08:ff:fe:12:52:47, ep: 1, cluster: 6 to group: 0x0003 completed: [<Status.SUCCESS: 0>]

I also tried unbinding from all groups, then binding to the group i want it to be in, but that made no difference.

Any suggestions on what more i can do to?

Hardware Summary..

HA Yellow, using builtin zigbee radio. (powered via PoE)
Dimmer switch in question: TuYa Zigbee 2-in-1 Smart Dimming Switch (ERS-10TZBVK-AA)
Zigbee Group consists of:
TRADFRI LED bulb GU10 400 lumen
GUNNARP panel round

Similar discussions without a fix for me

Unable to bind Zigbee devices with ZHA
Help with binding
(i tried binding directly to devices) Reddit - Dive into anything / ZHA 3/4 bindings stopped working and now unable to re-bind - #3 by HarvsG
Unable to control zigbee light bulb from from HA but binding to remote control works

There seems to be a quirk for TS004F - has that been applied?

As far as i can tell, yes, it seems to have added that quirk automatically.
Although, are the quirks mostly for interpenetrating what a devices cluster should map to in context of Home Assistant services, and such?
I don’t have a good grasp on quirk’s yet, so i may be mistaken.

I might be asking the obvious, but do you keep the device awake (keep pressing the button) while trying to bind ?

Ha! I spent several bad-tempered hours trying to get my Hue dimmer switches to bind before I realised that! :rofl:

There’s another post about the Tuya smart knob here:

Someone seems to have got it working with a custom quirk on top of the built-in one.

Who has? :roll_eyes:

A great question to ask!
And yes, i make sure to wake it before and immediately after clicking bind :slight_smile:

My assumption regarding quirks is that they are there to help Home Assistant make sense of the command/events/capabilities of devices.
Based on that assumption, any quirk would probably not help me get the binding to work.

Although, if the quirks also help HA with sending commands like “bind to this group” then my assumption is invalid, and a custom quirk could solve my issue.

I’ll try to make sense of the one you shared, and see if it could help the binding process.

Thanks for the help so far!

You can use zha_toolkit.binds_get to verify the bindings that are active on your devices.

1 Like

quirks can also influence binding:
https://github.com/zigpy/zha-device-handlers/blob/ddb102c07718e44a4615af13eda2a202f79e8113/zhaquirks/philips/init.py#L96-L100

However, that does not mean that in your case that is important.

For tuya, binding the power cluster is prevented:
https://github.com/zigpy/zha-device-handlers/blob/ddb102c07718e44a4615af13eda2a202f79e8113/zhaquirks/tuya/init.py#L881-L883

but that does not impact your usage.

Thank you!
That gives me more stuff to try!
Not entirely sure what to make of the power cluster.

So far i simply tried running the zha_toolkit.binds_get, and verified that it is bound to group 0x..3, and removed it from all groups with zha_toolkit.binds_remove_all, so i could try to bind it again.
but no luck.
Compaing the results of zha_toolkit.binds_get, before and after removing all binds does show that i have less bindings. so probably some residual stuff from when i tried to bind directly to each device in the group.
I’ll have a closer look at the diff soon :slight_smile:

Apparently you can be certain that your TS004F cluster is bound to the group so then this should result in the actions/commands being sent to the group.

You should also verify that the receivers are properly bound.

Finally, you can verify that you receive the commands on Home Assistant (with the proper log levels/by looking at the histrory for the TS004F device) and which commands you receive.

There is also the possibility that the receiving devices do not react to the commands sent by the TS004F.