Skip to content

Releases: openwsn-berkeley/openwsn-sw

REL-1.14.0

25 Jun 23:09
Compare
Choose a tag to compare

This release contains code built for the for the 2nd F-Interop 6TiSCH Interop Event, 26-27 June 2018, Paris, France. Details about the plugfest are at http://www.etsi.org/news-events/events/1247-6tisch-f-interop-paris-2018.

How to use this release

This piece of code (OpenVisualizer) is used to interact with OpenMote-CC2538 running with Golden Image.
Use the OpenVisualizer command line to configure the golden image:

  • navigate to opewsn-sw/software/openvisualizer/
  • scons runweb

These are the supported configuration commands:

  • PHY-layer commands
    • set the communication channel
      • set <port_name> channel <value>
  • IEEE802.15.4e commands
    • set the timeout which the device send a keepAlive(value in slots)
      • set <port_name> kaPeriod <value>
    • set the period at the which the device sends enhanced beacons (value in seconds)
      • set <port_name> ebPeriod <value>
    • set the slotframe length
      • set <port_name> frameLength <value>
    • enable/disable link-layer ACK'ing (set value to 1 to enable, 0 to disable)
      • set <port_name> ackReply <value>
    • set the slot duration (value is 32768Hz ticks, i.e. 30.5 us increments)
      • set <port_name> slotDuration <value>
  • 6P commands
    • issue a 6P add command to add 1 tx cells among several candidate cells(set celllist to 6-7-8 for slotoffset 6, 7 and 8 -- channeloffset is always 2). To add rx, or shared cell, just replace tx by rx or shared.
      • set <port_name> 6pAdd tx,1,<celllist>
    • issue a 6P delete command to delete all specified cells (set celllist to 6-7 for slotoffset 6 and 7 -- channeloffset is always 2)
      • set <port_name> 6pDelete tx,2,<celllist>
    • issue a 6P relocate command to relocate cells from celllist 1 by cells in :
      • set <port_name> 6pRelocate tx,1,<celllist1>,<celllist2>
    • issue a 6P count command to count the number of tx cell:
      • set <port_name> 6pCount tx
    • issue a 6P list command to list 2 tx cell starting from cell 5 :
      • set <port_name> 6pList tx,5,2
    • issue a 6P clear command to clear all cells:
      • set <port_name> 6pClear all
    • enable/disable 6P response (set value to 1 to enable, 0 to disable)
      • set <port_name> 6pResponse <value>
  • RPL commands
    • set the period at the which the device sends DIOs (value in milli-seconds)
      • set <port_name> dioPeriod <value>
    • set the period at the which the device sends DAOs (value in milli-seconds)
      • set <port_name> daoPeriod <value>
    • set the DAGrank of the device:
      • set <port_name> dagrank <value>
  • app-layer commands
    • set period of the uinject application (value in number of packets per slotframe)
      • set <port_name> sf0Bandwidth <value>

REL-1.12.0

20 Mar 16:55
f160414
Compare
Choose a tag to compare

This release mainly contains the implementation of following drafts:

The code consist of:

golden image

compile/load

To compile and download the golden image onto the OpenMote-CC2538:

scons board=OpenMote-CC2538 toolchain=armgcc goldenImage=root bootload=<port_name> oos_openwsn

Alternatively, the pre-compiled binary is available at https://github.com/openwsn-berkeley/openwsn-fw/releases/download/REL-1.12.0/gd_root.bin

Use the following command to load that image into your OpenMote-CC2538:

openwsn-fw/> bootloader\OpenMote-CC2538\cc2538-bsl.py -e -w -b 115200 -p [port name] --bsl gd_root.bin

configure

Use the OpenVisualizer in CLI mode to configure the golden image:

  • navigate to opewsn-sw/software/openvisualizer/
  • scons runcli

