Benutzer-Werkzeuge

Webseiten-Werkzeuge


contiki:cc2538-workshop

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
contiki:cc2538-workshop [2018/11/20 09:09] – [Contiki auf dem cc2538 Board] admincontiki: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 =====+==== 1. Benutzung von Instant Contiki ====
  
 Instant Contiki herunterladen und entpacken auf Laufwerk D: Instant Contiki herunterladen und entpacken auf Laufwerk D:
Zeile 22: Zeile 23:
  - Deutsch hinzufügen: German (eliminate dead keys)  - Deutsch hinzufügen: German (eliminate dead keys)
  
-===== 2. Verwendung einer eigenen Linux-Installation =====+==== 2. Verwendung einer eigenen Linux-Installation ====
 === Installation der ARM Toolchain (bis Ubuntu 16.04): === === Installation der ARM Toolchain (bis Ubuntu 16.04): ===
 <code bash> <code bash>
Zeile 33: Zeile 34:
 === Installation der ARM Toolchain (ab Ubuntu 18.04): === === Installation der ARM Toolchain (ab Ubuntu 18.04): ===
 <code bash> <code bash>
 +sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa
 +#sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded
 sudo apt-get update sudo apt-get update
 sudo apt-get install gcc-arm-none-eabi sudo apt-get install gcc-arm-none-eabi
 #? erforderlich ?# sudo apt-get install gcc-multilib  #(32-bit Libraries) #? erforderlich ?# sudo apt-get install gcc-multilib  #(32-bit Libraries)
 </code> </code>
-==== Beispiele herunterladen: ====+ 
 +===== Beispiele herunterladen: =====
    - <code bash>cd ~/contiki-3.0/examples</code>    - <code bash>cd ~/contiki-3.0/examples</code>
    - <code bash>git clone git://github.com/tscheffl/Contiki-Examples.git</code>    - <code bash>git clone git://github.com/tscheffl/Contiki-Examples.git</code>
Zeile 43: Zeile 47:
  
  
-=== USB-Einrichten: ===+==== USB-Einrichten: ====
  
  - brltty (Braile-tty) entfernen:  - brltty (Braile-tty) entfernen:
Zeile 53: Zeile 57:
  - <code bash>sudo modprobe ftdi_sio  - <code bash>sudo modprobe ftdi_sio
 sudo chmod 666 /sys/bus/usb-serial/drivers/ftdi_sio/new_id sudo chmod 666 /sys/bus/usb-serial/drivers/ftdi_sio/new_id
-sudo echo 0403 a6d1 > /sys/bus/usb-serial/drivers/ftdi_sio/new_id</code>+sudo echo 0403 a6d1 > /sys/bus/usb-serial/drivers/ftdi_sio/new_id</code> Sollte es bei dem Befehl ''%%sudo modprobe ftdi_sio%%'' zu einer Fehlermeldung kommen, muss eventuell noch der **ftdi_sio** Treiber nachinstalliert werden: <code bash>sudo apt-get install linux-image-extra-virtual</code> Der Treiber sollte in /lib/modules/xx_your_linux_version-generic/kernel/drivers/usb/serial/ftdi_sio.ko zu finden sein. Mit **''lsmod''** kann überprüft werden, ob das Modul geladen ist.
  
-=== Installation der Flash-Software: ===+==== Installation der Flash-Software: ====
  
  - <code bash>cd ~  - <code bash>cd ~
Zeile 61: Zeile 65:
 git clone https://github.com/JelmerT/cc2538-bsl.git</code> git clone https://github.com/JelmerT/cc2538-bsl.git</code>
  
-=== Installation und Konfiguration von Minicom (Terminalprogramm): ===+==== Installation und Konfiguration von Minicom (Terminalprogramm): ====
  
   - Install: <code bash>sudo apt-get install minicom</code>   - Install: <code bash>sudo apt-get install minicom</code>
Zeile 85: Zeile 89:
  
 ===== Beispiele zur Netzwerkprogrammierung ===== ===== Beispiele zur Netzwerkprogrammierung =====
-==== UDP-client ====+==== 1. UDP-client direkt unter Linux, mittels ''minimal-net'' ==== 
 <code bash> <code bash>
-cd ~contiki-3.0/examples/Contiki-Examples/UDP-client +cd $(CONTIKI)/examples/Contiki-Examples/UDP-client 
-make +make TARGET=minimal-net 
-./udp-client+./udp-client.minimal-net
 </code> </code>
  
