WSN430
Project Leads
OpenWSN support
The WSN430 is fully supported in OpenWSN.The OpenWSN builders build the WSN430 firmware nightly:
Support for WSN430v13b is EXPERIMENTAL. WSN430v14 is fully supported.
The WSN430 mote
Versions
The WSN430 features a MSP430 micro-controller and a radio. There are two versions of the board:
the WSN430 1.3b features a CC1100 radio, which communicates at 868MHz
the WSN430 1.4 features an IEEE802.15.4-compliant CC2420 radio, communicating in the 2.4GHz ISM frequency band
Both versions are supported by OpenWSN.
WSN430v13b | WSN430v14 |
---|---|
Components
MSP430F1611 microcontroller (16bit, 48 kb flash, 10kB RAM)
CC1101 or CC2420 radio chip (depending on version)
TSL2550 light sensor
DS1722 temperature sensor
M25P80 external flash memory (1 MB)
3,7V battery (830 mAh)
Datasheets, Schematics and Resources
Although the board is fully supported by OpenWSN, the WSN430 board is NOT developed by the OpenWSN team. Below are links to the official WSN430 documentation, as well as additional resources we find useful:
- WSN430 developer's guide: http://perso.ens-lyon.fr/eric.fleury/Upload/wsn430-docbook/index.html
- Programming WSN430 boards with the TI MSP-FET430UIF debugger: http://www.senslab.info/2011/12/using-the-debugger-with-the-senslab-boards/
- More information regarding mspdebug: http://mspdebug.sourceforge.net/manual.html
The datasheets
and schemetics of the board are:
Kickstart
This section documents how to load firmware into the WSN430.
This guide was prepared using the following:
- computer running Ubuntu 13.10, 64-bit
- WSN430 v13b
- "WSN430 JTAG adaptor" board
- MSP430-JTAG by Olimex
mspdebug
software
Many (perfectly working) alternatives exist. Some are listed in the "Alternate Tools" section below.
Are you using another set of tools? Add a comment to this page!
Connect the Hardware
Make sure to use following jumper settings:
- On the WSN430 1.3b, put the
JP5
on the "batt" position - On the "WSN430 JTAG adaptor" board, close the
JP6
jumper
Build the Binary
~$ sudo apt-get install scons [...] ~$ cd Desktop/ ~/Desktop$ mkdir openwsn ~/Desktop$ cd openwsn/ ~/Desktop/openwsn$ git clone https://github.com/openwsn-berkeley/openwsn-fw.git [...] ~/Desktop/openwsn$ cd openwsn-fw/ ~/Desktop/openwsn/openwsn-fw$ scons board=wsn430v13b toolchain=mspgcc bsp_leds scons: Reading SConscript files ... ___ _ _ _ ___ _ _ | . | ___ ___ ._ _ | | | |/ __>| \ | | | || . \/ ._>| ' || | | |\__ \| | `___'| _/\___.|_|_||__/_/ <___/|_\_| |_| openwsn.org scons: done reading SConscript files. scons: Building targets ... Compiling firmware/openos/projects/common/01bsp_leds/01bsp_leds.o Linking firmware/openos/projects/common/01bsp_leds_prog msp430-size firmware/openos/projects/common/01bsp_leds_prog text data bss dec hex filename 2936 0 38 2974 b9e firmware/openos/projects/common/01bsp_leds_prog msp430-objcopy --output-target=ihex firmware/openos/projects/common/01bsp_leds_prog firmware/openos/projects/common/01bsp_leds_prog.ihex msp430-objcopy --output-target=binary firmware/openos/projects/common/01bsp_leds_prog firmware/openos/projects/common/01bsp_leds_prog.bin scons: done building targets.
~$ cd /home/user/Desktop/openwsn/openwsn-fw/firmware/openos/bootloader/telosb/ ~/Desktop/openwsn/openwsn-fw/firmware/openos/bootloader/telosb$ ls bsl lib readme.txt test_leds_xtal.ihex
To test thing, you can use one of the following binaries:
Load and Run
Oops!
Before you can go on, you need to install the required tools to load and debug code in the MSP430:
$ sudo apt-get install gcc-msp430 msp430-libc msp430mcu mspdebug
Oops!
If you're using the MSP430-JTAG by Olimex, it connects to your computer's parallel port. You need to allow the mpsdebug
tool to access that parallel port (in our case /dev/parport1
).
List the available parallel ports:
$ ls -l /dev/parport* crw-rw---- 1 root lp 99, 0 juil. 2 09:40 /dev/parport0 crw-rw-rw- 1 root lp 99, 1 juil. 2 09:40 /dev/parport1
Grant read/write access to the parallel port your MSP430-JTAG is connected to
$ sudo chmod 666 /dev/parport1
Using the following commands, you will:
- launch
mspdebug
on the parallel port - load and run the
01bsp_leds_prog.ihex
binary image - load and run the
test_leds_xtal.ihex
binary image
Video
running 01bsp_leds_prog.ihex | running test_leds_xtal.ihex |
---|
Alternate Tools
This guide was completed successfully with the following combinaiton of tools and boards:
- WSN430 v14
- MSP430-FET by Texas Instruments
- "WSN430 JTAG adaptor" board
- IAR Embedded Workbench for MSP430
The following diagram indicates the connections used:
IoT-LAB Testbed Support
IoT-LAB is a large-scale open wireless sensor network testbed operated by the French CNRS and INRIA research institutions. It features 2728 low-power sensor motes deployed in 6 different research centers throughout France. Among these 2728 motes, over 1000 are WSN430 boards.
An IoT-LAB node consists of 3 interconnected boards:
- The "Open Node", a WSN430 fully programmable by the user (the board closest to us in the picture above)
- The "Gateway" the board which connects the WSN430 to the IoT-LAB infrastructure and the Internet (the larger board in the picture above)
- The "Control Node", a second WSN430 node, not programmable by the use, but used for monitoring (the board furthest from us in the picture above)
More information about IoT-LAB at https://www.iot-lab.info/.
Building for IoT-LAB
The IoT-LAB's management interface allows you to load binaries images onto the boards. These images are in the "intel-standard" format, and contain the hexadecimal representation, in ASCII characters, of each byte. This means that they can be opened by a regular text editor.
For example, the following is the 00std_uart
application for the WSN430v14, in "intel-standard" format:
:104000005542200135D0085A82450011314000390F :104010003F4000000F9308249242001120012F839B :104020009F4FEE400011F8233F4000000F930724FC :104030009242001120011F83CF430011F923B240A7 :10404000805A2001F240E0FF5600F240070057007E :10405000F2D070003200F2D070003100F240300037 :104060001B00B24010006201B240803E7201B240BB :1040700010016001F2D0C0FF0400F2D01000700007 :10408000F2D020007100F24029007400C243750094 :10409000F2404A007300F2F0FEFF7000F2D04000E0 :1040A0000000F2D080FF000032D0180032D0F000C3 :1040B000FD3F3040EC400F12F24061007700F2E02B :1040C000200031003F4100130F12F2F0BFFF020049 :1040D000D24276007700F2E0100031003F41001339 :0E40E0000F12F2F07F0002003F4100130013A8 :10FFE000B240B240B240B240B240B240B640B2407D :10FFF000E040C840B240B240B240B240B2400040DF :0400000300004000B9 :00000001FF
This file can be uploaded on IoT-LAB.
All IAR projects are already set up to generate the intel-standard version of the binary (with extension .hex
) for all WSN430v13b and WSN430v14 projects.