contiki:a-n-solutions-module:atany24001-usb-gateway
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
contiki:a-n-solutions-module:atany24001-usb-gateway [2012/10/12 07:01] – [Tunslip6 unter Instant Contiki 2.6] sven_zehl | contiki:a-n-solutions-module:atany24001-usb-gateway [2017/01/24 18:49] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== @ANY2400 & @ANY900 USB Stick mit RPL-Border-Router und SLIP ====== | ====== @ANY2400 & @ANY900 USB Stick mit RPL-Border-Router und SLIP ====== | ||
- | Der @ANY USB Stick ist eigentlich nicht für den Einsatz als IPv6 Router konzipiert, er besitzt nicht wie der Raven RZUSB-Stick ein vollständiges USB Interface mit RNDIS Support, sondern nur einen CP2103 Chip, welcher als virtuelle serielle Schnittstelle genutzt werden kann. Um jedoch einzelne Contiki | + | Der @ANY USB Stick ist eigentlich nicht für den Einsatz als IPv6 Router konzipiert, er besitzt nicht wie der Raven RZUSB-Stick ein vollständiges USB Interface mit RNDIS Support, sondern nur einen CP2103 Chip, welcher als virtuelle serielle Schnittstelle genutzt werden kann. Um jedoch einzelne Contiki |
- | {{: | + | {{: |
Der @ANY2400 USB Stick besitzt das AT-ANY-2400-1 Modul, der @ANY900 USB Stick das AT-ANY-900-1 Modul (siehe [[contiki: | Der @ANY2400 USB Stick besitzt das AT-ANY-2400-1 Modul, der @ANY900 USB Stick das AT-ANY-900-1 Modul (siehe [[contiki: | ||
- | ---- | ||
Um eine Kommunikation zwischen uIP auf dem Mikrocontroller und dem PC über die serielle Schnittstelle zu ermöglichen bietet Contiki den Einsatz des SLIP Protokolls an. Leider wurde dies bisher kaum für das Zigbit Modul genutzt, weshalb kein vorkonfigurierter Quellcode innerhalb des Contiki Quellcodes vorhanden ist. Für andere Plattformen wie z.B, SKY oder auch den AVR-Zigduino sind bereits Implementierungen vorhanden. Auch für den AVR Raven gibt es Anfänge einer SLIP Implementierung, | Um eine Kommunikation zwischen uIP auf dem Mikrocontroller und dem PC über die serielle Schnittstelle zu ermöglichen bietet Contiki den Einsatz des SLIP Protokolls an. Leider wurde dies bisher kaum für das Zigbit Modul genutzt, weshalb kein vorkonfigurierter Quellcode innerhalb des Contiki Quellcodes vorhanden ist. Für andere Plattformen wie z.B, SKY oder auch den AVR-Zigduino sind bereits Implementierungen vorhanden. Auch für den AVR Raven gibt es Anfänge einer SLIP Implementierung, | ||
Da es sinnvoll ist nicht nur eine einzelne Kommunikation der Knoten mit dem Gateway zu ermöglichen, | Da es sinnvoll ist nicht nur eine einzelne Kommunikation der Knoten mit dem Gateway zu ermöglichen, | ||
- | Hierzu gibt es unter Contiki bereits eine Implementierung, | + | Hierzu gibt es unter Contiki bereits eine Implementierung, |
- | -> __Diese Anleitung bezieht sich auf Contiki 2.6 Stand 26.09.12, wird eine neuere Version verwendet, so können hier Unterschiede im Quellcode auftreten.__ | + | :!: -> __Diese Anleitung bezieht sich auf Contiki 2.6 Stand 26.09.12, wird eine neuere Version verwendet, so können hier Unterschiede im Quellcode auftreten.__ |
+ | :!: -> [[contiki: | ||
===== Änderungen innerhalb des Plattform Ordners für das Zigbit Modul (/ | ===== Änderungen innerhalb des Plattform Ordners für das Zigbit Modul (/ | ||
Zeile 256: | Zeile 256: | ||
-> Hier kann die komplette Datei mit den Änderungen betrachtet werden [[contiki: | -> Hier kann die komplette Datei mit den Änderungen betrachtet werden [[contiki: | ||
+ | |||
+ | |||
+ | ==== Datei rf230bb.c ==== | ||
+ | |||
+ | Die @ANY-2400 Module besitzen den AT86RF231 Funkchip, dieser bietet die Möglichkeit einen externen Verstärker nachzuschalten. Dies wurde innerhalb den @ANY-2400 Modulen realisiert. Damit dieser Verstärker nicht immer aktiv ist, bietet der AT86RF231 einen Ausgangspin, | ||
+ | |||
+ | innerhalb '' | ||
+ | <code c> | ||
+ | /*sz*/ | ||
+ | /*set external PA in on state, used for @ANY modules*/ | ||
+ | uint8_t reg_trx_ctrl_state; | ||
+ | reg_trx_ctrl_state = hal_register_read(0x04); | ||
+ | reg_trx_ctrl_state = (reg_trx_ctrl_state) | (0x80); | ||
+ | hal_register_write(0x04, | ||
+ | /*sz*/ | ||
+ | </ | ||
+ | |||
+ | -> gesamte Datei (Änderungen markiert mit /*sz*/) | ||
+ | [[contiki: | ||
===== Kompilierung und Verbindungsherstellung über tunslip6 ===== | ===== Kompilierung und Verbindungsherstellung über tunslip6 ===== | ||
Zeile 269: | Zeile 288: | ||
==== Tunslip6 unter Instant Contiki 2.6 ==== | ==== Tunslip6 unter Instant Contiki 2.6 ==== | ||
- | Um nun eine Verbindung zwischen dem USB Stick und dem PC herzustellen, | + | Um nun eine Verbindung zwischen dem USB Stick und dem PC herzustellen, |
<code c> | <code c> | ||
sudo ./tunslip6 aaaa::1/64 -s / | sudo ./tunslip6 aaaa::1/64 -s / | ||
Zeile 277: | Zeile 296: | ||
{{: | {{: | ||
- | Die korrekte Funktion kann nun mithilfe von ping6 überprüft werden, dazu kann zuerst das SLIP Interface im Besipiel | + | Die korrekte Funktion kann nun mithilfe von ping6 überprüft werden, dazu kann zuerst das SLIP Interface im Beispiel |
{{: | {{: | ||
Zeile 288: | Zeile 307: | ||
Wenn vermaschtes Routing verwendet werden soll, so muss zusätzlich für jeden Knoten das Flag '' | Wenn vermaschtes Routing verwendet werden soll, so muss zusätzlich für jeden Knoten das Flag '' | ||
+ | Außerdem ist die Anzahl von Neighbors und die Größe der Routingtabelle standardmäßig auf 4 eingestellt. Wenn dies nicht ausreichen sollte, so kann dies innerhalb der Datei contiki-conf.h im platform/ | ||
- | __Hinweis für die 2,4GHz Module und 2,4 GHz USB Stick:__ | ||
- | -> Die @ANY Module besitzen den AT86RF231 Funkchip, dieser bietet die Möglichkeit einen externen Verstärker nachzuschalten. Dies wurde innerhalb den @ANY Modulen realisiert. Damit dieser Verstärker nicht immer aktiv ist, bietet der AT86RF231 einen Ausgangspin, | ||
- | |||
- | innerhalb '' | ||
<code c> | <code c> | ||
/*sz*/ | /*sz*/ | ||
- | /*set external PA in on state, used for @ANY modules*/ | + | /*configuration |
- | uint8_t reg_trx_ctrl_state; | + | /* See uip-ds6.h */ |
- | reg_trx_ctrl_state = hal_register_read(0x04); | + | #define UIP_CONF_DS6_NBR_NBU |
- | reg_trx_ctrl_state = (reg_trx_ctrl_state) | (0x80); | + | #define UIP_CONF_DS6_DEFRT_NBU |
- | hal_register_write(0x04, | + | #define UIP_CONF_DS6_PREFIX_NBU |
+ | #define UIP_CONF_DS6_ROUTE_NBU | ||
+ | #define UIP_CONF_DS6_ADDR_NBU | ||
+ | #define UIP_CONF_DS6_MADDR_NBU | ||
+ | #define UIP_CONF_DS6_AADDR_NBU | ||
/*sz*/ | /*sz*/ | ||
</ | </ | ||
+ | (hier in diesem Beispiel ist die Größe der Routingtabelle sowie der Neighbors auf 10 erhöht worden, höhere Werte führten auf den Modulen in Tests zum Speicherüberlauf und somit zum Absturz. Innerhalb des Border Routers waren jedoch bis zu 20 möglich (eventuell auch mehr)) | ||
- | -> gesamte Datei (Änderungen markiert mit /*sz*/) | + | -> Diese Änderung ist für den RPL-Border-Router sowie für die einzelnen Module anwendbar. |
- | [[contiki:a-n-solutions-module: | + | |
===== Quick Install ===== | ===== Quick Install ===== | ||
Zeile 310: | Zeile 330: | ||
{{: | {{: | ||
- | ==== 3 Steps to compile RPL-BORDER-ROUTER-ZIGBIT ==== | + | ==== 4 Steps to compile RPL-BORDER-ROUTER-ZIGBIT ==== |
- Copy folder '' | - Copy folder '' | ||
- Copy folder '' | - Copy folder '' | ||
+ | - Copy File " | ||
- Go to ''/ | - Go to ''/ | ||
contiki/a-n-solutions-module/atany24001-usb-gateway.1350025316.txt.gz · Zuletzt geändert: 2017/01/24 18:49 (Externe Bearbeitung)