nymea / nymea-plugins-zigbee

ZigBee related integration plugins for nymea
GNU Lesser General Public License v3.0
0 stars 3 forks source link

[New Device] Schneider Electric FLS/AIRLINK/4 #61

Open akafester opened 1 year ago

akafester commented 1 year ago

Hi

Tried to add this button device to Nymea, but it’s not recognised properly. It’s available in Z2M. Don’t know if that helps :).

Manufacturer: Schneider Electric
Model: FLS/AIRLINK/4
RxOnWhileIdle: false
Basic cluster version: 002.005.029 R
Endpoints
├┬ 21
│├┬ Input clusters
││├─ 0x0001 Power Configuration (Server)
││├─ 0x0000 Basic (Server)
││├─ 0xff17 0xff17 (Server)
││├─ 0x0003 Identify (Server)
││└─ 0x0020 Poll Control (Server)
│└┬ Output clusters
│ ├─ 0x0102 0x102 (Client)
│ ├─ 0x0006 On Off (Client)
│ ├─ 0x0005 Scenes (Client)
│ ├─ 0x0004 Groups (Client)
│ ├─ 0x0019 Ota Upgrade (Client)
│ ├─ 0x0008 Level Control (Client)
│ └─ 0x0003 Identify (Client)
├┬ 22
│├┬ Input clusters
││├─ 0x0001 Power Configuration (Server)
││├─ 0x0000 Basic (Server)
││├─ 0xff17 0xff17 (Server)
││└─ 0x0003 Identify (Server)
│└┬ Output clusters
│ ├─ 0x0102 0x102 (Client)
│ ├─ 0x0006 On Off (Client)
│ ├─ 0x0005 Scenes (Client)
│ ├─ 0x0004 Groups (Client)
│ ├─ 0x0008 Level Control (Client)
│ └─ 0x0003 Identify (Client)
├┬ 23
│├┬ Input clusters
││├─ 0x0001 Power Configuration (Server)
││├─ 0x0000 Basic (Server)
││├─ 0xff17 0xff17 (Server)
││└─ 0x0003 Identify (Server)
│└┬ Output clusters
│ ├─ 0x0102 0x102 (Client)
│ ├─ 0x0006 On Off (Client)
│ ├─ 0x0005 Scenes (Client)
│ ├─ 0x0004 Groups (Client)
│ ├─ 0x0008 Level Control (Client)
│ └─ 0x0003 Identify (Client)
└┬ 24
 ├┬ Input clusters
 │├─ 0x0001 Power Configuration (Server)
 │├─ 0x0000 Basic (Server)
 │├─ 0xff17 0xff17 (Server)
 │└─ 0x0003 Identify (Server)
 └┬ Output clusters
  ├─ 0x0102 0x102 (Client)
  ├─ 0x0006 On Off (Client)
  ├─ 0x0005 Scenes (Client)
  ├─ 0x0004 Groups (Client)
  ├─ 0x0008 Level Control (Client)
  └─ 0x0003 Identify (Client)
mzanetti commented 1 year ago

I've added support for this and the next experimental build will have a new plugin named nymea-plugin-zigbee-schneiderelectric.

As I don't have such a device, I'd need you to test it. Please upgrade to experimental (the entire nymea system) or set up a test environment if you have a spare zigbee adapter available. Then install the new plugin. It should support both modes (single and dual). Please report back.

akafester commented 1 year ago

Hi again.

I have now tested the device, and i can get actions through. It exposes 4 buttons, but only 2 are active, 21 and 22. Buttons hooked to endpoint 23 and 24 doesn't do anything, which is expected.

There's a few things missing:

EDIT: I have some other Schneider devices (not all unfortunately). I will open some issues on those as well, when i get the time.

EDIT2: Nymea seems to think the device is offline after a while, and then greys it out for configuration.

mzanetti commented 1 year ago

Hmm... I've looked at the z2m code and they also only bind to endpoint 21 and 22, documentation saying that in dual mode it would send presses on those endpoints, in single channel mode only on endpoint 21... Which buttons are hooked up to EP 23 and 24 and aren't working?

Afaict, the device does not provide a PowerConfiguration input cluster, which would be required for battery status reporting. Also z2m doesn't seem to do anything in regard to the battery.

As per zigbee spec, at least on/off doesn't provide press/release events. It only fires single on/off commands. For the LevelControl cluster (up/down), in theory there would be the possibility to implement start/stop (which often is pressed/released). However, as every remote control works differently, I can't tell for sure if this one actually does that (probably it does). Given those variations in devices, and espeicially since non-zigbee devices again act totally different, nymea tries to unify the behavior across all button devices by sending repeated up/down commands for the duration while it is pressed.

mzanetti commented 1 year ago

I've now added some code to also bind to endpoints 23 and 24 and added some more debug output. Once it's build (in a couple of hours), please upgrade, re-add the remote to the network and then check out the logs (enable the ZigbeeSchneiderElectric category). Press each button and see what events in the logs it produces, then tell me which lines are produced by which buttons please.

