XBee Sniffer -- Global Address Question
JonnyMac
Posts: 9,105
I'm working with an existing system that uses API mode. There is a master controller that sends broadcast commands (destination $FFFF) and individual units can send data between each other. I would like to monitor ANY traffic in this system. Is there a mechanism in the API mode that would allow me to set the address of a module such that it sees ALL traffic? I want to [remotely] see when Unit A sends a message to Unit B and vice-versa.
Comments
I had a similar interest: essentially performing a wireshark/sniffer function for XBees. Unfortunately, I don't believe there is any way of monitoring the overall network traffic. API mode addresses each radio explicitly and afaik they dump traffic not destined for the individual radio. The various network layouts are also not conducive to overall monitoring.
But... You might send a note to Digi's product manager Jared Hofhiens (found via google). I don't have an email, but the main switchboard is (801) 765-9885. If any knows they should!
Pls post if you find a way.
Paul
I don't know if there is a mode that lets one sniff with an XBee. If you find out how it can be done, I'd like to know. I've tried with the master set to listen in at the MY address of the other target XBee, but that results in packet loss for both as they fight to be the first to ack the packet.
I have forwarded your question to our direct support contact and hope to get a response soon. I have made them aware questions are pending.
Jon,
Here's the answer I got back from the Digi rep on your question (I copied your post to him).
That is 802.11
Are you able to modify the existing system? Or are you stuck with dealing with them as they are installed? I've created a "sniffer" node using the XSC 900 Pro modules to do exactly what you're asking about. I did it by setting up all of the nodes on the network to transmit broadcasts (global packets) and each data packet contains it's own header that has a unique node address, packet ID, flags and such. So each xbee on the network dumps all the packets it receives out it's serial port, and the propeller does the filtering and retries, timeouts and other stuff- then generates a response if it's supposed to. The "sniffer" does the same but never generates a response. It's basically creating an home-grown API packet within the rf data portion of the entire packet. I use the XSC modules in AT mode, but it would function just as well in API mode I think.
@everyone-
Do ALL of the xbee series support global/local (broadcast/addressed) packets? I kind of want to assume they all support this in some form or another but I haven't used the other types out there.