ESP32-H2, Zigbee and NLME message

Aussie Susan

Advanced Member level 5
Joined
Jan 5, 2015
Messages
1,615
Helped
415
Reputation
830
Reaction score
475
Trophy points
1,363
Activity points
19,137
(I originally posted this question on the Espressif support forum a week ago but I've had no response. Looking for better luck here.)

I have an ESP32-H2-DevKitM-1 and the Espressif IDF (V1.6.5) installed on VS Code. Using that I did an 'express' setup about 3 days ago so I should have the latest versions of the SDK etc.
I have tried to use the 'HA_ON_OFF_LIGHT" example code (unaltered in all key aspects) to connect to my "Home Assistant" system that has a SkyConnect Zigbee coordinator.
Everything works at first (and I can toggle the light on and off on the DevKit with the 'switch' that the Home Assistant 'device' provides) but then I start to get the "NLME Status Indication - Status 0" messages and I can't find that they mean.
Shortly after each, the SDK seems to restart and successfully rejoins the network, but eventually it wil fail to initialise the zigbe stack and then tells me the device is unavailable.
According to the Home Assistant device, the RSSI is about -42 which should mean a good connection.
How do I start to go about identifying what is the problem as the documentation simply lists the ESP_ZB_NLME_STATUS_INDICATION as an enumerated value (which is obvious) but does not say how to interpret the status code (if it is a Zigbee NWK status then it is 'no path'!).
The log from the devkit is below.
Susan

 

Stumbled across your post and thought I would see if this helps. I had a similar issue in not knowing what the codes meant. If you put this in your code it will give you the actual error:

As a temporary solution, you can add the following case to the esp_zb_app_signal_handler() to check the NLME status, which can be referenced from zb_nwk_command_status_t.

case ESP_ZB_NLME_STATUS_INDICATION: {
printf("%s, status: 0x%x\n", esp_zb_zdo_signal_to_string(sig_type), *(uint8_t *)esp_zb_app_signal_get_params(p_sg_p));
} break;

THen you can go and check the zb_nwk_command_status_t to see what error you are getting.

Hope it helps.
 

Similar threads

Cookies are required to use this site. You must accept them to continue using the site. Learn more…