Zeile 106: Zeile 111:
 </code> </code>
  
 +----
 +==== 2. UDP-client mittels ''6LoWPAN'' ====
  
 +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
 +''examples/ipv6/rpl-border-router''. \\
 +Dazu müssen zwei kleine Änderungen in den Dateien
 +''border-router.c'' und ''project-conf.h'' vorgenommen werden.\\
 +Die komplette Anleitung befindet sich 
 +[[https://github.com/contiki-os/contiki/tree/master/platform/cc2538dk#build-a-6lowpan-testbed|hier]].
  
 +Weiterhin muss einmalig das Tool für die serielle 6LoWPAN-Anbindung übersetzt werden.\\
 +Dieses befindet sich unter ''$(CONTIKI)/tools'':
 +
 +<code bash>
 +cd $(CONTIKI)/tools
 +make tunslip6
 +</code>
 +
 +:!: 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 ''/dev/ttyUSB'' Schnittstellen ändert!
 +
 +  - Zuerst das Board einstecken, auf dem die Beispiel-Software laufen soll: (belegt ''ttyUSB0/1'')
 +  - Boad mit der passenden Software flashen:<code bash>cd ~contiki-3.0/examples/[your-example-directory]
 +make TARGET=cc2538dk
 +sudo ~/cc2538-bsl/cc2538-bsl.py -b 115200 -p /dev/ttyUSB1 -e -w -v your-example.bin
 +</code>
 +  - Minicom mit ''sudo'' auf ''ttyUSB1'' starten, evtl. Board per Reset-Knopf neu starten.
 +
 +  - Danach das Board mit dem Border-Router einstecken (belegt ''ttyUSB2/3'')
 +  - IPv6 Verbindung zwischen Border-Router und Linux-PC starten:<code bash>
 +sudo $(CONTIKI)/tools/tunslip6 -s /dev/ttyUSB3 fd00::1/64
 +</code>
 +  - 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:\\ ''http://[<IPv6-address-inside-the-brackets>]''
  
----- 
 ---- ----
 ==== Backup-Info ==== ==== Backup-Info ====
-   Auf fabrikneuen cc2538dk-Boards ist ein Beispielprogramm von TI vorinstalliert und der vorhandene Bootloader deaktiviert. +   Auf fabrikneuen cc2538dk-Boards ist ein Beispielprogramm von TI vorinstalliert und der vorhandene Bootloader deaktiviert. 
-     Bootloader aktivieren: Uniflash => ''cc2538SF53'' Chip auswählen, Flash-Speicher löschen +     Bootloader aktivieren: Uniflash => ''cc2538SF53'' Chip auswählen, Flash-Speicher löschen 
-   Minicom: Fehlendes carriage return (CR): ''Ctrl+A Z U''  +   * Contiki benutzt für cc2538dk das 802.15.4 **Band 25**, für avr **Band 26**. Die Einstellung kann in ''contiki/platform/contiki.conf'' oder auf dem RZRAVEN USB Stick (Jackdaw) über das Menü geändert werden.  
-   Alte Methode für ftdi-Kernelmodul <code bash>modprobe ftdi_sio vendor=0x403 product=0xa6d1</code> +   Minicom: Fehlendes carriage return (CR): ''Ctrl+A Z U''  
-   Listed aktive Kernelmodule: <code bash>lsmod</code> +   Alte Methode für ftdi-Kernelmodul <code bash>modprobe ftdi_sio vendor=0x403 product=0xa6d1</code> 
-   UDP Pakete an Echo-Server senden: <code bash>netcat -u fe80::ff:fe00:10%tap0 9999</code>+   Listed aktive Kernelmodule: <code bash>lsmod</code> 
 +   UDP Pakete an Echo-Server senden: <code bash>netcat -u fe80::ff:fe00:10%tap0 9999</code>
  
 ==== Links ==== ==== Links ====
Zeile 126: Zeile 164:
   * https://github.com/tscheffl/Contiki-Examples/tree/master/TCP-client   * https://github.com/tscheffl/Contiki-Examples/tree/master/TCP-client
   * [[https://wiki.ipv6lab.beuth-hochschule.de/contiki/rest-workshop|https://wiki.ipv6lab.beuth-hochschule.de/contiki/rest-workshop (not working with Contiki 3.0)]]   * [[https://wiki.ipv6lab.beuth-hochschule.de/contiki/rest-workshop|https://wiki.ipv6lab.beuth-hochschule.de/contiki/rest-workshop (not working with Contiki 3.0)]]
 +
 +=== cc2531 ===
 +
 +The cc2338dk development board comes with a cc2531 USB-Stick. Pre-installed on the stick is a 802.15.4 sniffer application, which can be easily used on Windows together with Wireshark.
 +However, it can also be flashed with other software. 
 +
 +**How to flash the CC2531:** https://github.com/zigbeer/zigbee-shepherd/issues/3
contiki/cc2538-workshop.1542704946.txt.gz · Zuletzt geändert: 2018/11/20 09:09 von admin