These are the supported configuration commands:

  • PHY-layer commands
    • set the communication channel
      • set <port_name> channel <value>
  • IEEE802.15.4e commands
    • set the timeout which the device send a keepAlive(value in slots)
      • set <port_name> kaPeriod <value>
    • set the period at the which the device sends enhanced beacons (value in seconds)
      • set <port_name> ebPeriod <value>
    • set the slotframe length
      • set <port_name> frameLength <value>
    • enable/disable link-layer ACK'ing (set value to 1 to enable, 0 to disable)
      • set <port_name> ackReply <value>
    • set the slot duration (value is 32768Hz ticks, i.e. 30.5 us increments)
      • set <port_name> slotDuration <value>
  • 6P commands
    • issue a 6P add command to add 1 tx cells among several candidate cells(set celllist to 6-7-8 for slotoffset 6, 7 and 8 -- channeloffset is always 2). To add rx, or shared cell, just replace tx by rx or shared.
      • set <port_name> 6pAdd tx,1,<celllist>
    • issue a 6P delete command to delete all specified cells (set celllist to 6-7 for slotoffset 6 and 7 -- channeloffset is always 2)
      • set <port_name> 6pDelete tx,2,<celllist>
    • issue a 6P relocate command to relocate cells from celllist 1 by cells in :
      • set <port_name> 6pRelocate tx,1,<celllist1>,<celllist2>
    • issue a 6P count command to count the number of tx cell:
      • set <port_name> 6pCount tx
    • issue a 6P list command to list 2 tx cell starting from cell 5 :
      • set <port_name> 6pList tx,5,2
    • issue a 6P clear command to clear all cells:
      • set <port_name> 6pClear all
    • enable/disable 6P response (set value to 1 to enable, 0 to disable)
      • set <port_name> 6pResponse <value>
  • RPL commands
    • set the period at the which the device sends DIOs (value in milli-seconds)
      • set <port_name> dioPeriod <value>
    • set the period at the which the device sends DAOs (value in milli-seconds)
      • set <port_name> daoPeriod <value>
    • set the DAGrank of the device:
      • set <port_name> dagrank <value>
  • app-layer commands
    • set period of the uinject application (value in number of packets per slotframe)
      • set <port_name> sf0Bandwidth <value>

sniffer

compile/load

To compile and download the sniffer firmware on the OpenMote-CC2538:

scons board=OpenMote-CC2538 toolchain=armgcc bootload=[port name] oos_sniffer

Alternatively, the pre-compiled binary is available at https://github.com/openwsn-berkeley/openwsn-fw/releases/download/REL-1.12.0/gd_sniffer.bin

Use the following command to load that image into your OpenMote-CC2538:

openwsn-fw/> bootloader\OpenMote-CC2538\cc2538-bsl.py -e -w -b 115200 -p [port name] --bsl gd_sniffer.bin

The sniffer firmware interacts with the Wireshark with:

configure

Use the OpenVisualizer to configure the golden image:

  • navigate to opewsn-sw/software/openvisualizer/
  • scons runweb

These are the supported configuration commands:

  • set the comunication channel
    • set <port_name> channel <value>

About

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

REL-1.10.0

16 Jun 16:12
Compare
Choose a tag to compare

This release contains code built specifically for the for the ETSI 6TiSCH F-Interop Plugtests, 14-15 July 2017, Prague, Czech Republic. Details about the plugtest are at http://www.etsi.org/news-events/events/1197-6tisch-interop-prague-2017

The code consist of:

golden image

compile/load

To compile and download the golden image onto the OpenMote-CC2538:

scons board=OpenMote-CC2538 toolchain=armgcc goldenImage=root bootload=<port_name> oos_openwsn

Alternatively, the pre-compiled binary is available at https://github.com/openwsn-berkeley/openwsn-fw/releases/download/REL-1.10.0/gd_root.bin

Use the following command to load that image into your OpenMote-CC2538:

openwsn-fw/> bootloader\OpenMote-CC2538\cc2538-bsl.py -e -w -b 115200 -p [port name] --bsl 03oos_openwsn_prog.bin

configure

Use the OpenVisualizer in CLI mode to configure the golden image:

  • navigate to opewsn-sw/software/openvisualizer/
  • scons runcli

