Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

End device binding table (TZ-1129) #426

Open
akira215 opened this issue Sep 11, 2024 · 1 comment
Open

End device binding table (TZ-1129) #426

akira215 opened this issue Sep 11, 2024 · 1 comment
Labels

Comments

@akira215
Copy link

Question

I'm working on zigbee end devices and I cannot figure out how to access the device binding table:
I'm able to send esp_zb_zdo_binding_table_req command that return table but I understood that it is the reading of remote device (coordinator), am I correct ? Moreover, the returned structures linked by the next pointer are not located at the same memory address than the one returned by continuously requesting the next record using index.

I was guessing that the end device shall have it's own binding table, ideally using NVS. Is it the case in the sdk implementation ? If yes how could I retrieve this table ?

Additionally, I try to get the signal from the stack when the coordinator send a binding request to the end device (on end device side). I saw the request using a sniffer, I see some traffic on the esp_zb_aps_data_indication_handler, but the esp_zb_app_signal_handler don't trigger anything (i was guessing ESP_ZB_BDB_SIGNAL_FINDING_AND_BINDING_INITIATOR_FINISHED or ESP_ZB_BDB_SIGNAL_FINDING_AND_BINDING_TARGET_FINISHED). How could i set up a call back to intercept the binding request from coordinator on end device side ?

Thanks ahead

Additional context.

No response

@github-actions github-actions bot changed the title End device binding table End device binding table (TZ-1129) Sep 11, 2024
@lpy4105
Copy link
Contributor

lpy4105 commented Sep 19, 2024

Hi @akira215

I'm able to send esp_zb_zdo_binding_table_req command that return table but I understood that it is the reading of remote device (coordinator), am I correct ?

It's partially true. ZDO commands are sent through the network, you can send the request to the local device if you populate the correct address.

I was guessing that the end device shall have it's own binding table, ideally using NVS. Is it the case in the sdk implementation ? If yes how could I retrieve this table ?

The SDK implements binding table for end device and stores it in NVS. You can send esp_zb_zdo_binding_table_req to local device to retrieve the binding table.

Additionally, I try to get the signal from the stack when the coordinator send a binding request to the end device (on end device side).

Bindings are processed by the APS layer of the stack, users are not expected to deal with it themselves. Any special use cases?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants