The final target is to create a ZigBee smart device which will work with the Samsung hub. For development, I chose ZB600 development board (https://www.waveshare.com/wiki/ZB600) with the TI CC2530 MPU. I use TI Z-Stack 3.0.2 and their SimpleLight test app to try initial communication. The problem I’m having, the device cannot join the network established by the Samsung Hub. I debugged the app and what I see under debugger is that nwk_getNwkDescList() which is supposed to return a list of available networks returns one network with the following properties
panId 59585 XData:0x0EBC uint16
logicalChannel ‘.’ (0x18) XData:0x0EBE byte
routerCapacity ‘\0’ (0x00) XData:0x0EBF byte
deviceCapacity ‘\0’ (0x00) XData:0x0EC0 byte
version ‘.’ (0x02) XData:0x0EC1 byte
stackProfile ‘.’ (0x02) XData:0x0EC2 byte
chosenRouter 65534 XData:0x0EC3 uint16
chosenRouterLinkQuality ‘\0’ (0x00) XData:0x0EC5 uint8
chosenRouterDepth ‘ÿ’ (0xFF) XData:0x0EC6 uint8
extendedPANID “‰.[¶…W” XData:0x0EC7 uint8 [8]
updateId ‘\0’ (0x00) XData:0x0ECF byte
nextDesc 0x0000 XData:0x0ED0 void *
As you see routerCapacity and deviceCapacity are both 0’s. I build the app as an end device app. Then the algorithm checks deviceCapacity and expects it to be greater than 0. Because it is 0 it does not even try to join the network. If I bypass it, manually set a value greater than 0 or in another way make the algorithm to think that it should be able to join the network it eventually calls NLME_JoinRequest which in this case returns ZNwkNotPermitted error.
I have a number of guesses but I don’t know what to try next. One guess is the network requires the end device to implement certain security protocol, maybe I need to enable certain define in the Z-Stack code or undefine or change something. Another guess is maybe I need to call a method before nwk_getNwkDescList which would tell the hub to expect further joining from a device.
Can anybody tell me what am I missing? Any ideas? Any pointing into the right direction?
Thank you