Releases: openwsn-berkeley/openwsn-fw
REL-1.24.0
The main changes of this release is Implementating the draft-ietf-6tisch-msf-02: https://tools.ietf.org/html/draft-ietf-6tisch-msf-02.
The code has been tested on 40 OpenTestbed nodes for >24 hours with > 95% end-end reliability (computed with DAO sequence number).
REL-1.22.0
This release contains an updated version of MSF draft implementation.
This release has been tested over opentestbed with 99% end-to-end reliability for 37 nodes.
REL-1.20.0
This release supports XON/XOFF feature. There is no SerialRx Slot in the schedule anymore. PC can send serial frames to the mote at any time.
REL-1.18.0
This release contains:
- OpenMote-B port only for sub-GHz
- update bsp_radio_rx and bsp_radio_tx projects
- create script to get connectivity of motes over OpenTestbed
REL-1.16.0
This release includes
- the port of openmote-b-24ghz which only use the cc2538 2.4ghz radio.
- the support of bootload option for opentestbed which allow user to upload the compiled image to motes on opentestbed through scons command line.
REL-1.14.0
This release contains code built specifically 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.
compile/load
The code provides the "golden image" used during the plugfest.
To compile and flash the golden image onto the OpenMote-CC2538 as dagroot:
scons board=OpenMote-CC2538 toolchain=armgcc dagroot=1 msf_adapting_traffic=0 bootload=<port_name> oos_openwsn
To compile and flash the golden image onto the OpenMote-CC2538 as 6N:
scons board=OpenMote-CC2538 toolchain=armgcc dagroot=0 msf_adapting_traffic=0 bootload=<port_name> oos_openwsn
The pre-compiled image for dagroot and 6N are attached in the release page.
Use the following command to load the pre compiled image into your OpenMote-CC2538:
openwsn-fw/> bootloader\openmote-cc2538\cc2538-bsl.py -e --bootloader-invert-lines -w -b 400000 -p <portname> gd_root.ihex
openwsn-fw/> bootloader\openmote-cc2538\cc2538-bsl.py -e --bootloader-invert-lines -w -b 400000 -p <portname> gd_6n.ihex
REL-1.12.0
This release mainly contains the implementation of following drafts:
- draft-ietf-6tisch-6top-protocol-10 : https://tools.ietf.org/html/draft-ietf-6tisch-6top-protocol-10
- draft-chang-6tisch-msf-01 : https://tools.ietf.org/html/draft-chang-6tisch-msf-01
The code consist of:
- software, meant to run on your computer
- firmware, built for the OpenMote-CC2538 (www.openmote.com) platform
- release at https://github.com/openwsn-berkeley/openwsn-fw/releases/tag/REL-1.12.0
- two firmware images are provided by this release:
- the "golden image", a version of the regular OpenWSN code which implements the protocols for the plugtest
- sniffer firmware, which integrates with Wireshark
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>
- set the communication channel
- 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
to1
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>
- set the timeout which the device send a keepAlive(
- 6P commands
- issue a 6P add command to add 1 tx cells among several candidate cells(set
celllist
to6-7-8
for slotoffset 6, 7 and 8 -- channeloffset is always 2). To addrx
, orshared
cell, just replacetx
byrx
orshared
.set <port_name> 6pAdd tx,1,<celllist>
- issue a 6P delete command to delete all specified cells (set
celllist
to6-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
to1
to enable,0
to disable)set <port_name> 6pResponse <value>
- issue a 6P add command to add 1 tx cells among several candidate cells(set
- 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>
- set the period at the which the device sends DIOs (
- app-layer commands
- set period of the
uinject
application (value
in number of packets per slotframe)set <port_name> sf0Bandwidth <value>
- set period of the
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:
- source code: https://github.com/wireshark/wireshark/archive/master.zip
- latest Windows 64-bit build: ftp://builder.openwsn.org/wireshark/Wireshark-win64-6tisch-latest.exe
- latest Windows 32-bit build: ftp://builder.openwsn.org/wireshark/Wireshark-win32-6tisch-latest.exe
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
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:
- software, meant to run on your computer
- firmware, built for the OpenMote-CC2538 (www.openmote.com) platform
- release at https://github.com/openwsn-berkeley/openwsn-fw/releases/tag/REL-1.10.0
- two firmware images are provided by this release:
- the "golden image", a version of the regular OpenWSN code which implements the protocols for the plugtest
- sniffer firmware, which integrates with Wireshark
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>
- set the communication channel
- 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
to1
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>
- set the timeout which the device send a keepAlive(
- 6P commands
- issue a 6P add command to add 1 tx cells among several candidate cells(set
celllist
to6-7-8
for slotoffset 6, 7 and 8 -- channeloffset is always 2). To addrx
, orshared
cell, just replacetx
byrx
orshared
.set <port_name> 6pAdd tx,1,<celllist>
- issue a 6P delete command to delete all specified cells (set
celllist
to6-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
to1
to enable,0
to disable)set <port_name> 6pResponse <value>
- issue a 6P add command to add 1 tx cells among several candidate cells(set
- 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>
- set the period at the which the device sends DIOs (
- app-layer commands
- set period of the
uinject
application (value
in number of packets per slotframe)set <port_name> sf0Bandwidth <value>
- set period of the
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:
- source code: https://github.com/wireshark/wireshark/archive/master.zip
- latest Windows 64-bit build: ftp://builder.openwsn.org/wireshark/Wireshark-win64-6tisch-latest.exe
- latest Windows 32-bit build: ftp://builder.openwsn.org/wireshark/Wireshark-win32-6tisch-latest.exe
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.
GD_REL-1.3.0
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:
- GD/ROOT : https://github.com/openwsn-berkeley/openwsn-fw/releases/download/GD_REL-1.3.0/gd_root.bin
- GD/SNIFFER : https://github.com/openwsn-berkeley/openwsn-fw/releases/download/GD_REL-1.3.0/gd_sniffer.bin
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
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_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]
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-sw/releases/tag/GD_REL-1.2.0
Pre-Compiled Images
There are two pre-compiled images you can download:
- GD/ROOT : https://github.com/openwsn-berkeley/openwsn-fw/releases/download/GD_REL-1.2.0/gd_root.bin
- GD/SNIFFER : https://github.com/openwsn-berkeley/openwsn-fw/releases/download/GD_REL-1.2.0/gd_sniffer.bin
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-2-Plugtests Interoperability Event, which will be held on INRIA-Paris, February 2-4 2016.