release 1.8.0

release 1.8.0

Release Notes

5 October 2014, Berkeley, CA, USA.

The OpenWSN team is excited to announce the release of OpenWSN 1.8.0.

Highlights

The OpenWSN team has entirely re-architected the directory structure of the project to significantly simplify the organization.

We have "flattened" the directory structure, making it much easier to navigate and understand. In particular the OpenWSN stack (IEEE802.15.4e, RPL, 6LoWPAN, CoAP) is now in a different directory than the applications which run on top of it. This cleaner organization allows for example dynamic application compilation (see below).

1.6.0 structure

1.8.0 structure

1.6.0 structure

1.8.0 structure

Each root directory contains a README fie which helps your navigate the project on GitHub.

On top of that, we have introduced a dynamic application compilation. This means that you can add one or more applications on top of the OpenWSN stack directly from the command line.

To compile the OpenWSN project on the TelosB with default applications, use:

scons board=telosb toolchain=mspgcc oos_openwsn
C:\Users\Thomas\Desktop\openwsn-fw>scons board=telosb toolchain=mspgcc oos_openwsn scons: Reading SConscript files ... ___ _ _ _ ___ _ _ | . | ___ ___ ._ _ | | | |/ __>| \ | | | || . \/ ._>| ' || | | |\__ \| | `___'| _/\___.|_|_||__/_/ <___/|_\_| |_| openwsn.org scons: done reading SConscript files. scons: Building targets ... Compiling projects\common\03oos_openwsn\03oos_openwsn.o Compiling build\telosb_mspgcc\openstack\openstack.o Compiling build\telosb_mspgcc\openstack\02a-MAClow\topology.o Compiling build\telosb_mspgcc\openstack\02a-MAClow\IEEE802154.o Compiling build\telosb_mspgcc\openstack\02a-MAClow\IEEE802154E.o Compiling build\telosb_mspgcc\openstack\02a-MAClow\adaptive_sync.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\neighbors.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\otf.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\processIE.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\schedule.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\sixtop.o Compiling build\telosb_mspgcc\openstack\03a-IPHC\iphc.o Compiling build\telosb_mspgcc\openstack\03a-IPHC\openbridge.o Compiling build\telosb_mspgcc\openstack\03b-IPv6\forwarding.o Compiling build\telosb_mspgcc\openstack\03b-IPv6\icmpv6.o Compiling build\telosb_mspgcc\openstack\03b-IPv6\icmpv6echo.o Compiling build\telosb_mspgcc\openstack\03b-IPv6\icmpv6rpl.o Compiling build\telosb_mspgcc\openstack\04-TRAN\opencoap.o Compiling build\telosb_mspgcc\openstack\04-TRAN\opentcp.o Compiling build\telosb_mspgcc\openstack\04-TRAN\openudp.o Compiling build\telosb_mspgcc\openstack\cross-layers\idmanager.o Compiling build\telosb_mspgcc\openstack\cross-layers\openqueue.o Compiling build\telosb_mspgcc\openstack\cross-layers\openrandom.o Compiling build\telosb_mspgcc\openstack\cross-layers\packetfunctions.o Archiving build\telosb_mspgcc\openstack\libopenstack.a Indexing build\telosb_mspgcc\openstack\libopenstack.a Dynifying build\telosb_mspgcc\openapps\openapps_dyn.c Compiling build\telosb_mspgcc\openapps\openapps_dyn.o Compiling build\telosb_mspgcc\openapps\c6t\c6t.o Compiling build\telosb_mspgcc\openapps\cinfo\cinfo.o Compiling build\telosb_mspgcc\openapps\cleds\cleds.o Compiling build\telosb_mspgcc\openapps\cwellknown\cwellknown.o Compiling build\telosb_mspgcc\openapps\techo\techo.o Compiling build\telosb_mspgcc\openapps\uecho\uecho.o Archiving build\telosb_mspgcc\openapps\libopenapps.a Indexing build\telosb_mspgcc\openapps\libopenapps.a Compiling build\telosb_mspgcc\kernel\openos\scheduler.o Archiving build\telosb_mspgcc\kernel\openos\libopenos.a Indexing build\telosb_mspgcc\kernel\openos\libopenos.a Compiling build\telosb_mspgcc\drivers\common\openhdlc.o Compiling build\telosb_mspgcc\drivers\common\openserial.o Compiling build\telosb_mspgcc\drivers\common\opentimers.o Archiving build\telosb_mspgcc\drivers\libdrivers.a Indexing build\telosb_mspgcc\drivers\libdrivers.a Compiling build\telosb_mspgcc\bsp\boards\telosb\board.o Compiling build\telosb_mspgcc\bsp\boards\telosb\bsp_timer.o Compiling build\telosb_mspgcc\bsp\boards\telosb\debugpins.o Compiling build\telosb_mspgcc\bsp\boards\telosb\eui64.o Compiling build\telosb_mspgcc\bsp\boards\telosb\leds.o Compiling build\telosb_mspgcc\bsp\boards\telosb\radiotimer.o Compiling build\telosb_mspgcc\bsp\boards\telosb\spi.o Compiling build\telosb_mspgcc\bsp\boards\telosb\uart.o Compiling build\telosb_mspgcc\bsp\boards\telosb\cc2420\radio.o Archiving build\telosb_mspgcc\bsp\boards\telosb\libbsp.a Indexing build\telosb_mspgcc\bsp\boards\telosb\libbsp.a Linking projects\common\03oos_openwsn_prog.exe msp430-size projects\common\03oos_openwsn_prog.exe text data bss dec hex filename 43296 0 4038 47334 b8e6 projects\common\03oos_openwsn_prog.exe msp430-objcopy --output-target=ihex projects\common\03oos_openwsn_prog.exe projects\common\03oos_openwsn_prog.ihex msp430-objcopy --output-target=binary projects\common\03oos_openwsn_prog.exe projects\common\03oos_openwsn_prog.bin scons: done building targets.

