Koenkk / zigbee2mqtt

Zigbee 🐝 to MQTT bridge 🌉, get rid of your proprietary Zigbee bridges 🔨
https://www.zigbee2mqtt.io
GNU General Public License v3.0
11.78k stars 1.64k forks source link

SMSZB-120 Fails to configure due to TABLE_FULL #23684

Open petermnt opened 3 weeks ago

petermnt commented 3 weeks ago

What happened?

When pairing a SMSZB-120 HW version 5.2.0 I get TABLE_FULL during configuration

It happens on my zstack CC2652P (ZBDongle-P) and on ember on the SLZB-06M. On ezsp on the SLZB-06M it seems to work fine consistently

I have the same (or very similar) issues with 4 different SMSZB-120 devices.

Configuration tries to bind 35: genBasic, genBinaryInput, genPollCtrl, PowerCfg, ssIasWd, ssIasZone 38: Temperature

After it fails to configure I can manage to manually bind some. But if I check all of them (especially the ssIas ones I get the TABLE_FULL eventually)

What did you expect to happen?

No response

How to reproduce it (minimal and precise)

Zigbee2MQTT version

1.39.1

Adapter firmware version

EmberZNet 7.4.1 & zStack3x0 20230507

Adapter

SLZB-06M & ZBDongle-P

Setup

HA Add-on & x86-64 LXC

Debug log

ember.txt

ezsp_success.txt

mrmaximas commented 3 weeks ago

try this https://github.com/Koenkk/Z-Stack-firmware/discussions/505

petermnt commented 3 weeks ago

zstack new firmware.txt

Same problem with the new firmware.

[2024-08-22 00:26:57] debug:    zh:controller:endpoint: Error: Bind 0x0015bc0031026dbb/35 genBinaryInput from '0x00124b002c3fdedb/1' failed (ZDO error: bind failed with status 'TABLE_FULL' (140))
Koenkk commented 3 weeks ago

On ezsp on the SLZB-06M it seems to work fine consistently

This is because ezsp doesn't check the result of the device, it ignores the error.

Does the device work correctly?

petermnt commented 3 weeks ago

It seems to depend on what actually manages to bind and what doesn't. (It's also a bit hard to test all aspects of the device)

It seems that it never manages to bind all 7 things, but does seem to work (at least the temperature, power and test) in some attempts.

Could it be that it doesn't need to bind (or support) all 7 items? And is there any way to figure out which ones would be optional/unnecessary?

It seems very consistent with all 4 SMSZB-120's, so it does sound like the are behaving 'as designed'. (But I have no knowledge of low level Zigbee things, so I'm not sure who decides what should be bound, or what binding even really means)

Koenkk commented 3 weeks ago

Could you check if the issue is fixed with the following external converter:

petermnt commented 3 weeks ago

Thanks for the suggestion. I am currently unable to test it but I will test it as soon as I'm back.

RobLeighton67 commented 1 week ago

I'm receiving the same error during pairing with a CC2652P coordinator - Sonoff P (firmware 240315) . Pi Zero - z2m 1.40.0 latest build. Device seems to working OK.

peter4200 commented 1 week ago

I have the same problem using a Sonoff Dongle-E and frient SMSZB-120

Zigbee2MQTT version                 1.40.0 commit: unknown
Coordinator type                    EmberZNet
Coordinator revision                7.4.3 [GA]
Frontend version                    0.7.4
zigbee-herdsman-converters version  20.8.4
zigbee-herdsman version             0.57.1

I got these errors in the log:

2024-09-02 19:50:16zh:controller: Interview failed for '0x0015bc00310106fa with error 'Error: [ZDO] Failed response for '16835' cluster '32772' Status 'INV_REQUESTTYPE'.'

2024-09-02 19:50:16z2m: Failed to interview '0x0015bc00310106fa', device has not successfully been paired

2024-09-02 19:56:46z2m: Failed to configure '0x0015bc00310106fa', attempt 3 (Error: Bind 0x0015bc00310106fa/35 genBinaryInput from '0xb43522fffe10c87e/1' failed ([ZDO] Failed response for '16835' cluster '32801' Status 'TABLE_FULL'.) at EmberOneWaitress.resolveZDO (/app/node_modules/zigbee-herdsman/src/adapter/ember/adapter/oneWaitress.ts:139:35) at EmberAdapter.onZDOResponse (/app/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:556:30) at Ezsp.emit (node:events:517:28) at Ezsp.ezspIncomingMessageHandler (/app/node_modules/zigbee-herdsman/src/adapter/ember/ezsp/ezsp.ts:5249:18) at Ezsp.callbackDispatch (/app/node_modules/zigbee-herdsman/src/adapter/ember/ezsp/ezsp.ts:782:26) at Ezsp.onAshFrame (/app/node_modules/zigbee-herdsman/src/adapter/ember/ezsp/ezsp.ts:398:22) at UartAsh.emit (node:events:517:28) at Immediate.<anonymous> (/app/node_modules/zigbee-herdsman/src/adapter/ember/uart/ash.ts:1169:45) at processImmediate (node:internal/timers:476:21))
Koenkk commented 1 week ago