These are the supported configuration commands:

  • PHY-layer commands
    • set the communication channel
      • set <port_name> channel <value>
  • IEEE802.15.4e commands
    • set the timeout which the device send a keepAlive(value in slots)
      • set <port_name> kaPeriod <value>
    • set the period at the which the device sends enhanced beacons (value in seconds)
      • set <port_name> ebPeriod <value>
    • set the slotframe length
      • set <port_name> frameLength <value>
    • enable/disable link-layer ACK'ing (set value to 1 to enable, 0 to disable)
      • set <port_name> ackReply <value>
    • set the slot duration (value is 32768Hz ticks, i.e. 30.5 us increments)
      • set <port_name> slotDuration <value>
  • 6P commands
    • issue a 6P add command to add 1 tx cells among several candidate cells(set celllist to 6-7-8 for slotoffset 6, 7 and 8 -- channeloffset is always 2). To add rx, or shared cell, just replace tx by rx or shared.
      • set <port_name> 6pAdd tx,1,<celllist>
    • issue a 6P delete command to delete all specified cells (set celllist to 6-7 for slotoffset 6 and 7 -- channeloffset is always 2)
      • set <port_name> 6pDelete tx,2,<celllist>
    • issue a 6P relocate command to relocate cells from celllist 1 by cells in :
      • set <port_name> 6pRelocate tx,1,<celllist1>,<celllist2>
    • issue a 6P count command to count the number of tx cell:
      • set <port_name> 6pCount tx
    • issue a 6P list command to list 2 tx cell starting from cell 5 :
      • set <port_name> 6pList tx,5,2
    • issue a 6P clear command to clear all cells:
      • set <port_name> 6pClear all
    • enable/disable 6P response (set value to 1 to enable, 0 to disable)
      • set <port_name> 6pResponse <value>
  • RPL commands
    • set the period at the which the device sends DIOs (value in milli-seconds)
      • set <port_name> dioPeriod <value>
    • set the period at the which the device sends DAOs (value in milli-seconds)
      • set <port_name> daoPeriod <value>
    • set the DAGrank of the device:
      • set <port_name> dagrank <value>
  • app-layer commands
    • set period of the uinject application (value in number of packets per slotframe)
      • set <port_name> sf0Bandwidth <value>

sniffer

compile/load

To compile and download the sniffer firmware on the OpenMote-CC2538:

scons board=OpenMote-CC2538 toolchain=armgcc bootload=[port name] oos_sniffer

Alternatively, the pre-compiled binary is available at https://github.com/openwsn-berkeley/openwsn-fw/releases/download/REL-1.10.0/gd_sniffer.bin

Use the following command to load that image into your OpenMote-CC2538:

openwsn-fw/> bootloader\OpenMote-CC2538\cc2538-bsl.py -e -w -b 115200 -p [port name] --bsl 03oos_sniffer_prog.bin

The sniffer firmware interacts with the Wireshark with:

configure

Use the OpenVisualizer mode to configure the golden image:

  • navigate to opewsn-sw/software/openvisualizer/
  • scons runweb

These are the supported configuration commands:

  • set the comunication channel
    • set <port_name> channel <value>

About

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

GD_REL-1.3.0

04 Jul 14:43
Compare
Choose a tag to compare

This is the release of Golden Image for Plugtests Interoperability Events: GD_REL-1.3.0.

Highlights

Two golden images are provide by this release:

Gold Image/ROOT

To compile and download the golden image/ROOT source code on the OpenMote-CC2538, you need plugin the OpenMote-CC2538 node to your computer and find out its serial port assigned by your OS, then use:

scons board=OpenMote-CC2538 toolchain=armgcc goldenImage=root bootload=[port name] oos_openwsn

Golden Image/SNIFFER

To compile and download the golden image/ROOT source code on the OpenMote-CC2538, use:

scons board=OpenMote-CC2538 toolchain=armgcc goldenImage=sniffer bootload=[port name] oos_sniffer

To configure the golden image, run the following command first at the directory of opewsn-sw/software/openvisualizer/:

scons runcli

Then use set command to configure the golden image. Following are the command supported:

  • set ebPeriod to “param” seconds
set [port name] gd_root ebPeriod [param] 
  • set transmitting channel to “param”
