Inhaltsverzeichnis
Merkur Breakout Board
Experimente mit modernster Technik erfordern manchmal Finger in Ameisengröße. Um Mini-Funkmodule auch als Mensch in den Griff zu bekommen haben wir dieses Board geschaffen. Das Merkur Board ist ein Arduino und Contiki-OS kompatibles Mikrocontrollerboard mit integriertem 2.4Ghz IEEE802.15.4 Funksender. Der Funkteil unterstützt alle auf 802.15.4 basierenden Funkprotokolle wie 6LoWPAN, ZigBee und RF4ce.
Es ist im IoT-Shop erhältlich.
Durch den integrierten Arduino-OSD Bootloader kann das Modul mit einem 3.3V FTDI USB-Serial Wandler programmiert werden.
HOWTOs
Installation der Entwicklungsumgebung für die Softwareentwicklung unter Contiki OS unter Linux
AVR-Motes-in-Cooja Simulation des Funkknotens über den Cooja Simulator
IP-Anbindung
Die Integration in das eigene IP-Netz erfolgt über einen RaspyEdge-Shield oder einen 6LoWPAN-Edge-Router. Dieser verbindet unsern 6LoWPAN-Merkur mit unserem IP-Netz um ihn über eine IPv6 Adresse ansprechen zu können.
Auf Applikationsebene wird das COAP Protokoll eingesetzt.
COAP-Resourcen
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
Mit Hilfe des Copper-Add-On spricht der Mozilla Browser das Coap Protokoll. Auf der Kommandozeile kann z.B. die libcoap helfen. Durch Eingabe einer Coap URI kann auf den Sensorknoten zugegriffen werden:
Beispiele
coap-client -m get coap://[aaaa::221:2eff:ff00:264e]:5683/.well-known/core coap-client -m get coap://[aaaa::221:2eff:ff00:264e]:5683/s/battery
Firmware
Das Modul ist Contiki-OS und Arduino kompatibel. Der Arduino-Bootloader ist vorprogrammiert. Contiki OS beinhaltet einen sehr kleinen IP Stack uIP genannt welcher eine Ipv6 und eine 6LoWPAN Implementierung beinhaltet. Das Betriebssystem ist in C geschrieben und wird mithilfe von Make gesteuerten Cross-Compilern für die jeweilige Hardwareplattform übersetzt.
Images findest du hier:
http://www.open-entry.com/osdomotics/osd-bin/osd-20130225/
Die Source Codes findest du auf Github:
Contiki-OS
Debian
Installation der Toolchain
Installation der Entwicklungsumgebung für die Softwareentwicklung unter Contiki OS unter Linux
Hardware
Pinouts
VCC | Versorgungsspannung oder Pluspol von 1,9 bis 3,6V |
---|---|
GND | Ground oder Minuspol |
COM | Angabe, welchen Kommunikationsmodus (I2C, UART, SPI, LED) über die Pins gefahren werden. |
Arduino/Contiki | Pin-Belegung für den Arduino-Mode und Contiki OS |
AVR | Angabge der Pin-Belegung am AVR-Mikroprozessor |
Interrupts | INT; Interrupts, PCINT: Interrupts, die im Deep-Sleep-Modus angesprochen werden können, JTAG: Programmierports (nur während des Bootloaders aktiv, danach standardmäßog deaktiviert) |
Pin | Angabe der Hardware-Pins der Stecker am Merkur-Board |
Contiki Sensoren/Aktoren
Name | Arduino/Contiki | AVR | PIN | Funktion |
---|---|---|---|---|
Battery | – | – | – | Interner Spannungssensor |
LED | D4 | PE5 | SV1:05 | Onboard Led |