Ecil has been working with Freescale's ZigBee technology for quite a long time (since 2007), and now we are experiencing an error in the network we cannot find a solution for.
In general terms, the error shows when we power up a lab network with 1 or more coordinators and some meters as routers. No matter the number of meters we power up, right after joining the network, the meters simple "leave" the network without any specific command issued for that to happen. This symptom happens to all meters powered up.
After days of trying to track the causes, we finally found, by sniffing the network with "WireShark", that apparently this is something related to security, i.e. we have verified that there is a difference in the frame where the coordinator sends the transport key to the newly associated meter (router).
a) When the error appears:
the "frame control field" shows 0 (false) in the security level and the transport key is sent without security
b) When the network functions ok:
the "frame control field" shows 1 (true) in the security level and the transport key is 32 x 0s (00000....)
Apparently, and we don't know why, the coordinator does not use security when sending Transport Key frame to the newly associated node of the network, and this node then does not understand this key and right after "leaves" the network.
If you check some frames right above (before) the "faulty" frame, the same coordinator issues a "link status" broadcast to the network and there, the security level is set to TRUE!
Also, VERY intriguing, after this error shows in one coordinator, we cannot use it anymore, because we could not find a way to make it work again (turning on/off does not work, nor firmware reloading)
I am attaching WireShark screens to ease analysis