When using an XBee S2C ZigBee module with the API Mode enabled with escaping (AT Command AP = 0x02), both the Spectrum Analyzer within XCTU and the AT Command "ED" work. That is, the module appears to scan the different ZigBee channels and return noise levels that are consistent with the results I get from a proper/dedicated 2.4Ghz Spectrum Analyzer, within the same environment. As expected, the noise from the different WiFi and ZigBee networks within range is reported via the "ED" AT Command and the XCTU Spectrum Analyzer.
However, the XStick ZigBee Module doesn't appear to support the "ED" command, even when the API Mode is enabled with Escaping.
When issuing an "ED" AT Command (0x7E0004080145446D) the module responds with an AT Command Response (0x7E00058801454402EB) the Status value of "02" in the response reports "Invalid Command".
Additionally, XCTU Spectrum Analyzer doesn't allow you to select an XStick to perform any analysis.
I'm using the latest ZigBee Firmware on the XStick Module - 21A7.
Is there a way to configure the XStick so that it supports the "ED" AT Command?
If not, how are we supposed to scan the local 2.4Ghz RF for noise, and select the most appropriate ZigBee Channel (using the SC AT Command) before creating a new ZigBee network when using the XStick as a Coordinator.
If I understand correctly, the XStick Module is supposed to automatically select the best ZigBee channel when creating a network. I would assume it uses the same mechanism, as the "ED" AT Command, to scan the channels when creating the network to make the decision about which is the "best" ZigBee channel.
My tests when using "SC = 0xFFFF" always appear to result in the XStick creating networks on ZigBee Channel 11 (the first) even if there are a number of other ZigBee networks already using Channel 11. These were with SD (Scan Duration) set to 0x03 which is only scanning for ~0.12288 seconds per channel.
My current "work around" is to rely on a WiFi chip being available, so that I can perform a iwlist scan to locate any WiFi Channels in use. Then configure the "SC" AT command to avoid the equivalent overlapping ZigBee Channels. but this doesn't account for any ZigBee networks that might be running.
I might try setting SD to 0x07 to make the XStick scan for longer before creating the network. However, I'd prefer to use the "ED" AT Command, in the same way as I can with an XBee S2C ZigBee Module, to perform a multiple scans and overlay these results with the extra data gathered from any wifi chip via iwlist. Then make a decision about which channel is best when creating the network.
Can we configure the XStick to issue "ED" AT Commands without getting Invalid Command responses? Or is there some alternative to gather data about the local RF Noise to select the best channel with the XStick?