set [port name [gd_root|gd_sniffer] channel [param]
  • set dioPeriod to “param” mili-seconds
set [port name gd_root dioPeriod [param]
  • set daoPeriod to “param” mili-seconds
set [port name gd_root daoPeriod [param]
  • set node dagrank to “param”
set [port name gd_root dagrank [param]
  • set frame length to “param”
set [port name gd_root frameLength [param]
  • enable/disable ackReply. Enabled when “param” is 1, Disabled when “param” is 0
set [port name gd_root ackReply [param]
  • issue a 6p add command to add slot1,slot2 and slot3. For this command, the param requires to be put in between "[" and "]". For example, set COM4 gd_root 6pAdd [6,7]
set [port name gd_root 6pAdd [slot1,slot2,slot3]
  • issue a 6p delete command to delete slot1,slot2 and slot3. For this command, the param requires to be put in between "[" and "]". For example, set COM4 gd_root 6pDelete [6,7]
set [port name gd_root 6pDelete [slot1,slot2,slot3]
  • issue a 6p count command to get the number of slots of its neighbor. For this command, the param is not useless, put any number as param to process the command. For example, set COM4 gd_root 6pCount 0
set [port name gd_root 6pCount [param]
  • issue a 6p list command to list all slots of its neighbor. For this command, the param is not useless, put any number as param to process the command. For example, set COM4 gd_root 6pList 0
set [port name gd_root 6pList [param]
  • issue a 6p reset command to remove all slots of its neighbor. For this command, the param is not useless, put any number as param to process the command. For example, set COM4 gd_root 6pReset 0
set [port name gd_root 6pReset [param]
  • set slot duration to “param”(ticks, 30.5us)`
set [port name gd_root slotDuration [param]
  • enable/disable 6p repsonse. Enabled when “param” is 1, Disabled when “param” is 0
set [port name gd_root response [param]
  • set outgoing bandwidth of mote for sf0 to calculate the number of cells to be reserve/removed. The bandwidth unit is packet/slotframe. For example, set COM4 gd_root sf0Bandwidth 2
set [port name gd_root s0fBandwidth [param]

Two parts of Golden Images

The golden image contains two parts: firmware + software. And the this is the firmware release pages. To access the software pages, please visit: https://github.com/openwsn-berkeley/openwsn-fw/releases/tag/GD_REL-1.3.0

Pre-Compiled Images

There are two pre-compiled images you can download:

You can use the following the images with bootload scripts using following command:

\openwsn-fw>bootloader\OpenMote-CC2538\cc2538-bsl.py -e -w -b 115200 -p [port name] --bsl 03oos_openwsn_prog.bin

and

\openwsn-fw>bootloader\OpenMote-CC2538\cc2538-bsl.py -e -w -b 115200 -p [port name] --bsl 03oos_sniffer_prog.bin

Hardware Platforms and Toolchains

The OpenMote-CC2538 (www.openmote.com) is chosen to play the role of golden device. armgcc is the toolchain we used for compiling.

About

The OpenWSN project is to 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 will provide a source code of golden image for the 6TiSCH-3-Plugtests Interoperability Event, which will be held at Berlin, Germany, July 15-17 2016.

GD_REL-1.2.0

28 Jan 16:55
Compare
Choose a tag to compare

This is the release of Golden Image for Plugtests Interoperability Events: GD_REL-1.2.0.

Highlights

Two golden images are provide by this release:

Gold Image/ROOT

To compile and download the golden image/ROOT source code on the OpenMote-CC2538, you need plugin the OpenMote-CC2538 node to your computer and find out its serial port assigned by your OS, then use:

scons board=OpenMote-CC2538 toolchain=armgcc goldenImage=root bootload=[port name] oos_openwsn

Golden Image/SNIFFER

To compile and download the golden image/ROOT source code on the OpenMote-CC2538, use:

scons board=OpenMote-CC2538 toolchain=armgcc goldenImage=sniffer bootload=[port name] oos_openwsn

To configure the golden image, run the following command first at the directory of opewsn-sw/software/openvisualizer/:

scons runcli

Then use set command to configure the golden image. Following are the command supported:

  • set ebPeriod to “param” seconds
set [port name] gd_root ebPeriod [param] 
  • set transmitting channel to “param”
set [port name [gd_root|gd_sniffer] channel [param]
  • set dioPeriod to “param” mili-seconds
set [port name gd_root dioPeriod [param]
  • set daoPeriod to “param” mili-seconds
set [port name gd_root daoPeriod [param]
  • set node dagrank to “param”
set [port name gd_root dagrank [param]
  • set frame length to “param”
set [port name gd_root frameLength [param]
  • enable/disable ackReply. Enabled when “param” is 1, Disabled when “param” is 0
set [port name gd_root ackReply [param]
  • issue a 6p add command to add slot1,slot2 and slot3. For this command, the param requires to be put in between "[" and "]". For example, set COM4 gd_root 6pAdd [6,7]
set [port name gd_root 6pAdd [slot1,slot2,slot3]
  • issue a 6p delete command to delete slot1,slot2 and slot3. For this command, the param requires to be put in between "[" and "]". For example, set COM4 gd_root 6pDelete [6,7]
set [port name gd_root 6pDelete [slot1,slot2,slot3]
  • issue a 6p count command to get the number of slots of its neighbor. For this command, the param is not useless, put any number as param to process the command. For example, set COM4 gd_root 6pCount 0
set [port name gd_root 6pCount [param]
  • issue a 6p list command to list all slots of its neighbor. For this command, the param is not useless, put any number as param to process the command. For example, set COM4 gd_root 6pList 0
set [port name gd_root 6pList [param]
  • issue a 6p reset command to remove all slots of its neighbor. For this command, the param is not useless, put any number as param to process the command. For example, set COM4 gd_root 6pReset 0
set [port name gd_root 6pReset [param]
  • set slot duration to “param”(ticks, 30.5us)`
set [port name gd_root slotDuration [param]
  • enable/disable 6p repsonse. Enabled when “param” is 1, Disabled when “param” is 0
set [port name gd_root response [param]

Two parts of Golden Images

The golden image contains two parts: firmware + software. And the this is the software release pages. To access the firmware pages, please visit: https://github.com/openwsn-berkeley/openwsn-fw/releases/tag/GD_REL-1.2.0

Hardware Platforms and Toolchains

The OpenMote-CC2538 (www.openmote.com) is chosen to play the role of golden device. armgcc is the toolchain we used for compiling.

About

The OpenWSN project is to 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 will provide a source code of golden image for the 6TiSCH-2-Plugtests Interoperability Event, which will be held on INRIA-Paris, February 2-4 2016.

GD_REL-1.1.0

07 Jul 15:06
Compare
Choose a tag to compare

This is the release of Golden Image for Plugtests Interoperability Events: GD_REL-1.1.0.

Highlights

Two golden images are provide by this release:

Gold Image/ROOT

To compile and download the golden image/ROOT source code on the OpenMote-CC2538, you need plugin the OpenMote-CC2538 node to your computer and find out its serial port assigned by your OS, then use:

scons board=OpenMote-CC2538 toolchain=armgcc goldenImage=root bootload=[port name] oos_openwsn

Golden Image/SNIFFER

To compile and download the golden image/ROOT source code on the OpenMote-CC2538, use:

scons board=OpenMote-CC2538 toolchain=armgcc goldenImage=sniffer bootload=[port name] oos_openwsn

To configure the golden image, run the following command first at the directory of opewsn-sw/software/openvisualizer/:

scons runcli

Then use set command to configure the golden image. Following are the command supported:

  • set ebPeriod to “param” seconds
set [port name] image1 ebPeriod [param] 
  • set transmitting channel to “param”
set [port name [image1|image2] channel [param]
  • set dioPeriod to “param” mili-seconds
set [port name image1 dioPeriod [param]
  • set daoPeriod to “param” mili-seconds
set [port name image1 daoPeriod [param]
  • set node dagrank to “param”
set [port name image1 dagrank [param]
  • set frame length to “param”
set [port name image1 frameLength [param]
  • enable/disable ackReply. Enabled when “param” is 1, Disabled when “param” is 0
set [port name image1 ackReply [param]

Download

The release is composed of two parts:

Pre-Compiled Images

There are two pre-compiled images you can download:

You can use the following the images with bootload scripts using following command:

\openwsn-fw>bootloader\OpenMote-CC2538\cc2538-bsl.py -e -w -b 115200 -p [port name] --bsl 03oos_openwsn_prog.bin

and

\openwsn-fw>bootloader\OpenMote-CC2538\cc2538-bsl.py -e -w -b 115200 -p [port name] --bsl 03oos_sniffer_prog.bin

Hardware Platforms and Toolchains

The OpenMote-CC2538 (www.openmote.com) is chosen to play the role of golden device. armgcc is the toolchain we used for compiling.

About

The OpenWSN project is to 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 will provide a source code of golden image for the Plugtests Interoperability Event, which will be held on Prague, July 17-19 2015 before the IETF 93rd meeting.

REL-1.8.0

06 Oct 07:50
Compare
Choose a tag to compare

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).

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

Now, to add the cexample application, use

scons board=telosb toolchain=mspgcc apps=cexample oos_openwsn

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.

REL-1.6.0

22 Sep 07:32
Compare
Choose a tag to compare

21 September 2014, Berkeley, CA, USA.

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

Highlights

Download

The release is composed of two parts:

Hardware Platforms

OpenWSN 1.6.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.