akafester commented 1 year ago

I'm sorry if i confused you. That was not my intention.

Hmm... I've looked at the z2m code and they also only bind to endpoint 21 and 22, documentation saying that in dual mode it would send presses on those endpoints, in single channel mode only on endpoint 21... Which buttons are hooked up to EP 23 and 24 and aren't working?

You are correct, endpoint 23 and 24 doesn't do anything. They don't generate any actions. Endpoint 21, handles the two buttons on top, and endpoint 22, handles those on the bottom.

Afaict, the device does not provide a PowerConfiguration input cluster, which would be required for battery status reporting. Also z2m doesn't seem to do anything in regard to the battery.

Which is weird, because i believe it works in Deconz. But i can't back that claim up. I just know that the official gateway can readout the battery, so it's probably manufacture specific.

As per zigbee spec, at least on/off doesn't provide press/release events. It only fires single on/off commands. For the LevelControl cluster (up/down), in theory there would be the possibility to implement start/stop (which often is pressed/released). However, as every remote control works differently, I can't tell for sure if this one actually does that (probably it does). Given those variations in devices, and espeicially since non-zigbee devices again act totally different, nymea tries to unify the behavior across all button devices by sending repeated up/down commands for the duration while it is pressed.

I know that Hubitat and Deconz indicates Press, Hold and Release as default. Double and triple press is also a thing, but a bit more rare. And i know that this device has the capability as i "wrote" a driver for hubitat for it.

mzanetti commented 1 year ago

You are correct, endpoint 23 and 24 doesn't do anything. They don't generate any actions. Endpoint 21, handles the two buttons on top, and endpoint 22, handles those on the bottom.

So everything is ok? I'll drop the code which I've added for EP 23 and 24 again then.

Afaict, the device does not provide a PowerConfiguration input cluster, which would be required for battery status reporting. Also z2m doesn't seem to do anything in regard to the battery.

Which is weird, because i believe it works in Deconz. But i can't back that claim up. I just know that the official gateway can readout the battery, so it's probably manufacture specific.

Well, there is an unknown cluster with ID 0xff17 on the device... That seems to be a manufacturer specific one... z2m doesn't handle it, perhaps deconz does? Do you happen to know where to find the device "drivers" for deconz?

As per zigbee spec, at least on/off doesn't provide press/release events. It only fires single on/off commands. For the LevelControl cluster (up/down), in theory there would be the possibility to implement start/stop (which often is pressed/released). However, as every remote control works differently, I can't tell for sure if this one actually does that (probably it does). Given those variations in devices, and espeicially since non-zigbee devices again act totally different, nymea tries to unify the behavior across all button devices by sending repeated up/down commands for the duration while it is pressed.

I know that Hubitat and Deconz indicates Press, Hold and Release as default. Double and triple press is also a thing, but a bit more rare. And i know that this device has the capability as i "wrote" a driver for hubitat for it.

That would only work using the manufacturer specific cluster again then... The others (namely OnOff and LevelControl) don't support that. OnOff only supports sending on or off commands. The LevelControl does support "Move", "Step" and "Stop" though which could be converted to a press and release I suppose...

akafester commented 1 year ago

You are correct, endpoint 23 and 24 doesn't do anything. They don't generate any actions. Endpoint 21, handles the two buttons on top, and endpoint 22, handles those on the bottom.

So everything is ok? I'll drop the code which I've added for EP 23 and 24 again then.

It would seem so. I will test some more, and get back to you.

Afaict, the device does not provide a PowerConfiguration input cluster, which would be required for battery status reporting. Also z2m doesn't seem to do anything in regard to the battery.

Which is weird, because i believe it works in Deconz. But i can't back that claim up. I just know that the official gateway can readout the battery, so it's probably manufacture specific.

Well, there is an unknown cluster with ID 0xff17 on the device... That seems to be a manufacturer specific one... z2m doesn't handle it, perhaps deconz does? Do you happen to know where to find the device "drivers" for deconz?

I can only find this: https://github.com/dresden-elektronik/deconz-rest-plugin/blob/master/devices/wiser/fuga_4button_battery_switch.json It does mention the battery config. I will see if i can connect it to a Deconz bridge and see if it works or not, if needed.

I know that Hubitat and Deconz indicates Press, Hold and Release as default. Double and triple press is also a thing, but a bit more rare. And i know that this device has the capability as i "wrote" a driver for hubitat for it.

That would only work using the manufacturer specific cluster again then... The others (namely OnOff and LevelControl) don't support that. OnOff only supports sending on or off commands. The LevelControl does support "Move", "Step" and "Stop" though which could be converted to a press and release I suppose...

This is also visible in the Deconz DDF file above.

mzanetti commented 1 year ago

Ok... Now I feel stupid... Why did I miss the PowerConfiguration cluster? Anyhow, added battery handling now.

I still can't really make much sense of the pressed/released. But perhaps it would make sense if you enable logging for the ZigbeeSchneiderElectric category and evaluate the log of the events the device sends when pressing the buttons.

