Table of Contents
Merkur Breakout Board
The Merkur Board was created for fast prototyping in the internet of things sector. It includes a 2.4GHz IEEE802.15.4 wireless chip, compatible with all 802.15.4 based protocols like 6LoWPAN, ZigBee and RF4ce. It supports Arduino and Contiki-OS
It's available at IoT-Shop
Thanks to the integrated Arduino-OSD boot loader it's possible to program the Merkur Board using a 3.3V FTDI USB-Serial converter.
HOWTOs
only available in german at the moment.
IP Connectivity
The integration into the own IP network can be accomplished using a RaspyEdge-Shield, an Edge-Router or a Merkur Board with and FTDI USB-Serial converter. The Merkur Board automatically configures it IPv6 address based on the prefix given by one of the mentioned border routers. The Constrained Application Protocol (CoAP) is used on application layer.
CoAP Resources
Resource | GET | POST | Comments |
---|---|---|---|
/.well-known/core | X | X | Well-Known URIs |
/p/model | X | - | Model Name |
/p/sw | X | - | Software Version |
/p/name | X | X | Name |
/a/led | X | X | Status LED |
/s/button | X | - | Config Button |
/s/cputemp | X | - | CPU Temperature |
/s/battery | X | - | Battery Status |
CoAP Clients
There are multiple CoAP clients available.
* libcoap: C-Implementation of CoAP (with example command-line client) * Copper add-on for Firefox
Examples
coap-client -m get coap://[2001:DB8::221:2eff:ff00:264e]:5683/.well-known/core coap-client -m get coap://[2001:DB8::221:2eff:ff00:264e]:5683/s/battery
Firmware
The Merkur Board is shipped with preinstalled Arduino boot loader. It can be used with Arduino programs or Contiki-OS. Contiki-OS contains a tiny IP stack called uIP with an IPv6 and 6LoWPAN implementation. It's written in C and compiled through Make controlled cross compilers for the used hardware platform.
Images are available at:
http://www.open-entry.com/osdomotics/osd-bin/osd-20130225/
The source code is hosted on GitHub:
Debian
Installing the toolchain:
apt-get install avr-libc binutils-avr gcc-avr gdb-avr simulavr avrdude doxygen
Get osd-contiki:
wget https://github.com/osdomotics/osd-contiki/archive/master.tar.gz
Extract it
tar xzvf master.tar.gz cd osd-contiki/examples/osd/er-rest-example-merkurboard # compile the code ./run.sh # flash the board sudo ./flash.sh # works without sudo if the user has write permissions to /dev/ttyUSB0, member of group uucp in many Linux distributions
Generate doc if needed:
cd osd-contiki/doc make xdg-open html/index.html
Cooja Simulator
apt-get install openjdk-7-jdk openjdk-7-jre ant libncurses5-dev build-essential binutils-msp430 gcc-msp430 msp430-libc cd ~/osd-contiki git submodule update --init ant run
Links:
Hardware
Pinouts
Contiki Sensoren/Aktoren
Name | File | PIN | Port | Function |
---|---|---|---|---|
Battery | battery-sensor.c .h | – | – | internal voltage sensor |
Button | button-sensor.c | SV1/4 | PE4/INT4 | configuration button |
DHT11 | dht11.c .h | SV2/4 | PE6 | Humidity /temperature sensor |
DS1820 | ds1820.c .h | SV1/4 | PE4 | 1-Wire temperature sensor |