Instant Contiki herunterladen und entpacken auf Laufwerk D:
sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa # sudo add-apt-repository --remove ppa:team-gcc-arm-embedded/ppa sudo apt-get update sudo apt-get install gcc-arm-embedded sudo apt-get install gcc-multilib #(32-bit Libraries)
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 install gcc-arm-none-eabi #? erforderlich ?# sudo apt-get install gcc-multilib #(32-bit Libraries)
cd ~/contiki-3.0/examples
git clone git://github.com/tscheffl/Contiki-Examples.git
sudo apt-get remove brltty
lsusb
sudo modprobe ftdi_sio 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
Sollte es bei dem Befehl sudo modprobe ftdi_sio
zu einer Fehlermeldung kommen, muss eventuell noch der ftdi_sio Treiber nachinstalliert werden:
sudo apt-get install linux-image-extra-virtual
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.
cd ~ sudo apt-get install python-serial git clone https://github.com/JelmerT/cc2538-bsl.git
sudo apt-get install minicom
sudo minicom -s
printf()
erzeugt nur NewLine ohne Carridge Return ⇒ Ctrl-A z
danach U
eingeben!sudo ~/cc2538-bsl/cc2538-bsl.py -b 115200 -p /dev/ttyUSB1
sudo ~/cc2538-bsl/cc2538-bsl.py -b 115200 -p /dev/ttyUSB1 -e -w -v hello_world.bin
cd $(CONTIKI)/examples/Contiki-Examples/UDP-client make TARGET=minimal-net ./udp-client.minimal-net
Contiki startet und legt ein neues Interface tap0
an.
Dieses Interface muss mit einer globalen IPv6-Adresse konfiguriert werden:
sudo ifconfig tap0 add aaaa::1/64
Anschließend können mittels netcat
die eingehenden UDP-Nachrichten angezeigt werden:
nc -l -u -6 -p 30000
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
hier.
Weiterhin muss einmalig das Tool für die serielle 6LoWPAN-Anbindung übersetzt werden.
Dieses befindet sich unter $(CONTIKI)/tools
:
cd $(CONTIKI)/tools 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 /dev/ttyUSB
Schnittstellen ändert!
ttyUSB0/1
)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
sudo
auf ttyUSB1
starten, evtl. Board per Reset-Knopf neu starten.ttyUSB2/3
)sudo $(CONTIKI)/tools/tunslip6 -s /dev/ttyUSB3 fd00::1/64
http://[<IPv6-address-inside-the-brackets>]
cc2538SF53
Chip auswählen, Flash-Speicher löschencontiki/platform/contiki.conf
oder auf dem RZRAVEN USB Stick (Jackdaw) über das Menü geändert werden. Ctrl+A Z U
modprobe ftdi_sio vendor=0x403 product=0xa6d1
lsmod
netcat -u fe80::ff:fe00:10%tap0 9999
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