akafester commented 1 year ago

Ok... Now I feel stupid... Why did I miss the PowerConfiguration cluster? Anyhow, added battery handling now.

I've tried this new version. Buttons still register, but i still see 4 different devices in the 'Things' section. I would expect 1 device, with 4 different functions like the Ikea Remote.

Battery isn't reporting as of yet, but i will give it some time.

I still can't really make much sense of the pressed/released. But perhaps it would make sense if you enable logging for the ZigbeeSchneiderElectric category and evaluate the log of the events the device sends when pressing the buttons.

The way that Deconz handles it: https://dresden-elektronik.github.io/deconz-rest-doc/endpoints/sensors/button_events/#ikea-tradfri-round-5-button-remote Every button is bound to the same logic.

Hubitat does something like that. I put together a driver for this button, and if you can make sense of it, it's defined from line 128.

https://github.com/akafester/Hubitat/blob/main/Drivers/user_driver_Hubitat_550D6001_LK_Fuga_battery_4_button_730.groovy

When controlling a light you would put together some logic that would begin a fade with a hold, and stop the fade with the release.

mzanetti commented 1 year ago

If you have 4 things than something is fishy.... can you tell me the thing class id of those things? in main menu -> configure things -> open it and it should tell the thing class id there.

akafester commented 1 year ago

If you have 4 things than something is fishy.... can you tell me the thing class id of those things? in main menu -> configure things -> open it and it should tell the thing class id there.

Not sure if this is what you want, but this is what I could find:

Type Remote control b909dc16-61fa-4c5f-ad7d-195327f78f8d

Interfaces Multibutton, button, wirelessconnectable, connectable, battery

And the ID of the thing: ea6e8202-255d-41a2-b6f0-cfaf31120639

Can't locate a class ID

mzanetti commented 1 year ago

right... that's what I was suspecting... it's picked up by the wrong plugin. Did you install the new nymea-plugin-zigbee-schneiderelectric?

akafester commented 1 year ago

I’m not at home right now, so I can’t try to reconnect it. I’m almost certain that I did yesterday after an update though. The plug-in is installed with version 1.8.0+202303301613 Med venlig hilsenStephan Heinrichsen Den 31. mar. 2023 kl. 12.27 skrev Michael Zanetti @.***>: right... that's what I was suspecting... it's picked up by the wrong plugin. Did you install the new nymea-plugin-zigbee-schneiderelectric?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

mzanetti commented 1 year ago

After installation of the new plugin you'd have to remove and add the device from the network again, as a newly added plugin is not allowed to steal a device from another plugin which had picked it up earlier.

akafester commented 1 year ago

After installation of the new plugin you'd have to remove and add the device from the network again, as a newly added plugin is not allowed to steal a device from another plugin which had picked it up earlier.

I know, and I'm pretty sure I did that, more than once. And I'm pretty sure I did it yesterday to test the battery change. Will verify later.

akafester commented 1 year ago

After installation of the new plugin you'd have to remove and add the device from the network again, as a newly added plugin is not allowed to steal a device from another plugin which had picked it up earlier.

I know, and I'm pretty sure I did that, more than once. And I'm pretty sure I did it yesterday to test the battery change. Will verify later.

I have just verified that it's recognised as a remote control, even after removed from the network, Nymea and repaired.

mzanetti commented 1 year ago

Ok... something's wrong then, but I can't spot the mistake yet. I've added some more logging. Please update, enable the ZigbeeSchneiderElectric logging category and check the logs while adding the device to the network.

akafester commented 1 year ago

Ok... something's wrong then, but I can't spot the mistake yet. I've added some more logging. Please update, enable the ZigbeeSchneiderElectric logging category and check the logs while adding the device to the network.

I've now tried with a fully updated Nymea. Reset the button, and repaired with Nymea. This is the logs (I've tried to clean it up a bit):

 I | ZigbeeNetwork: Evaluating reachable state of nodes...
 I | ZigbeeNetwork: ZigbeeNode(0xd61f, 0C:43:14:FF:FE:41:80:82, IKEA of Sweden (0x117c), TRADFRI SHORTCUT Button, End device, RxOn:false) has been seen the last time "00:01:32" ago.
 I | ZigbeeNetwork: ZigbeeNode(0x66e4, BC:33:AC:FF:FE:22:C6:5B, IKEA of Sweden (0x117c), TRADFRI remote control, End device, RxOn:false) has been seen the last time "00:00:20" ago.
 I | ZigbeeNetwork: ZigbeeNode(0x1ee4, 58:8E:81:FF:FE:FB:9C:73, _TZ3000_gek6snaj (0x1002), TS0505A, Router, RxOn:true) is not reachable. Scheduling LQI request.
 I | ZigbeeNetwork: ZigbeeNode(0x0977, F0:82:C0:FF:FE:9C:12:AD, IKEA of Sweden (0x117c), FYRTUR block-out roller blind, End device, RxOn:false) has been seen the last time "00:00:18" ago.
 I | ZigbeeNetwork: Polling Node 7908 "_TZ3000_gek6snaj" "TS0505A" for reachability
 W | PhilipsHue: Failed to discover Hue Bridge sensors: Invalid error message format
 W | ZigbeeNetwork: Failed to send request to device Request(ID:195, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::MgmtLqiRequest, NWK address:"0x1ee4", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0xa6 0x00") ZigbeeNetworkReply::ErrorZigbeeNwkStatusError Zigbee::ZigbeeNwkLayerStatusRouteDiscoveryFailed
 W | ZigbeeDeviceObject: Failed to send request ZigbeeDeviceProfile::MgmtLqiRequest ZigbeeNode(0x1ee4, 58:8E:81:FF:FE:FB:9C:73, _TZ3000_gek6snaj (0x1002), TS0505A, Router, RxOn:true) Zigbee::ZigbeeNwkLayerStatusRouteDiscoveryFailed
 W | ZigbeeDeviceObject: ZDO request error for TSN: 166
 W | ZigbeeNode: Failed to read neighbor table ZigbeeDeviceObjectReply::ErrorZigbeeNwkStatusError
 W | ZigbeeNetwork: ZigbeeNode(0x1ee4, 58:8E:81:FF:FE:FB:9C:73, _TZ3000_gek6snaj (0x1002), TS0505A, Router, RxOn:true) seems not to be reachable ZigbeeReply::ErrorZigbeeError
 I | ZigbeeNetwork: Device announced "0xc6a9" "68:0A:E2:FF:FE:10:69:7C" "0x80"
 I | Zigbee: Node joined the network "{6f78c69f-a1ea-4eee-ba70-47fba27564b0}" ZigbeeNode(0xc6a9, 68:0A:E2:FF:FE:10:69:7C, 0x0000, End device, RxOn:false)
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:196, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::NodeDescriptorRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x00 0xa9 0xc6")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:197, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::PowerDescriptorRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x01 0xa9 0xc6")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:198, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::ActiveEndpointsRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x02 0xa9 0xc6")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:199, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::SimpleDescriptorRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x03 0xa9 0xc6 0x15")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:200, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::SimpleDescriptorRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x04 0xa9 0xc6 0x16")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:201, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::SimpleDescriptorRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x05 0xa9 0xc6 0x17")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:202, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::SimpleDescriptorRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x06 0xa9 0xc6 0x18")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:203, Zigbee::ZigbeeProfileHomeAutomation, ZigbeeClusterLibrary::ClusterIdBasic, NWK address:"0xc6a9", Destination EP:"0x15", Source EP:"0x01", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x10 0x14 0x00 0x04 0x00")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:204, Zigbee::ZigbeeProfileHomeAutomation, ZigbeeClusterLibrary::ClusterIdBasic, NWK address:"0xc6a9", Destination EP:"0x15", Source EP:"0x01", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x10 0x15 0x00 0x05 0x00")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:205, Zigbee::ZigbeeProfileHomeAutomation, ZigbeeClusterLibrary::ClusterIdBasic, NWK address:"0xc6a9", Destination EP:"0x15", Source EP:"0x01", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x10 0x16 0x00 0x00 0x40")
 I | ZigbeeNetwork: Add node ZigbeeNode(0xc6a9, 68:0A:E2:FF:FE:10:69:7C, Schneider Electric (0x105e), FLS/AIRLINK/4, End device, RxOn:false)
 I | Zigbee: Node added to ZigbeeNetwork(00:21:2E:FF:FF:06:1B:31, {6f78c69f-a1ea-4eee-ba70-47fba27564b0}, Zigbee::ZigbeeBackendTypeDeconz, Channel: 15, ZigbeeNetwork::StateRunning) ZigbeeNode(0xc6a9, 68:0A:E2:FF:FE:10:69:7C, Schneider Electric (0x105e), FLS/AIRLINK/4, End device, RxOn:false)
 I | Zigbee: --> ZigbeeNode(0xc6a9, 68:0A:E2:FF:FE:10:69:7C, Schneider Electric (0x105e), FLS/AIRLINK/4, End device, RxOn:false)
 I | Zigbee:   ZigbeeNodeEndpoint(0x15, Zigbee::ZigbeeProfileHomeAutomation, Zigbee::HomeAutomationDeviceDimmableSwitch)
 I | Zigbee:   Manufacturer: "Schneider Electric"
 I | Zigbee:   Model "FLS/AIRLINK/4"
 I | Zigbee:   Version "002.005.029 R"
 I | Zigbee:     Input clusters ( 5 )
 I | Zigbee:      - ZigbeeCluster(0x0003, Identify, Server)
 I | Zigbee:      - ZigbeeCluster(0x0000, Basic, Server)
 I | Zigbee:        -  ZigbeeClusterAttribute(0x0004, ZigbeeDataType(Character string, Schneider Electric))
 I | Zigbee:        -  ZigbeeClusterAttribute(0x4000, ZigbeeDataType(Character string, 002.005.029 R))
 I | Zigbee:        -  ZigbeeClusterAttribute(0x0005, ZigbeeDataType(Character string, FLS/AIRLINK/4))
 I | Zigbee:      - ZigbeeCluster(0x0001, PowerConfiguration, Server)
 I | Zigbee:      - ZigbeeCluster(0x0020, PollControl, Server)
 I | Zigbee:      - ZigbeeCluster(0xff17, Unknown, Server)
 I | Zigbee:     Output clusters ( 7 )
 I | Zigbee:      - ZigbeeCluster(0x0102, WindowCovering, Client)
 I | Zigbee:      - ZigbeeCluster(0x0003, Identify, Client)
 I | Zigbee:      - ZigbeeCluster(0x0006, OnOff, Client)
 I | Zigbee:      - ZigbeeCluster(0x0004, Groups, Client)
 I | Zigbee:      - ZigbeeCluster(0x0005, Scenes, Client)
 I | Zigbee:      - ZigbeeCluster(0x0008, LevelControl, Client)
 I | Zigbee:      - ZigbeeCluster(0x0019, OtaUpgrade, Client)
 I | Zigbee:   ZigbeeNodeEndpoint(0x16, Zigbee::ZigbeeProfileHomeAutomation, Zigbee::HomeAutomationDeviceDimmableSwitch)
 I | Zigbee:     Input clusters ( 4 )
 I | Zigbee:      - ZigbeeCluster(0x0003, Identify, Server)
 I | Zigbee:      - ZigbeeCluster(0x0000, Basic, Server)
 I | Zigbee:      - ZigbeeCluster(0x0001, PowerConfiguration, Server)
 I | Zigbee:      - ZigbeeCluster(0xff17, Unknown, Server)
 I | Zigbee:     Output clusters ( 6 )
 I | Zigbee:      - ZigbeeCluster(0x0102, WindowCovering, Client)
 I | Zigbee:      - ZigbeeCluster(0x0003, Identify, Client)
 I | Zigbee:      - ZigbeeCluster(0x0006, OnOff, Client)
 I | Zigbee:      - ZigbeeCluster(0x0004, Groups, Client)
 I | Zigbee:      - ZigbeeCluster(0x0005, Scenes, Client)
 I | Zigbee:      - ZigbeeCluster(0x0008, LevelControl, Client)
 I | Zigbee:   ZigbeeNodeEndpoint(0x17, Zigbee::ZigbeeProfileHomeAutomation, Zigbee::HomeAutomationDeviceDimmableSwitch)
 I | Zigbee:     Input clusters ( 4 )
 I | Zigbee:      - ZigbeeCluster(0x0003, Identify, Server)
 I | Zigbee:      - ZigbeeCluster(0x0000, Basic, Server)
 I | Zigbee:      - ZigbeeCluster(0x0001, PowerConfiguration, Server)
 I | Zigbee:      - ZigbeeCluster(0xff17, Unknown, Server)
 I | Zigbee:     Output clusters ( 6 )
 I | Zigbee:      - ZigbeeCluster(0x0102, WindowCovering, Client)
 I | Zigbee:      - ZigbeeCluster(0x0003, Identify, Client)
 I | Zigbee:      - ZigbeeCluster(0x0006, OnOff, Client)
 I | Zigbee:      - ZigbeeCluster(0x0004, Groups, Client)
 I | Zigbee:      - ZigbeeCluster(0x0005, Scenes, Client)
 I | Zigbee:      - ZigbeeCluster(0x0008, LevelControl, Client)
 I | Zigbee:   ZigbeeNodeEndpoint(0x18, Zigbee::ZigbeeProfileHomeAutomation, Zigbee::HomeAutomationDeviceDimmableSwitch)
 I | Zigbee:     Input clusters ( 4 )
 I | Zigbee:      - ZigbeeCluster(0x0003, Identify, Server)
 I | Zigbee:      - ZigbeeCluster(0x0000, Basic, Server)
 I | Zigbee:      - ZigbeeCluster(0x0001, PowerConfiguration, Server)
 I | Zigbee:      - ZigbeeCluster(0xff17, Unknown, Server)
 I | Zigbee:     Output clusters ( 6 )
 I | Zigbee:      - ZigbeeCluster(0x0102, WindowCovering, Client)
 I | Zigbee:      - ZigbeeCluster(0x0003, Identify, Client)
 I | Zigbee:      - ZigbeeCluster(0x0006, OnOff, Client)
 I | Zigbee:      - ZigbeeCluster(0x0004, Groups, Client)
 I | Zigbee:      - ZigbeeCluster(0x0005, Scenes, Client)
 I | Zigbee:      - ZigbeeCluster(0x0008, LevelControl, Client)
 I | ZigbeeResource: ZigbeeNode(0xc6a9, 68:0A:E2:FF:FE:10:69:7C, Schneider Electric (0x105e), FLS/AIRLINK/4, End device, RxOn:false) joined the network ZigbeeNetwork(00:21:2E:FF:FF:06:1B:31, {6f78c69f-a1ea-4eee-ba70-47fba27564b0}, Zigbee::ZigbeeBackendTypeDeconz, Channel: 15, ZigbeeNetwork::StateRunning)
 I | ZigbeeSchneiderElectric: Handle node: 4190 Manufacturer: "Schneider Electric" Model: "FLS/AIRLINK/4"
 I | ZigbeeSchneiderElectric: Not a Schneider Electric device. Ignoring...
 W | ZigbeeLumi: Unhandled Lumi device: "FLS/AIRLINK/4"
 I | ZigbeeResource: Node ZigbeeNode(0xc6a9, 68:0A:E2:FF:FE:10:69:7C, Schneider Electric (0x105e), FLS/AIRLINK/4, End device, RxOn:false) taken by handler "Generic"
 I | ZigbeeNetwork: Received unhandled broadcast ZDO indication APSDE-DATA.indication(NWK address:"0xfffd", Destination EP:"0x00", Source EP:"0x00", Source NWK address:"0xc6a9", Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::MatchDescriptorsRequest, ASDU: "0x02 0xfd 0xff 0x04 0x01 0x01 0x19 0x00 0x00", LQI: 103, RSSI: -81dBm)
 W | ZigbeeController: Controller busy. Rescheduling command.
 W | ZigbeeController: Controller busy. Rescheduling command.
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:207, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x08 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x15 0x06 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 W | ZigbeeController: Controller busy. Rescheduling command.
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:208, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x09 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x15 0x08 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 W | ZigbeeController: Controller busy. Rescheduling command.
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:209, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x0a 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x16 0x01 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 W | ZigbeeController: Controller busy. Rescheduling command.
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:206, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x07 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x15 0x01 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 W | ZigbeeController: Controller busy. Rescheduling command.
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:210, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x0b 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x16 0x06 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:211, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x0c 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x16 0x08 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:212, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x0d 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x17 0x01 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:213, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x0e 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x17 0x06 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:214, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x0f 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x17 0x08 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 W | PhilipsHue: Failed to discover Hue Bridge sensors: Invalid error message format
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:215, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x10 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x18 0x01 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:216, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x11 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x18 0x06 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:217, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x12 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x18 0x08 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:218, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::MgmtBindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x13 0x00")
 W | ZigbeeDeviceObject: Unhandled ZDO indication ZigbeeNode(0xc6a9, 68:0A:E2:FF:FE:10:69:7C, Schneider Electric (0x105e), FLS/AIRLINK/4, End device, RxOn:false) APSDE-DATA.indication(NWK address:"0x0000", Destination EP:"0x00", Source EP:"0x00", Source NWK address:"0xc6a9", Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindResponse, ASDU: "0x07 0x00", LQI: 103, RSSI: -81dBm) DeviceProfileAdpu(SQN: 7, ZigbeeDeviceProfile::StatusSuccess, "0x0000", Payload: "")
 W | PhilipsHue: Failed to discover Hue Bridge sensors: Invalid error message format
 W | ZigbeeDeviceObject: ZDO request error for TSN: 16
 W | ZigbeeGeneric: Failed to bind ZigbeeClusterLibrary::ClusterIdPowerConfiguration on EP 24: ZigbeeDeviceObjectReply::ErrorTimeout
 W | ZigbeeGeneric: Retrying...
 W | ZigbeeDeviceObject: ZDO request error for TSN: 17
 W | ZigbeeGeneric: Failed to bind ZigbeeClusterLibrary::ClusterIdOnOff on EP 24: ZigbeeDeviceObjectReply::ErrorTimeout
 W | ZigbeeGeneric: Retrying...
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:219, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x14 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x18 0x01 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:220, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x15 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x18 0x06 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 W | ZigbeeDeviceObject: ZDO request error for TSN: 18
 W | ZigbeeGeneric: Failed to bind ZigbeeClusterLibrary::ClusterIdLevelControl on EP 24: ZigbeeDeviceObjectReply::ErrorTimeout
 W | ZigbeeGeneric: Retrying...
 W | ZigbeeDeviceObject: ZDO request error for TSN: 19
 W | ZigbeeNode: Failed to read binding table ZigbeeDeviceObjectReply::ErrorTimeout
 I | ZigbeeNetwork: Network request sent successfully to device Request(ID:221, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::BindRequest, NWK address:"0xc6a9", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x16 0x7c 0x69 0x10 0xfe 0xff 0xe2 0x0a 0x68 0x18 0x08 0x00 0x03 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x01")
 W | PhilipsHue: Failed to discover Hue Bridge sensors: Invalid error message format
 I | ZigbeeNetwork: Received unhandled broadcast ZDO indication APSDE-DATA.indication(NWK address:"0xfffd", Destination EP:"0x00", Source EP:"0x00", Source NWK address:"0xc6a9", Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::NetworkAddressRequest, ASDU: "0x83 0x31 0x1b 0x06 0xff 0xff 0x2e 0x21 0x00 0x00 0x00", LQI: 143, RSSI: -76dBm)
 W | Thing: No such state "batteryCritical" in "FYRTUR block-out roller blind (IKEA of Sweden - FYRTUR block-out roller blind)" "(fyrtur)"
 I | ZigbeeNetwork: Evaluating reachable state of nodes...
 I | ZigbeeNetwork: ZigbeeNode(0xd61f, 0C:43:14:FF:FE:41:80:82, IKEA of Sweden (0x117c), TRADFRI SHORTCUT Button, End device, RxOn:false) has been seen the last time "00:00:29" ago.
 I | ZigbeeNetwork: ZigbeeNode(0x66e4, BC:33:AC:FF:FE:22:C6:5B, IKEA of Sweden (0x117c), TRADFRI remote control, End device, RxOn:false) has been seen the last time "00:01:20" ago.
 I | ZigbeeNetwork: ZigbeeNode(0x1ee4, 58:8E:81:FF:FE:FB:9C:73, _TZ3000_gek6snaj (0x1002), TS0505A, Router, RxOn:true) is not reachable. Scheduling LQI request.
 I | ZigbeeNetwork: ZigbeeNode(0x0977, F0:82:C0:FF:FE:9C:12:AD, IKEA of Sweden (0x117c), FYRTUR block-out roller blind, End device, RxOn:false) has been seen the last time "00:00:05" ago.
 I | ZigbeeNetwork: ZigbeeNode(0xc6a9, 68:0A:E2:FF:FE:10:69:7C, Schneider Electric (0x105e), FLS/AIRLINK/4, End device, RxOn:false) has been seen the last time "00:00:01" ago.
 I | ZigbeeNetwork: Polling Node 7908 "_TZ3000_gek6snaj" "TS0505A" for reachability
 W | PhilipsHue: Failed to discover Hue Bridge sensors: Invalid error message format
 W | ZigbeeNetwork: Failed to send request to device Request(ID:222, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::MgmtLqiRequest, NWK address:"0x1ee4", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0xa7 0x00") ZigbeeNetworkReply::ErrorZigbeeNwkStatusError Zigbee::ZigbeeNwkLayerStatusRouteDiscoveryFailed
 W | ZigbeeDeviceObject: Failed to send request ZigbeeDeviceProfile::MgmtLqiRequest ZigbeeNode(0x1ee4, 58:8E:81:FF:FE:FB:9C:73, _TZ3000_gek6snaj (0x1002), TS0505A, Router, RxOn:true) Zigbee::ZigbeeNwkLayerStatusRouteDiscoveryFailed
 W | ZigbeeDeviceObject: ZDO request error for TSN: 167
 W | ZigbeeNode: Failed to read neighbor table ZigbeeDeviceObjectReply::ErrorZigbeeNwkStatusError
 W | ZigbeeNetwork: ZigbeeNode(0x1ee4, 58:8E:81:FF:FE:FB:9C:73, _TZ3000_gek6snaj (0x1002), TS0505A, Router, RxOn:true) seems not to be reachable ZigbeeReply::ErrorZigbeeError
mzanetti commented 1 year ago

Thanks. That was helpful. Found the mistake. the next build should cause it to be picked up by the correct plugin.

akafester commented 1 year ago

And once again, life got in the way 😃. The device is now picked up correctly and i have setup some Magic on it. BUT.....

I can see that you check for the release function in the logs. I have cleaned up the logs a bit, but left some other stuff in, you might, might not, find interesting:

 W | Sonos: Request error: 429 "Error transferring https://api.ws.sonos.com/control/api/v1/households/Sonos_jS4lPjb1bjrSLYJ6Hw8JBzIHAf.Yb67eRVxPZ-aBlMfTnGR/groups - server replied: Too Many Requests"
 W | ZigbeeNetwork: Failed to send request to device Request(ID:229, Zigbee::ZigbeeProfileDevice, ZigbeeDeviceProfile::MgmtLqiRequest, NWK address:"0x1ee4", Destination EP:"0x00", Source EP:"0x00", Radius:0, QFlags<Zigbee::ZigbeeTxOption>(ZigbeeTxOptionAckTransmission), "0x86 0x00") ZigbeeNetworkReply::ErrorZigbeeNwkStatusError Zigbee::ZigbeeNwkLayerStatusRouteDiscoveryFailed
 W | ZigbeeDeviceObject: ZDO request error for TSN: 134
 W | ZigbeeNode: Failed to read neighbor table ZigbeeDeviceObjectReply::ErrorZigbeeNwkStatusError
 W | ZigbeeNetwork: ZigbeeNode(0x1ee4, 58:8E:81:FF:FE:FB:9C:73, _TZ3000_gek6snaj (0x1002), TS0505A, Router, RxOn:true) seems not to be reachable ZigbeeReply::ErrorZigbeeError
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandMoveWithOnOff "\x00\xFF" 98 on endpoint 21
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandMoveWithOnOff "\x00\xFF" 98 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) move command received false ZigbeeClusterLevelControl::MoveModeUp 255 98 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) Move up pressed
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) move command received false ZigbeeClusterLevelControl::MoveModeUp 255 98 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) Move up pressed
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandStop "\x00\x00" 99 on endpoint 21
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandStop "\x00\x00" 99 on endpoint 21
 W | Sonos: Request error: 429 "Error transferring https://api.ws.sonos.com/control/api/v1/groups/RINCON_542A1B60BCD401400:3108409232/playback - server replied: Too Many Requests"
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandMove "\x01\xFF\x00\x00" 100 on endpoint 21
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandMove "\x01\xFF\x00\x00" 100 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) move command received false ZigbeeClusterLevelControl::MoveModeDown 255 100 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) Move down pressed
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) move command received false ZigbeeClusterLevelControl::MoveModeDown 255 100 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) Move down pressed
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandStop "\x00\x00" 101 on endpoint 21
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandStop "\x00\x00" 101 on endpoint 21
 W | PhilipsHue: Failed to discover Hue Bridge sensors: Invalid error message format
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOn on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed ON
 W | Sonos: Request error: 429 "Error transferring https://api.ws.sonos.com/control/api/v1/groups/RINCON_347E5CFE33B601400:238577046/playbackMetadata - server replied: Too Many Requests"
 W | Thing: No such state "batteryCritical" in "FYRTUR block-out roller blind (IKEA of Sweden - FYRTUR block-out roller blind)" "(fyrtur)"
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOff on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed OFF
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOn on endpoint 22
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed ON
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOff on endpoint 22
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed OFF
 W | Sonos: Request error: 429 "Error transferring https://api.ws.sonos.com/control/api/v1/groups/RINCON_347E5CFE33B601400:238577046/playback - server replied: Too Many Requests"
 W | Sonos: Request error: 429 "Error transferring https://api.ws.sonos.com/control/api/v1/groups/RINCON_542A1B60BCD401400:3108409232/playback - server replied: Too Many Requests"
