zigbee2mqtt icon indicating copy to clipboard operation
zigbee2mqtt copied to clipboard

SMSZB-120 Fails to configure due to TABLE_FULL

Open petermnt opened this issue 1 year ago • 37 comments

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)

  • Reset the SMSZB-120
  • Open the network
  • Let it configure

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

petermnt avatar Aug 21 '24 13:08 petermnt

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

mrmaximas avatar Aug 21 '24 21:08 mrmaximas

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))

petermnt avatar Aug 21 '24 22:08 petermnt

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?

Koenkk avatar Aug 22 '24 20:08 Koenkk

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)

petermnt avatar Aug 22 '24 20:08 petermnt

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

  • save this as file next to configuration.yaml as ext_converter.js
  • add it to configuration.yaml:
external_converters:
  - ext_converter.js
  • start z2m,
  • in the frontend, check if the description of this device now ends with CUSTOM (this indicates the external converter has been loaded correctly)
  • re-pair the device, check if issue is fixed and everything is still working, if not try adding back some of the commented things on line 59

Koenkk avatar Aug 24 '24 12:08 Koenkk

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

petermnt avatar Aug 24 '24 13:08 petermnt

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.

RobLeighton67 avatar Sep 04 '24 13:09 RobLeighton67

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))
 

peter4200 avatar Sep 04 '24 19:09 peter4200

@peter4200 please post the debug log of this

See this on how to enable debug logging.

Koenkk avatar Sep 05 '24 12:09 Koenkk

This one? log.log

peter4200 avatar Sep 05 '24 17:09 peter4200

Yes, but can you:

  • Force remove the device
  • Stop z2m
  • Start z2m and pair the device <- provide the log of this

Koenkk avatar Sep 05 '24 19:09 Koenkk

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

log.log

peter4200 avatar Sep 06 '24 06:09 peter4200

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

  • save this as file next to configuration.yaml as ext_converter.js
  • add it to configuration.yaml:
external_converters:
  - ext_converter.js
  • start z2m,
  • in the frontend, check if the description of this device now ends with CUSTOM (this indicates the external converter has been loaded correctly)
  • check if issue is fixed and that the device still works.

Koenkk avatar Sep 06 '24 12:09 Koenkk

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?

peter4200 avatar Sep 06 '24 18:09 peter4200

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

Koenkk avatar Sep 06 '24 19:09 Koenkk

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?

peter4200 avatar Sep 06 '24 21:09 peter4200

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

Koenkk avatar Sep 07 '24 10:09 Koenkk

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:

  • Clusters correctly binded: genPollCtrl, PowerCfg
  • Clusters not correctly binded: genBasic, genBinaryInput, ssIasWd, ssIasZone

Binding in Frontend:

  • genBasic: OK, genBinaryInput: OK
  • ssIasZone: 2024-09-07 15:39:14z2m: 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)))
  • ssIasWd: 2024-09-07 15:40:06z2m: 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)))

Thx 4 all your wonderful work

eerr0EERR avatar Sep 07 '24 13:09 eerr0EERR

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
}

peter4200 avatar Sep 08 '24 13:09 peter4200

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.

petermnt avatar Sep 09 '24 14:09 petermnt

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

Koenkk avatar Sep 10 '24 12:09 Koenkk

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)))

eerr0EERR avatar Sep 10 '24 14:09 eerr0EERR

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 }

Haraade avatar Sep 10 '24 16:09 Haraade

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

peter4200 avatar Sep 10 '24 17:09 peter4200

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 avatar Sep 10 '24 17:09 Haraade

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

Haraade avatar Sep 10 '24 18:09 Haraade

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

  • same people, met most of them!

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: @.***>

RobLeighton67 avatar Sep 10 '24 18:09 RobLeighton67

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

Haraade avatar Sep 10 '24 19:09 Haraade

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

Koenkk avatar Sep 12 '24 18:09 Koenkk

@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.

Haraade avatar Sep 12 '24 19:09 Haraade