Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
SNMP auf Contiki 2.5 Installation
Eine Implementierung von SNMP auf Contiki ist bereits vorhanden, sie wurde im Rahmen einer Masterarbeit an der Jacobs University in Bremen entwickelt. Jedoch wurde diese Version für Contiki 2.4 entwickelt und ist mit dem derzeitigen Quellcode, welcher unter http://code.google.com/p/contiki-snmp/ veröffentlicht wurde, auf Contiki 2.5 nicht lauffähig. Es sind deshalb einige kleine Änderungen zur Anpassung auf Contiki 2.5 im Programcode nötig.
Download des SNMP-Quellcodes
Der Quellcode kann via SVN von der Google Code Seite heruntergeladen werden.
Dieses Tutorial setzt die Konfigurationschritte von Installation der Contiki Entwicklungsumgebung voraus.
Dazu in das Windows XP Gastsystem wechseln und Tortoise SVN downloaden (http://tortoisesvn.net/) und installieren. Anschließend in das Cygwin Verzeichnis wechseln und unter /home/Administrator/ einen neuen Ordner erstellen (Bsp. C25-SNMP). Dann mit der rechten Maustaste in eine freie Fläche klicken und SVN Checkout… auswählen. (siehe Abbildung)
Im folgenden Fenster nun die Angaben aus der nächsten Abbildung einfügen und anschließend mit Ok bestätigen.
Der Quellcode wird nun heruntergeladen und im Ordner Source gespeichert.
Download von Contiki 2.5
Als nächstes wird der Contiki 2.5 Quellcode benötigt, dieser kann von http://sourceforge.net/projects/contiki/files/Contiki/Contiki 2.5/contiki-2.5.zip/download heruntergeladen werden. Anschließend sollte er im C25-SNMP Verzeichnis unter Contiki-2.5 entpackt werden.
Anpassung der Ordnerstruktur
Um Anwendungen auf Contiki zu installieren sind einige Regeln sowie Festlegungen zu beachten. Der Quellcode der zu installierenden Software wird in das Contiki apps Verzeichnis kopiert. Da der Sourcecode des Contiki SNMPs im Ordner cygwin\home\Administrator\C25-SNMP\Source\src befindet muss dieser gesamte Ordner in den Contiki 2.5 apps Ordner (\cygwin\home\Administrator\C25-SNMP\contiki-2.5\apps) kopiert werden. Anschließend wird dieser Ordner von src in snmpd umbenannt. Da die Kompilierung von Contiki auf Makefiles basiert, wird dieses noch benötigt. Es befindet sich unter \cygwin\home\Administrator\C25-SNMP\Source\app. Zusätzlich befindet sich in diesem Ordner die Datei snmp-server.c, diese Datei enthält den Autostarteintrag für den SNMP Daemon. Nun wird dieser gesamte Ordner app in das Contikiverzeichnis \cygwin\home\Administrator\C25-SNMP\contiki-2.5\examples\ kopiert und anschließend in snmp umbenannt.
Änderungen im Contiki Quellcode
Da auch im Contiki 2.5 Quellcode einige Änderungen durchzuführen sind, müssen die Dateien im Verzeichnis \cygwin\home\Administrator\C25-SNMP\contiki-2.5\cpu\avr\radio\rf230 durch die Dateien im SVN Verzeichnis \cygwin\home\Administrator\C25-SNMP\Source\contiki ersetzt werden.
Änderungen im SNMP Quellcode
Bei Contiki 2.5 hat sich im Vergleich zu Contiki 2.4 die Funktion HTONS() geändert, diese heisst unter Contiki 2.5 UIP_HTONS(). Es muss also in allen Dateien die Funktion von HTONS() nach UIP_HTONS() umbenannt werden. Änderungen sind im Verzeichnis \cygwin\home\Administrator\C25-SNMP\contiki-2.5\apps\snmpd in folgenden Dateien nötig:
Dateiname | Zeile |
---|---|
logging.c | Zeile 46 und Zeile 48 |
snmpd.c | Zeile 159 und Zeile 16 |
Änderungen im Makefile
Anschließend muss noch das Makefile angepasst werden, dazu in den Ordner \cygwin\home\Administrator\C25-SNMP\contiki-2.5\examples\snmp wechseln und dort die Datei Makefile editieren. In Zeile 7 ist CONTIKI=/data/masters/dev/contiki-2.x durch CONTIKI = ../.. zu ersetzten.
Kompilierung
Damit sind alle benötigten Änderungen abgeschlossen und der SNMP Daemon kann kompiliert werden. Dazu muss Cygwin gestartet werden und in das Verzeichnis /C25-SNMP/contiki-2.5/examples/snmp gewechselt werden. Nun wird die Kompilierung mit make raven gestartet.
cd /C25-SNMP/contiki-2.5/examples/snmp make raven
Upload auf den AVR Raven (ATmega1284P)
Hierzu wird äquivalent zu AVR RavenRZ USB-Stick Installation vorgegangen. Der korrekte Anschluß des JTAG Kabels ist in folgender Abbildung zu sehen:
In AVR Studio muss diesmal unter „Device and Signature Bytes“ als Microcontroller der ATmega1284P gewählt werden. Als .elf-File wird die Datei snmp-server.elf im Verzeichnis \cygwin\home\Administrator\C25-SNMP\contiki-2.5\examples\snmp\ gewählt. (siehe untenstehende Abbildungen.
Durch den anschließend Klick auf Program wird der Upload gestartet.