# Wireless robot swarm

**URL:** <https://community.sparkfun.com/t/wireless-robot-swarm/2868>\
**Category:** Wireless & IoT\
**Created:** [October 8, 2006, 3:50am UTC](https://community.sparkfun.com/t/wireless-robot-swarm/2868 "2006-10-08T03:50:35Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![m-hwang](https://avatars.discourse-cdn.com/v4/letter/m/54ee81/32.png) [@m-hwang](https://community.sparkfun.com/u/m-hwang)\
**Post date:** [October 8, 2006, 3:50am UTC](https://community.sparkfun.com/t/wireless-robot-swarm/2868/1 "2006-10-08T03:50:35Z")

</div>

Our research group is trying to make a multi-agent robot system (maybe about 10 to start with) where each robot is able to communicate with every other via a wireless link (perhaps transmitting an ID and a position coordinate, so everyone knows where everyone else is). Does anyone have an idea on how we might be able to set this up?

I thought the CAN-bus model (where all the communication is broadcast over the bus) might be suitable, but I haven’t found a wireless equivalent yet (perhaps we could set up a CAN-\>RS232-\>RF Wireless system?). Zigbee sounds like it might work, but I haven’t found a lot of documentation or off-the-shelf hardware for Zigbee. There’s a lot of stuff for Bluetooth, but I haven’t seen any examples of Bluetooth ad-hoc networks either.

We don’t need a particularly fast data rate.

Any ideas, anyone?

---

<div class="post-metadata">

**Author:** ![stevech](https://avatars.discourse-cdn.com/v4/letter/s/ba8739/32.png) [@stevech](https://community.sparkfun.com/u/stevech)\
**Post date:** [October 8, 2006, 2:18pm UTC](https://community.sparkfun.com/t/wireless-robot-swarm/2868/2 "2006-10-08T14:18:08Z")

</div>

perfect app for ZigBee modules. Meshing and broadcast are integral.

MaxStream XBee or XBeePro

Helicomm

Silicon Labs

Panasonic

OKI

Jennic

and many more

---

<div class="post-metadata">

**Author:** ![m-hwang](https://avatars.discourse-cdn.com/v4/letter/m/54ee81/32.png) [@m-hwang](https://community.sparkfun.com/u/m-hwang)\
**Post date:** [October 14, 2006, 6:10pm UTC](https://community.sparkfun.com/t/wireless-robot-swarm/2868/3 "2006-10-14T18:10:09Z")

</div>

Would bluetooth work for this application? Bluetooth has the advantage of being able to interface with existing devices, but I don’t know if bluetooth can form such big network.

---

<div class="post-metadata">

**Author:** ![daemondust](https://avatars.discourse-cdn.com/v4/letter/d/c68b51/32.png) [@daemondust](https://community.sparkfun.com/u/daemondust)\
**Post date:** [October 14, 2006, 9:29pm UTC](https://community.sparkfun.com/t/wireless-robot-swarm/2868/4 "2006-10-14T21:29:05Z")

</div>

If you can live with the data rate (250kbps OTA, about 80kbps of acutal data) Zigbee sounds ideal. I haven’t used them myself, but I’ve looked at the XBee from MaxStream. At less than $20 per module, you can’t really beat the price in low quatities. I plan on buying a few as soon as I have some spare money.

Bluetooth _could_ work, but it would take a lot of effort to be able to talk to more than one device at a time. A Bluetooth PAN only lets you have seven slaves and one master active at a time, though you can have 255 devices belonging to the pan (the rest are “parked”).

A huge advantage of Zigbee is that you can have it automatically form a mesh network, so modules that aren’t in range of each other can still talk if there’s a path of connected modules.

---

<div class="post-metadata">

**Author:** ![m-hwang](https://avatars.discourse-cdn.com/v4/letter/m/54ee81/32.png) [@m-hwang](https://community.sparkfun.com/u/m-hwang)\
**Post date:** [October 14, 2006, 10:13pm UTC](https://community.sparkfun.com/t/wireless-robot-swarm/2868/5 "2006-10-14T22:13:51Z")

</div>

Thanks for the input, daemondust.

I read somewhere that you can link up the 8 device piconets to expand the network; is there hardware out there that will be able to take care of for you, or would I have to come up with my own scheduling/routing algorithms?

---

<div class="post-metadata">

**Author:** ![daemondust](https://avatars.discourse-cdn.com/v4/letter/d/c68b51/32.png) [@daemondust](https://community.sparkfun.com/u/daemondust)\
**Post date:** [October 15, 2006, 12:24am UTC](https://community.sparkfun.com/t/wireless-robot-swarm/2868/6 "2006-10-15T00:24:32Z")

</div>

I only have experience with the Bluetooth serial device that SFE sells.

If you were to use one of [[gumstix](http://gumstix.com/)’s [[Bluetooth](http://gumstix.com/store/catalog/product_info.php?products_id=155) boards you could probably do this, since it runs Linux and uses the BlueZ Bluetooth stack. This would provide quite a bit of processing power, but is significantly more expensive.]([http://gumstix.com/store/catalog/product\_info.php?products\_id=155](http://gumstix.com/store/catalog/product_info.php?products_id=155))]([http://gumstix.com/](http://gumstix.com/))

---

<div class="post-metadata">

**Author:** ![stevech](https://avatars.discourse-cdn.com/v4/letter/s/ba8739/32.png) [@stevech](https://community.sparkfun.com/u/stevech)\
**Post date:** [October 15, 2006, 7:01am UTC](https://community.sparkfun.com/t/wireless-robot-swarm/2868/7 "2006-10-15T07:01:08Z")

</div>

> m-hwang:  
> Thanks for the input, daemondust.
> 
> I read somewhere that you can link up the 8 device piconets to expand the network; is there hardware out there that will be able to take care of for you, or would I have to come up with my own scheduling/routing algorithms?

ZigBee within the MaxStream XBee/XBeePro and equivalents all have the meshing built in. In this generation of products, the network layer (like IP) addresses are 16 bits. You just address a module by its 16 bit address and the ZigBee meshing figures out how to route across 1 or more hops.
