contiki:cc2538-workshop
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
contiki:cc2538-workshop [2018/06/16 04:26] – [Contiki auf dem cc2538 Board] admin | contiki:cc2538-workshop [2019/01/08 18:31] (aktuell) – [2. UDP-client mittels ''6LoWPAN''] admin | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Contiki auf dem cc2538 Board ====== | ====== Contiki auf dem cc2538 Board ====== | ||
+ | ===== Toolchain einrichten ===== | ||
+ | |||
+ | ==== 1. Benutzung von Instant Contiki ==== | ||
Instant Contiki herunterladen und entpacken auf Laufwerk D: | Instant Contiki herunterladen und entpacken auf Laufwerk D: | ||
Zeile 20: | Zeile 23: | ||
- Deutsch hinzufügen: | - Deutsch hinzufügen: | ||
- | ==== Beispiele herunterladen: | + | ==== 2. Verwendung einer eigenen Linux-Installation ==== |
+ | === Installation der ARM Toolchain (bis Ubuntu 16.04): === | ||
+ | <code bash> | ||
+ | sudo add-apt-repository ppa: | ||
+ | # sudo add-apt-repository --remove ppa: | ||
+ | sudo apt-get update | ||
+ | sudo apt-get install gcc-arm-embedded | ||
+ | sudo apt-get install gcc-multilib | ||
+ | </ | ||
+ | === Installation der ARM Toolchain (ab Ubuntu 18.04): === | ||
+ | <code bash> | ||
+ | sudo add-apt-repository ppa: | ||
+ | #sudo add-apt-repository ppa: | ||
+ | sudo apt-get update | ||
+ | sudo apt-get install gcc-arm-none-eabi | ||
+ | #? erforderlich ?# sudo apt-get install gcc-multilib | ||
+ | </ | ||
+ | |||
+ | ===== Beispiele herunterladen: | ||
- <code bash>cd ~/ | - <code bash>cd ~/ | ||
- <code bash>git clone git:// | - <code bash>git clone git:// | ||
Zeile 26: | Zeile 47: | ||
- | === USB-Einrichten: | + | ==== USB-Einrichten: |
- brltty (Braile-tty) entfernen: | - brltty (Braile-tty) entfernen: | ||
- <code bash> | - <code bash> | ||
- VM mit Board verbinden: | - VM mit Board verbinden: | ||
- | - Rechtsklick auf Stecker-Symbol an unterer Bildschirmkante (TI Board auswählen) | + | - VirtualBox => Rechtsklick auf Stecker-Symbol an unterer Bildschirmkante (TI Board auswählen) |
- Board unter Linux bekannt machen: | - Board unter Linux bekannt machen: | ||
- <code bash> | - <code bash> | ||
- <code bash> | - <code bash> | ||
sudo chmod 666 / | sudo chmod 666 / | ||
- | sudo echo 0403 a6d1 > / | + | sudo echo 0403 a6d1 > / |
- | - Installation der Flash-Software: | + | |
- | - <code bash>cd ~ | + | ==== Installation der Flash-Software: |
+ | |||
+ | - <code bash>cd ~ | ||
sudo apt-get install python-serial | sudo apt-get install python-serial | ||
git clone https:// | git clone https:// | ||
- | - Installation von Minicom (Terminalprogramm): | + | |
- | - <code bash> | + | ==== Installation |
- | - <code bash> | + | |
- | - Serial-Port-Setup: | + | |
+ | - Config: | ||
+ | - __Serial-Port-Setup__ => (A) / | ||
+ | - __Save setup as dfl__ => Speichern der Einstellungen | ||
+ | - Anpassung der Bildschirmausgabe | ||
+ | - '' | ||
==== Board flashen ==== | ==== Board flashen ==== | ||
Zeile 51: | Zeile 79: | ||
- <code bash> | - <code bash> | ||
- | - Datei flachen: | + | |
+ | - __Select-Button__ gefolgt von __EM-Reset__ | ||
+ | |||
+ | | ||
- <code bash> | - <code bash> | ||
- | <code bash></ | ||
+ | ===== Beispiele zur Netzwerkprogrammierung ===== | ||
+ | ==== 1. UDP-client direkt unter Linux, mittels '' | ||
+ | |||
+ | <code bash> | ||
+ | cd $(CONTIKI)/ | ||
+ | make TARGET=minimal-net | ||
+ | ./ | ||
+ | </ | ||
+ | |||
+ | Contiki startet und legt ein neues Interface '' | ||
+ | Dieses Interface muss mit einer globalen IPv6-Adresse konfiguriert werden: | ||
+ | |||
+ | <code bash> | ||
+ | sudo ifconfig tap0 add aaaa::1/64 | ||
+ | </ | ||
+ | |||
+ | Anschließend können mittels '' | ||
+ | die eingehenden UDP-Nachrichten angezeigt werden: | ||
+ | |||
+ | <code bash> | ||
+ | nc -l -u -6 -p 30000 | ||
+ | </ | ||
+ | |||
+ | ---- | ||
+ | ==== 2. UDP-client mittels '' | ||
+ | |||
+ | Die Einbindung des cc2538dk-Boards in ein 6LoWPAN setzt einen Border-Router voraus.\\ | ||
+ | Dieser kann auf einem zweiten cc2538dk-Board installiert werden. Die Software liegt unter | ||
+ | '' | ||
+ | Dazu müssen zwei kleine Änderungen in den Dateien | ||
+ | '' | ||
+ | Die komplette Anleitung befindet sich | ||
+ | [[https:// | ||
+ | |||
+ | Weiterhin muss einmalig das Tool für die serielle 6LoWPAN-Anbindung übersetzt werden.\\ | ||
+ | Dieses befindet sich unter '' | ||
+ | |||
+ | <code bash> | ||
+ | cd $(CONTIKI)/ | ||
+ | make tunslip6 | ||
+ | </ | ||
+ | |||
+ | :!: Bei der Verwendung von zwei cc2538dk-Boards an einem Linux-Rechner ist die genaue Einhaltung der | ||
+ | Abläufe wichtig, da sich sonst die Bezeichnungen der seriellen ''/ | ||
+ | |||
+ | - Zuerst das Board einstecken, auf dem die Beispiel-Software laufen soll: (belegt '' | ||
+ | - Boad mit der passenden Software flashen:< | ||
+ | make TARGET=cc2538dk | ||
+ | sudo ~/ | ||
+ | </ | ||
+ | - Minicom mit '' | ||
+ | |||
+ | - Danach das Board mit dem Border-Router einstecken (belegt '' | ||
+ | - IPv6 Verbindung zwischen Border-Router und Linux-PC starten:< | ||
+ | sudo $(CONTIKI)/ | ||
+ | </ | ||
+ | - Im Terminal wird die IPv6-Adresse des Border-Routers angezeigt.\\ Damit sollte das Netzwerk konfiguriert und alle Boards im Netz erreichbar sein. | ||
+ | - Die IP-Adressen der verbundenen Boards können über die Web-Seite des Border-Routers angezeigt werden:\\ '' | ||
+ | |||
+ | ---- | ||
==== Backup-Info ==== | ==== Backup-Info ==== | ||
- | | + | * Auf fabrikneuen cc2538dk-Boards ist ein Beispielprogramm von TI vorinstalliert und der vorhandene Bootloader deaktiviert. |
- | - Minicom: Fehlendes carriage return (CR): '' | + | * Bootloader aktivieren: Uniflash => '' |
- | - Alte Methode für ftdi-Kernelmodul <code bash> | + | * Contiki benutzt für cc2538dk das 802.15.4 **Band 25**, für avr **Band 26**. Die Einstellung kann in '' |
- | - Listed aktive Kernelmodule: | + | |
- | - UDP Pakete an Echo-Server senden: <code bash> | + | * Alte Methode für ftdi-Kernelmodul <code bash> |
+ | * Listed aktive Kernelmodule: | ||
+ | * UDP Pakete an Echo-Server senden: <code bash> | ||
+ | |||
+ | ==== Links ==== | ||
+ | * http:// | ||
+ | * https:// | ||
+ | |||
+ | * https:// | ||
+ | * https:// | ||
+ | * [[https:// | ||
+ | |||
+ | === cc2531 === | ||
+ | |||
+ | The cc2338dk development board comes with a cc2531 USB-Stick. Pre-installed on the stick is a 802.15.4 sniffer application, | ||
+ | However, it can also be flashed with other software. | ||
+ | |||
+ | **How to flash the CC2531:** https:// |
contiki/cc2538-workshop.1529123195.txt.gz · Zuletzt geändert: 2018/06/16 04:26 von admin