The students were initially asked to address the collision problem and also study the fundamental tradeoff between connectivity and energy consumption in multi-hop, wireless, sensor networks. So they came up with neat ways to efficiently transport information outside the ECE Roof Garden (the "testbed"):
iCubes v0.1 support mutliple channels around 2.4GHz. In order to address the collision problem, nodes were split in zones (chains) with each chain utilizing a specific channel. The chain node "closer" to the gateway utilized an additional channel, common accross all zones.
At each chain, nodes transmited information provided that the chain would be "awake" and not in "sleep" mode. Nodes woke up in sync, relayed sensing information and then went back to "sleep", to conserve precious battery energy. Syncing the wake up times was the clever part of the work, since synchronization was packet-driven and based on the initial activation of each chain! Clock instabilities at each node's MCU were also taken carefully into account.
The last chain node would convey sensing information to the gateway, from all sensors in the chain - another sync algorithm was put forth to avoid collisions between end chain nodes and gateway!
Testing the algorithms in the lab....