A second possible implementation that we are adopting for future generations of the Millibots is based on I2C. I2C is a bus design and communications protocol that allows multiple modules to be connected to a common two-wire bus. One wire provides a high speed, synchronous clock while the other provides a two way data line. All messages on the data line are pre-appended with an address header identifying the target module. This interface is less restrictive than the dedicated slot method because it allows more modules to be connected to the same processor without having to designate separate pins. Once the interface between the main processor and its modules has been defined, the necessary sub-systems can be iterated.
Communications is essential in a coordinated team.
However, collaborative mapping and exploration requires the exchange of detailed and abstract information that cannot be easily conveyed implicitly. Therefore, to provide two-way communications within the group, each Millibot is equipped with a radio frequency transmitter and receiver. These units can exchange data at 4800 bps at a distance of up to 100 meters. The choice of units is based primarily on size and power considerations. We expect that smaller more powerful transmission units will become commercially available in the future as miniaturization in solid state progresses.