mzanetti commented 1 year ago

It's a bit hard for me to follow what exactly is wrong without having such a device... Could you please add some info to each of the logs describing which button produced which line and what you would have expected instead?

akafester commented 1 year ago

It's a bit hard for me to follow what exactly is wrong without having such a device... Could you please add some info to each of the logs describing which button produced which line and what you would have expected instead?

I suspected you would ask me that 😄. I will try to capture a new set of logs, but i noticed that the logs from the Debug page doesn't correlate 100% with the app based one. Will report back. And on that note, could it be possible to have a master switch on the Debug page that turns off all unnecessary logging.

akafester commented 1 year ago

I don't understand it, but the Logs in the app, doesn't match the logs here. The ON and OFF is registered as one and the same in there.

// Pressed Top left button 

 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOn on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed ON

// Pressed Top left button

 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOn on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed ON

// Pressed Top Right button

 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOff on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed OFF

// Pressed Top Right button

 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOff on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed OFF

// Pressed Bottom Left button

 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOn on endpoint 22
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed ON

// Pressed Bottom Left button

 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOn on endpoint 22
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed ON

// Pressed Bottom Right button

 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOff on endpoint 22
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed OFF

// Pressed Bottom Right button

 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) On/off command received ZigbeeClusterOnOff::CommandOff on endpoint 22
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) pressed OFF

// Pressed and held Top Left Button

 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandMoveWithOnOff "\x00\xFF" 19 on endpoint 21
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandMoveWithOnOff "\x00\xFF" 19 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) move command received false ZigbeeClusterLevelControl::MoveModeUp 255 19 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) Move up pressed
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) move command received false ZigbeeClusterLevelControl::MoveModeUp 255 19 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) Move up pressed

// Released

 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandStop "\x00\x00" 20 on endpoint 21
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandStop "\x00\x00" 20 on endpoint 21

// Pressed and held Top Right Button

 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandMove "\x01\xFF\x00\x00" 21 on endpoint 21
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandMove "\x01\xFF\x00\x00" 21 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) move command received false ZigbeeClusterLevelControl::MoveModeDown 255 21 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) Move down pressed
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) move command received false ZigbeeClusterLevelControl::MoveModeDown 255 21 on endpoint 21
 I | ZigbeeSchneiderElectric: Thing(FLS/AIRLINK/4 (Schneider Electric - FLS/AIRLINK/4), id: {75c859d0-5a93-4d9f-b854-f6bf845f4152}, ThingClassId: {38693f57-004b-4d0b-aea3-df1ba7ca244e}) Move down pressed

// Released

 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandStop "\x00\x00" 22 on endpoint 21
 I | ZigbeeSchneiderElectric: Level control command received ZigbeeClusterLevelControl::CommandStop "\x00\x00" 22 on endpoint 21

// Pressed and held Bottom Left Button

NOTHING

// Pressed and held Bottom Right Button

NOTHING
mzanetti commented 1 year ago

ok. found a bug in the code about the bottom up/down being falsely mapped to top up/down