@peter4200 please post the debug log of this

See this on how to enable debug logging.

peter4200 commented 1 week ago

This one? log.log

Koenkk commented 1 week ago

Yes, but can you:

peter4200 commented 1 week ago

Forced remove of the device Turned on debug logging Restareted z2m Paired the device

log.log

Koenkk commented 1 week ago

Could you check if the issue is fixed with the following external converter:

peter4200 commented 1 week ago

Strange, I have followed the instructions but the description does not change to CUSTOM. I can see in the log that ext_converter.js is being loaded. I have also tried deleting the device and adding it again. Nothing helps. What am I doing wrong?

Koenkk commented 1 week ago

Forgot to add it, try with https://gist.github.com/Koenkk/3311969512f2e4307dcee8b6a22e1cbb

peter4200 commented 1 week ago

Should I save ext.js i the same folder as configuration.yams and ext_converter.js? And should it be added to external_converters i configuration.yaml?

Koenkk commented 1 week ago

See https://www.zigbee2mqtt.io/guide/configuration/more-config-options.html#external-converters

eerr0EERR commented 1 week ago

Z2M: 1.40.0-dev commit: [0d46354] - zStack3x0: 20230507 Force remove: "0x0015bc003100dd4e" Log: debug External convertor: https://gist.github.com/Koenkk/3311969512f2e4307dcee8b6a22e1cbb Restart Z2M => log in annex (filtered out all but "0x0015bc003100dd4e" related) log.log

After pairing:

Binding in Frontend:

Thx 4 all your wonderful work

peter4200 commented 1 week ago

Both of my alarms are now in Z2M, however Reliability and Fault of both alarms have a status of NULL:

{
    "battery": 100,
    "battery_low": false,
    "linkquality": 196,
    "restore_reports": true,
    "smoke": false,
    "supervision_reports": true,
    "temperature": 26.62,
    "test": false,
    "voltage": 3000,
    "alarm": null,
    "fault": null,
    "max_duration": null,
    "reliability": null
}
petermnt commented 6 days ago

With the custom converter I seem to get the same behaviour as @peter4200 indeed. Alarm, fault and reliability are null. Starting/stopping the alarm and the test boolean seem to work.

Koenkk commented 5 days ago

Updated https://gist.github.com/Koenkk/3311969512f2e4307dcee8b6a22e1cbb, can you try to re-pair the device after this?

eerr0EERR commented 5 days ago

With updated convertor https://gist.github.com/Koenkk/3311969512f2e4307dcee8b6a22e1cbb ... exactly the same as in my previous feedback ... https://github.com/Koenkk/zigbee2mqtt/issues/23684#issuecomment-2335192712

[2024-09-10 16:25:30] error: z2m: Failed to bind cluster 'ssIasWd' from '0x0015bc003100dd4e' to 'Coordinator' (Error: Bind 0x0015bc003100dd4e/35 ssIasWd from '0x00124b00258b8164/1' failed (ZDO error: bind failed with status 'TABLE_FULL' (140))) [2024-09-10 16:25:30] error: z2m: Failed to bind cluster 'ssIasZone' from '0x0015bc003100dd4e' to 'Coordinator' (Error: Bind 0x0015bc003100dd4e/35 ssIasZone from '0x00124b00258b8164/1' failed (ZDO error: bind failed with status 'TABLE_FULL' (140)))

Haraade commented 5 days ago

Managed to get more data from a device after OTA update. But only one of three units. Firmware was obtained from https://github.com/Develco-Products/frient_upgrade_images/blob/main/IntelligentSmokeAlarm_4.0.8.zigbee

{ "battery": 100, "battery_low": false, "enrolled": true, "fault": false, "linkquality": 168, "max_duration": 5, "reliability": "no_fault_detected", "restore_reports": true, "smoke": false, "supervision_reports": true, "temperature": 16.43, "test": false, "update": { "installed_version": 262152, "latest_version": 262152, "state": "idle" }, "voltage": 3000, "zone_id": 23 }

