I've encountered what I believe is a bug in the current (22A7) XB24-ZB firmware. When I setup a router to join an existing PAN with an active coordinator, the router appears to join successfully, but is reporting the WRONG channel. I am able to transfer data between the router and coordinator, but range is severely limited. Even when side-by-side, the RSSI is severely degraded. Opening a console to the router, I force dis-association, the PAN is re-joined (at least most of the time) on the CORRECT channel. See the console capture below:
+++OK
atch
E
atdb
4F
atda
OK
atai
FF
atai
0
atch
1A
atdb
26
The coordinator was verified to be on channel 1A. The router first detected it on channel E, but after ATDA forced dis-association, it was re-joined on the correct channel (1A).
A few notes (may be helpful to resolve):
- I've only seen this behaviour when the coordinator selects a channel high in the band (i.e., I've seen it with coordinator on channels 18 & 1A).
- When I've seen the router select the wrong channel (doesn't always happen), I've noted the channel reported seems to track the true channel the coordinator is on (i.e., when coord is on 18, router reports C, when coord is on 1A, router reports E). In these cases, the reported channel is 12 channels below the actual channel. If this is always true, that would mean that only channels 17,18,19 & 1A were susceptible. Unless there are some really odd side-lobes on the redio emissions, I find it hard to believe the router is really ON a channel 12 below that actually used by the coord, and still able to communicate.
I can provide XCTU profiles of the router and coordinator. I've also taken screenshots of XCTU register settings, to document the channel change (ATCH) & RSSI (ATDB), before & after executing a forced dis-association (ATDA).