Skip to content
bunneydude edited this page May 5, 2015 · 3 revisions

Original Plan - Contiki

The first idea was to work with Contiki. However, we ran into a few limitations. Porting Contiki to the MSP430G2553 has been done but at the expense of some key Contiki features like uIP and power profiling. Some example program sizes were (source): - Blink: 3.3 kB Flash, 194 B RAM - Blink + serial: 6.4 KB Flash, 222 B RAM - Blink + CC2500 radio: 9.3 KB, 440 B RAM

So even though Contiki allows for dynamic module loading (i.e. we could send it a new program to run instead of 'blink'), there's roughly only 72 bytes of RAM left to work with.

Also, the current version of Contiki doesn't allow for multiple radio interfaces. This would require an unscoped amount of work to alter Contiki so the BoosterPack Nodes will be able to route packets for both the 2.4GHz and 915MHz networks. The hope is that by building a custom firmware for our target platforms we will get the features we need with a small code footprint.

Current Plan - nodeCtrl

The current name given to this custom firmware is 'nodeCtrl' (node control). Instead of letting a node handle all the algorithms needed for a wireless sensor network such as route discovery, the node will yield to a 'master node' for configuration data. For example, a node will still do neighbor discovery but it will forward this data to the master node and in response will be told how to route packets for multi-hop paths through the network. If the master node has more advanced hardware and supports a user interface (e.g. an Intel Edison) then the user will be able to alter the network interactively.

Clone this wiki locally