peter4200 commented 5 days ago

I see the same result as mentioned in previous posts and still have NULL values in Reliability and Fault

Haraade commented 5 days ago

Condition reported from another unit. This device does not report "ias_cie_address":

{ "battery": 80, "battery_low": false, "linkquality": 216, "max_duration": 5, "restore_reports": true, "smoke": false, "supervision_reports": true, "test": false, "update": { "installed_version": 262152, "latest_version": 262152, "state": "idle" }, "voltage": 2900, "alarm": null, "fault": null, "reliability": null, "temperature": null, "update_available": null }

Haraade commented 5 days ago

One thing I wonder, are these units completely identical ?. They are supplied by Frient (https://frient.com/products/intelligent-smoke-alarm/) and Develco (https://www.develcoproducts.com/products/sensors-and-alarms/intelligent-smoke-alarm/#SmokeAlarmTechnicalSpecifications). These three that I have are supplied by Frient, but are registered as Develco in Z2M. Which firmware (OTA) will then be right to use?

Frient

Develco

RobLeighton67 commented 5 days ago

Frient is the B2C company, Develco Products is the B2B White label company

On Tue, 10 Sep 2024, 19:41 Haraade, @.***> wrote:

One thing I wonder, are these units completely identical ?. They are supplied by Frient (https://frient.com/products/intelligent-smoke-alarm/) and Develco ( https://www.develcoproducts.com/products/sensors-and-alarms/intelligent-smoke-alarm/#SmokeAlarmTechnicalSpecifications). These three that I have are supplied by Frient, but are registered as Develco in Z2M. Which firmware (OTA) will then be right to use?

Frient.png (view on web) https://github.com/user-attachments/assets/0e1d6ca3-4563-4fad-b070-b1e4c59c1fd4

Develco.png (view on web) https://github.com/user-attachments/assets/fda6c713-b6e8-4bc0-b6b3-7053cf46210f

— Reply to this email directly, view it on GitHub https://github.com/Koenkk/zigbee2mqtt/issues/23684#issuecomment-2341748478, or unsubscribe https://github.com/notifications/unsubscribe-auth/ARWNC6PZ4ZAXDNQ5J3MAYETZV44NHAVCNFSM6AAAAABM37XRRKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNBRG42DQNBXHA . You are receiving this because you commented.Message ID: @.***>

Haraade commented 5 days ago

Found some old discussions related to my previous comment.

https://github.com/Koenkk/zigbee2mqtt/issues/9250#issuecomment-947937091

https://community.home-assistant.io/t/frient-smoke-detector-zha/394354/1

Koenkk commented 3 days ago

@Haraade can you try if everything is OK with this one: https://gist.github.com/Koenkk/3311969512f2e4307dcee8b6a22e1cbb ?

Haraade commented 3 days ago

@Haraade can you try if everything is OK with this one: https://gist.github.com/Koenkk/3311969512f2e4307dcee8b6a22e1cbb ?

Have tested and here is the log. Same feedback on all three devices.

error 2024-09-12 21:38:22z2m: Failed to configure 'Fire Reporter 1', attempt 1 (Error: Bind 0x0015bc0031021d68/38 msTemperatureMeasurement from '0xe0798dfffed3c026/1' failed (Delivery failed for {"profileId":0,"clusterId":33,"sourceEndpoint":0,"destinationEndpoint":0,"options":4416,"groupId":0,"sequence":3}) at EmberOneWaitress.deliveryFailedFor (/app/node_modules/zigbee-herdsman/src/adapter/ember/adapter/oneWaitress.ts:101:31) at EmberAdapter.onMessageSent (/app/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:480:42) at Ezsp.emit (node:events:517:28) at Ezsp.ezspMessageSentHandler (/app/node_modules/zigbee-herdsman/src/adapter/ember/ezsp/ezsp.ts:4982:14) at Ezsp.callbackDispatch (/app/node_modules/zigbee-herdsman/src/adapter/ember/ezsp/ezsp.ts:738:26) at Ezsp.onAshFrame (/app/node_modules/zigbee-herdsman/src/adapter/ember/ezsp/ezsp.ts:398:22) at UartAsh.emit (node:events:517:28) at Immediate. (/app/node_modules/zigbee-herdsman/src/adapter/ember/uart/ash.ts:1169:45) at processImmediate (node:internal/timers:476:21))

Remark! The units have not been re-pair, as they are not physically available to me now.