Now, to add the cexample application, use

scons board=telosb toolchain=mspgcc apps=cexample oos_openwsn
C:\Users\Thomas\Desktop\openwsn-fw>scons board=telosb toolchain=mspgcc apps=cexample oos_openwsn scons: Reading SConscript files ... ___ _ _ _ ___ _ _ | . | ___ ___ ._ _ | | | |/ __>| \ | | | || . \/ ._>| ' || | | |\__ \| | `___'| _/\___.|_|_||__/_/ <___/|_\_| |_| openwsn.org scons: done reading SConscript files. scons: Building targets ... Compiling projects\common\03oos_openwsn\03oos_openwsn.o Compiling build\telosb_mspgcc\openstack\openstack.o Compiling build\telosb_mspgcc\openstack\02a-MAClow\topology.o Compiling build\telosb_mspgcc\openstack\02a-MAClow\IEEE802154.o Compiling build\telosb_mspgcc\openstack\02a-MAClow\IEEE802154E.o Compiling build\telosb_mspgcc\openstack\02a-MAClow\adaptive_sync.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\neighbors.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\otf.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\processIE.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\schedule.o Compiling build\telosb_mspgcc\openstack\02b-MAChigh\sixtop.o Compiling build\telosb_mspgcc\openstack\03a-IPHC\iphc.o Compiling build\telosb_mspgcc\openstack\03a-IPHC\openbridge.o Compiling build\telosb_mspgcc\openstack\03b-IPv6\forwarding.o Compiling build\telosb_mspgcc\openstack\03b-IPv6\icmpv6.o Compiling build\telosb_mspgcc\openstack\03b-IPv6\icmpv6echo.o Compiling build\telosb_mspgcc\openstack\03b-IPv6\icmpv6rpl.o Compiling build\telosb_mspgcc\openstack\04-TRAN\opencoap.o Compiling build\telosb_mspgcc\openstack\04-TRAN\opentcp.o Compiling build\telosb_mspgcc\openstack\04-TRAN\openudp.o Compiling build\telosb_mspgcc\openstack\cross-layers\idmanager.o Compiling build\telosb_mspgcc\openstack\cross-layers\openqueue.o Compiling build\telosb_mspgcc\openstack\cross-layers\openrandom.o Compiling build\telosb_mspgcc\openstack\cross-layers\packetfunctions.o Archiving build\telosb_mspgcc\openstack\libopenstack.a Indexing build\telosb_mspgcc\openstack\libopenstack.a Dynifying build\telosb_mspgcc\openapps\openapps_dyn.c Compiling build\telosb_mspgcc\openapps\openapps_dyn.o Compiling build\telosb_mspgcc\openapps\c6t\c6t.o Compiling build\telosb_mspgcc\openapps\cexample\cexample.o Compiling build\telosb_mspgcc\openapps\cinfo\cinfo.o Compiling build\telosb_mspgcc\openapps\cleds\cleds.o Compiling build\telosb_mspgcc\openapps\cwellknown\cwellknown.o Compiling build\telosb_mspgcc\openapps\techo\techo.o Compiling build\telosb_mspgcc\openapps\uecho\uecho.o Archiving build\telosb_mspgcc\openapps\libopenapps.a Indexing build\telosb_mspgcc\openapps\libopenapps.a Compiling build\telosb_mspgcc\kernel\openos\scheduler.o Archiving build\telosb_mspgcc\kernel\openos\libopenos.a Indexing build\telosb_mspgcc\kernel\openos\libopenos.a Compiling build\telosb_mspgcc\drivers\common\openhdlc.o Compiling build\telosb_mspgcc\drivers\common\openserial.o Compiling build\telosb_mspgcc\drivers\common\opentimers.o Archiving build\telosb_mspgcc\drivers\libdrivers.a Indexing build\telosb_mspgcc\drivers\libdrivers.a Compiling build\telosb_mspgcc\bsp\boards\telosb\board.o Compiling build\telosb_mspgcc\bsp\boards\telosb\bsp_timer.o Compiling build\telosb_mspgcc\bsp\boards\telosb\debugpins.o Compiling build\telosb_mspgcc\bsp\boards\telosb\eui64.o Compiling build\telosb_mspgcc\bsp\boards\telosb\leds.o Compiling build\telosb_mspgcc\bsp\boards\telosb\radiotimer.o Compiling build\telosb_mspgcc\bsp\boards\telosb\spi.o Compiling build\telosb_mspgcc\bsp\boards\telosb\uart.o Compiling build\telosb_mspgcc\bsp\boards\telosb\cc2420\radio.o Archiving build\telosb_mspgcc\bsp\boards\telosb\libbsp.a Indexing build\telosb_mspgcc\bsp\boards\telosb\libbsp.a Linking projects\common\03oos_openwsn_prog.exe msp430-size projects\common\03oos_openwsn_prog.exe text data bss dec hex filename 43678 0 4060 47738 ba7a projects\common\03oos_openwsn_prog.exe msp430-objcopy --output-target=ihex projects\common\03oos_openwsn_prog.exe projects\common\03oos_openwsn_prog.ihex msp430-objcopy --output-target=binary projects\common\03oos_openwsn_prog.exe projects\common\03oos_openwsn_prog.bin scons: done building targets.

Porting from 1.6.0 to 1.8.0

Applications which ran on OpenWSN 1.6.0 will continue to run on OpenWSN 1.8.0.

If you have made changes to the stack itself (MAC, routing, etc.), you will need to sync your fork or simply remove and re-fork the project.

Download

The release is composed of two parts:

Hardware Platforms

OpenWSN 1.8.0 is ported to the following hardware platforms

  • OpenMoteCC2538

  • TelosB

  • GINA

  • WSN430v13b

  • WSB430v14

  • Z1

  • OpenMoteSTM

  • SAM R21 Xplained Pro

  • IoT-LAB_M3

  • Agilefox

Toolchains

The following toolchains are supported:

  • gcc

  • mpsgcc

  • armgcc

  • IAR Embedded Workbench for ARM

  • IAR Embedded Workbench for MSP430

Bug Reports

Report bugs at https://openwsn.atlassian.net/.

About

The goal of the OpenWSN project is to provide open-source implementations of a complete protocol stack based on Internet of Things standards, on a variety of software and hardware platforms.

This implementation can then help academia and industry verify the applicability of these standards to the Internet of Things, for those networks to become truly ubiquitous.

The OpenWSN community is composed of Internet of Things and open-source enthusiasts all around the world. Participation is free and open to all. Questions, documentation, bug reports and source code are available through http://openwsn.berkeley.edu.

Issue Tracking

Bugs Fixed by This Release

New Features Introduced by This Release

Known Bugs to This Release