release 1.2.0

OpenWSN now runs CoAP.

CoAP (Constrained Application Protocol) is the "HTTP for motes" being finalized by the IETF CORE working group. In an OpenWSN network, every mote is now both a CoAP client and a CoAP server:

  • since a mote is a CoAP server, you can interact with it from any computer on the Internet, using a regular web browser (check out Copper for Firefox).
  • since a mote is a CoAP client, it can interact with an CoAP-enable server:
    • that server can be a data server on the Internet, to which a mote publishes data;
    • that server can be a query server on the Internet; think about a sprinkler querying weather.com to figure out whether it should turn on today;
    • that server can be a different mote in the network; think about a light asking the presence detector whether there is still someone in the room.

The OpenWSN implementation covers the following Internet drafts:

Details about the new OpenWSN functionalities:

  • CoAP resource directory registration
    • after connecting to the network, a mote registers its resources to a CoAP resource directory (RD);
    • the RD used in the release is http://interop.ipso\-alliance.org:8000/ ;
    • the host is set to openwsn followed by the last byte of the mote's EUI64;
    • the mote refreshes its registration every 5 min;
    • you can force a mote to re-register immediately by sending a CoAP POST command to resource /reg.
  • CoAP GET
    • get a list of available resources by sending a CoAP GET command on the resource /.well-known/core
    • access the current value of a sensor by browsing to its resource. Supported resources are:
      • /led returns 1 (lightbulb) or 0 (grey lightbulb) (LED);
      • /t returns the raw 16-bit ADC measurement from the temperature sensor;
      • /xl1 returns the raw 16-bit ADC measurement from the sensitive accelerometer (X axis, Y axis, Z axis, filtered Z axis);
      • /info returns the version of the stack running, the board, microcontroller and radio models.
  • CoAP PUT
    • switch the mote's LED on/off by sending a CoAP PUT to /led containing '1' (lightbulb) or '0' (grey lightbulb).
  • CoAP sensor data publishing
    • all sensors can publish data to a data server;
    • the data server used in the release is http://motes.eecs.berkeley.edu/data/;
    • you can turn on/off any sensor by sending a POST command to that resource containing a '1' (start publishing) or a '0' (stop publishing);
    • by default, only the temperature sensor is publishing every 60 s.