cancel
Showing results for 
Search instead for 
Did you mean: 

STM32WB55 Zigbee - Can't report value

JB1234
Associate II

Attached is my demo project for the NUCLEO-WB55RG dev kit.

I'm trying to report ZCL_TEMP_MEAS_ATTR_MEAS_VAL when the attribute value is changed (button 3 pressed), but according to wireshark, nothing is send.

See app_zigbee.c, line 329

I can correctly read the value from the coordinator.

What's wrong here?

 

1 ACCEPTED SOLUTION

Accepted Solutions
Ouadi
ST Employee

Hello @JB1234 ,

After analyzing your source code I noticed that there is some missing configuration points on the binding management needed for the reporting attribute.

In fact, to use a reporting attribute you need to follow these steps :

- Configure the attribute intervals by calling ZbZclAttrReportConfigDefault ( Local - Server side ), Or using the function ZbZclAttrReportConfigReq (Remote - Client side)

- Add a binding entry to the stack's binding table by calling the function ZbApsmeBindReq ( Local configuration)

The Binding entry is added automatically when the ZbZclAttrReportConfigReq is called from the client.

- Configure the reporting callback on the client side zigbee_app_info.temp_meas_client->report = &APP_ZIGBEE_Temp_meas_client_report; <== Callback used to receive ZCL Report

In your case, the ZCL_TEMP_MEAS_ATTR_MEAS_VAL attribute was not added as a binding entry point that leads of no reporting possible over the binding table.

Please find in attachment the file app_zigbee.c modified. 

Best regards,

Ouadi

View solution in original post

2 REPLIES 2
Lizerd_
Associate II

Hi JB1234.
Did you solve the problem ? I am looking desperately after a example project on how to set up an end device (SED/ZED) to send temperature and other values.
So if you found a solution a would be super duper happy if you could share the project or only the app_zigbee.c

Best regards // Mike

Ouadi
ST Employee

Hello @JB1234 ,

After analyzing your source code I noticed that there is some missing configuration points on the binding management needed for the reporting attribute.

In fact, to use a reporting attribute you need to follow these steps :

- Configure the attribute intervals by calling ZbZclAttrReportConfigDefault ( Local - Server side ), Or using the function ZbZclAttrReportConfigReq (Remote - Client side)

- Add a binding entry to the stack's binding table by calling the function ZbApsmeBindReq ( Local configuration)

The Binding entry is added automatically when the ZbZclAttrReportConfigReq is called from the client.

- Configure the reporting callback on the client side zigbee_app_info.temp_meas_client->report = &APP_ZIGBEE_Temp_meas_client_report; <== Callback used to receive ZCL Report

In your case, the ZCL_TEMP_MEAS_ATTR_MEAS_VAL attribute was not added as a binding entry point that leads of no reporting possible over the binding table.

Please find in attachment the file app_zigbee.c modified. 

Best regards,

Ouadi