Pages: [1]   Go Down
Author Topic: Clogged up my XBee network  (Read 999 times)
0 Members and 1 Guest are viewing this topic.
New River, Arizona
Offline Offline
God Member
*****
Karma: 19
Posts: 928
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

My little XBee network has risen to 12 nodes and started having trouble.  Seems my love of broadcast mode finally did me in.

I like broadcast mode because you can monitor it by simply plugging an XBee into a laptop and watching what is going on.  However, when you get a couple of nodes that have to be repeated because of distance or intervening walls, the traffic jumps up radically.  The little devices start starving for air time and drop packets that then have to be resent which makes it worse.  This means I had to go to actually addressing the traffic to specific destinations to solve the problem. 

Doing that, I lost the ability to see the interactions of the various devices and was at a loss on how to monitor things to eliminate the eventual bugs that were bound to show up.  I searched the web and got one of those Freakduino Chibi boards.  For those of you that haven't seen them yet, they're an 802.14.4 radio on an arduino look alike board (well mostly).  The boards can be put in promiscuous mode so they will see all the traffic in range.  This was a blessing from the mighty electron for my network.

There's some code on the site to hook it into Wireshark, but I couldn't get that to work reliably, so I rolled my own.  I just took the incoming packets and filtered by address to watch a particular node (or two) and was able to see everything one of the XBees was sending .  So, I could watch a node that was flooded by sending its own data plus forwarding stuff from other nodes farther away.  A couple of my XBees were almost constantly transmitting simply because they became critical path devices.

After a little cleanup and some addressing, the network settled right down and is working fine.  Of course, I'll be encountering problems in the future as I add other stuff, but at least now I can see the darn traffic.

So, you folk out there that wonder what is actually going on between your little radios, here's a possible solution.

(full disclosure) I don't have any affiliation with Freakduino at all other than loving his Chibi board.
Logged

Trying to keep my house under control http://www.desert-home.com/

Seattle, WA USA
Offline Offline
Brattain Member
*****
Karma: 601
Posts: 48543
Seattle, WA USA
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Come on, now. 656 posts, and you still haven't figured out that links are important?
Logged

New River, Arizona
Offline Offline
God Member
*****
Karma: 19
Posts: 928
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Heh, good point.  Here's where I found the board,

http://www.freaklabsstore.com/index.php?main_page=product_info&products_id=187

Here's a link to the actual kit I bought, I thought it looked really cool, and spending a little more money with him could encourage him to produce more stuff.

http://www.freaklabsstore.com/index.php?main_page=product_info&cPath=42&products_id=188

This is the code that he created to work with WireShark, but I couldn't get WireShark to work reliably 

http://freaklabs.org/index.php/Tutorials/Software/Feeding-the-Shark-Turning-the-Freakduino-into-a-Realtime-Wireless-Protocol-Analyzer-with-Wireshark.html

Here's a link to my site where I posted the code I used to monitor my own network,

http://www.desert-home.com/2012/10/monitoring-my-xbee-network.html

I didn't want to put a bunch of links that made it appear that I was trolling for hits.
Logged

Trying to keep my house under control http://www.desert-home.com/

Pages: [1]   Go Up
Jump to: