myavr.CHKRonline.de

Informationen und Projekte Rund um die Mikrocontroller-Programmierung
von myAVR (ATmega8), STM32 (Cortex-M3/4) und Raspberry Pi (ARM11)

Der Autor

Christian KrügerChristian Krüger, ursprünglich aus dem Altenburger Land stammend, wohnt heute in Nürnberg. Nach seinem Studium der Informations­technik an der West­sächsischen Hochschule in Zwickau, ist er heute Software Entwickler für ein­gebettete Systeme. Seine Berufung fand er im Dienst für seine Kollegen als Teamleiter bei ISCUE.

Die größte Leidenschaft Christians ist es, die Schönheit unserer Welt einzufangen und weiter­zuerzählen. Dies gelingt ihm mit Hilfe seiner Kamera. Seine Fotos und Videos sind auf Instagram und seiner Webseite zu betrachten.

Für seine Zukunft freut sich Christian auf erinnerungs­würdige Reisen, begeisterungs­fähige Menschen und viele neue Erfahrungen.

CHKRonline.de

Facebook Profil

Twitter Profil

XING Profil

Hardware Guide

WLAN-Adapter

Das Raspberry Pi Modell B ist von Haus aus mit einer Ethernet 10/100-Buchse ausgestattet und erlaubt so die schnelle kabelgebundene Anbindung an lokales Netzwerk und Internet. Das Modell A soll hingegen ohne Ethernet ausgestattet sein und verlangt daher nach zusätzlicher Hardware, soll es in irgendeiner Form im Netz kommunizieren. Die Lösung ist klar: WLAN. Auch für Modell B ist eine Verbindung in das kabellose Netzwerk meist die bessere Alternative, denn da, wo man den Raspberry Pi überall aufstellen kann, fehlt es doch hin und wieder an einer Ethernet-Leitung.

Grundsätzlich verfügt über der Raspberry Pi über keine WLAN-Schnittstelle. Daher muss auf externe Hardware in Form eines WLAN-Sticks zurückgegriffen werden. Diese sind für einige Euro erhältlich und in moderner Bauform kaum größer als ein USB-Steckplatz. Angebunden werden diese Adapter natürlich mittels USB.

Ich selbst setze einen N150 WLAN-Stick von Netgear ein. Der Stick ist wirklich winzig und kann daher bedenkenlos permanent am Raspberry Pi belassen werden... oder besser gesagt am USB-Hub, welchen ich am Raspberry Pi befestigt habe. Grund dafür ist, dass einerseits natürlich die zwei USB-Schnittstellen des Raspberry Pi mit WLAN-Stick und Tastatur und Maus Transceiver bereits belegt sind. Andererseits sind WLAN-Sticks auch recht stromhungrig. So führt das Anstecken des N150 direkt an meinen Raspberry Pi während des Betriebs zu einem Reset. Vermutlich zieht die Hardware im ersten Moment so viel Strom, dass die Spannungsversorgung zusammen bricht. Am aktiven USB-Hub passiert das nicht.

WLAN-Sticks werden in verschiedenen Arten von den Linux-Distributionen des Raspberry Pi unterstützt. So bringt Raspbian seit September 2012 eine native Unterstützung mit, inklusive grafischer Oberfläche für die Einrichtung des WLANs.


Kleiner Hinweis: Seit einem Distributions-Update im Frühjahr 2013 (Revision #408, siehe hier), wird der N150 WLAN-Stick (USB Identifier 0846:9041) nicht mehr von dem Realtek rtl8192cu Treiber unterstützt. Aus diesem Grund wird dieser Stick unter Raspbian nicht mehr erkannt und es ist nicht möglich, WLAN damit zu nutzen. Eine vorübergehende Lösung habe ich in diesem Forenthread gefunden. Im Grunde wurde lediglich der USB Identifier des Sticks aus dem Treiber entfernt, weshalb ein erneutes Hinzufügen und Kompilieren des Kernel Moduls das Problem beseitigt. Ein Forenteilnehmer hat das ganze schon erledigt und die Lösung veröffentlicht:

wget http://db.tt/8tJ17aXM -O 8192cu-WNA1000M-fix.tar.gz
tar -xzvf 8192cu-WNA1000M-fix.tar.gz
sudo install -p -m 644 8192cu.ko /lib/modules/3.6.11+/kernel/drivers/net/wireless/rtl8192cu
sudo depmod -a

Das Hinzufügen eines neuen WLAN ist normalerweise in wenigen Minuten erledigt. Der Stick scannt automatisch nach vorhandenen Netzwerken und erlaubt die Verbindung zu diesen. Nach Eingabe des WEP/WPA-Schlüssels ist der Vorgang auch schon geschafft und das neue Netzwerk kann mittels ifconfig als wlan0 angezeigt werden. Im Falle, dass ein Netzwerk nicht gefunden wird, können SSID, MAC-Adresse und Schlüssel auch manuell hinzugefügt werden.

Raspberry Pi Gehäuse komplett

Ich selbst hatte leider einige Probleme, mein WLAN hinzuzufügen. Grund dafür ist, dass wir ein verstecktes WLAN verwenden und die SSID zudem Leerzeichen enthält. Nun kann man über Sinn und Unsinn von versteckten WLAN, MAC-Filter etc. streiten, Fakt ist, dass ich diesen Umstand nicht ändern kann. Mit Hilfe des Connection-Managers lies sich nur solange eine Verbindung mit dem Netzwerk herstellen, wie es sichtbar war. Daher musste ich die Einstellungen komplett manuell vornehmen.

Hinweiß: Meine Ausführungen beziehen sich auf den Zeitraum September 2012. In neueren Versionen von Raspbian, kann das Problem durchaus gelöst sein. Für die Verbindungaufnahme zu einem WLAN ist unter Raspbian das Programm wpa_supplicant verantwortlich. Es wird beim Start von Linux automatisch durch die Datei /etc/network/interfaces gerufen. Zusätzlich stellt das Script sowohl das Interface eth0 als auch wlan0 auf den DHCP-Modus ein.

auto lo

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

Die eigentlichen WLAN-Verbindungsdaten sind in meiner Konfiguration unter /etc/wpa_supplicant/wpa_supplicant.conf gespeichert.

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
ap_scan=1

network={
	ssid="<WLAN SSID>"
	bssid=<WLAN BSSID>
	psk="<WLAN KEY>"
	scan_ssid=1
	proto=RSN
	key_mgmt=WPA-PSK
	pairwise=CCMP
	auth_alg=OPEN
}

Nach einem Neustart des Systems sollte eine WLAN-Verbindung mit dem hinterlegten Netzwerk automatisch aufgebaut werden. Um die notwendigen Informationen, z.B. die BSSID zu erhalten, kann es hilfreich sein zunächst am unversteckten Netzwerk zu arbeiten.

Weitere Informationen zum Thema finden sich hier: