Ich habe in diesem Beitrag ein paar Einstellungen der W-LAN Konfiguration unter Raspbian zusammen geschrieben die für mich immer wieder sehr hilfreich waren bei der Konfiguration meiner zum Teil autonom agierender Roboter. So ist es bei dem Raspberry Pi 3 Model B mit integriertem W-LAN interessant den internen W-LAN Adapter z. B zu deaktivieren da ein externer USB Adapter mit externer Antenne zum Einsatz kommt. Ich habe hin und wieder auch das Problem, dass die verwendeten externen USB W-LAN Module sich aufhängen und ich mich nicht mehr auf den Raspberry Pi in meinem Roboter verbinden konnte. So musste ich dann häufig den Stromstecker am Pi ziehen um den Raspberry Pi neu zu starten. Wenn ich ein LAN Kabel anschließen konnte, dann habe ich häufig gesehen, dass das Betriebssystem ohne Fehler lief aber der W-LAN Adapter einfach keine IP Adresse mehr zugewiesen hatte.

Daher dieser Post der euch hoffentlich weiter hilft bei ähnlichen Problemen.

Raspberry Pi 3 – internes WLAN deaktivieren

Ich habe einige Beiträge im Internet gelesen bis ich einen gefunden habe, der sehr genau beschrieben hat wie über eine Black Liste das interne W-LAN Modul sowie das Bluetooth Modul des Raspberry Pi 3 Model B deaktiviert werden kann. Der ursprüngliche Beitrag auf Englisch findet sich hier: How to disable the Pi3’s WLAN & Bluetooth?

Für die Konfiguration bitte mit dem folgenden Befehl die Datei raspi-blacklist.conf erstellen bzw. editieren.

Befehl: sudo nano /etc/modprobe.d/raspi-blacklist.conf

In diese Datei kommen dann die folgenden Zeilen. Diese könnt Ihr einfach in die Datei kopieren so wie sie sind.

#Deaktivieren des internen W-LAN Moduls
blacklist brcmfmac
blacklist brcmutil
#Deaktivieren des interenen Bluetooth Moduls
blacklist btbcm
blacklist hci_uart

Nach dem Ihr die sechs Zeilen in die Datei kopiert habt speichert diese bitte ab. Anschließend einfach den Raspberry Pi neustarten und das interne W-LAN Modul ist deaktiviert.

Automatischer Neustart des Raspberry Pi bei WLAN Verbindungsproblemen

Wie zu Beginn des Artikels erklärt kann es immer mal passieren, dass das W-LAN Modul sich aufhängt und es nicht mehr möglich ist eine Verbindung zum Raspberry Pi aufzubauen. Ich habe dann bei meiner Suche nach einer Lösung diesen Beitrag im Internet gefunden der eine meiner Meinung nach für mich gute Lösung mit einem kompletten Neustart des Raspberry Pi erklärt. Hier ist der original Beitrag zu finden: Rebooting the Raspberry Pi when it loses wireless connection

In diesem Beitrag ist auch eine deutlich elegantere Methode beschrieben bei dem nur das W-LAN Modul aus/ein geschalten wird statt wie nachfolgend beschrieben der Raspberry Pi direkt neugestartet wird. Also je nach dem was die beste Lösung für euch wählt Ihr eine der Methoden.

Als erstes führt Ihr den folgenden Befehl aus und legt die Datei “checkwifi.sh” an. In diese Datei kommt die Logik für das Prüfen der W-LAN Verbindung sowie der Befehl für den Neustart wenn die W-LAN Verbindung abgebrochen ist.

Befehl: sudo nano /usr/local/bin/checkwifi.sh

In diese Datei kommen dann die folgenden Zeilen die das Skript für die Überprüfung einer aktiven WIFI Verbindung ausmachen. Wichtig dabei ist, dass Ihr meine IP Adresse <192.168.1.1> durch eine Adresse in eurem Netzwerk ersetzt die immer erreich ist. Andernfalls startet der Raspberry Pi am Ende alle 5 Minuten neu.

ping -c4 192.168.1.1 > /dev/null
if [ $? != 0 ]
then
sudo /sbin/shutdown -r now
fi

Nach dem Ihr die fünf Zeilen in das Skript kopiert habt speichert dieses ab. Als nächstes müssen die Dateirechte so geändert werden, dass das Skript ausgeführt werden kann. Dazu bitten den folgenden Befehl ausführen.

Befehl: sudo chmod 775 /usr/local/bin/checkwifi.sh

Jetzt habt Ihr ein Skript das darüber wacht ob die von euch eingegebene IP Adresse von Raspberry Pi aus erreichbar ist. Damit das Skript auch regelmäßig ausgeführt wird muss die Crontab angepasst werden. Dort wird der Aufruf des Skriptes so hinterlegt das dieses alle fünf Minuten gestartet wird. Führt bitte dazu den folgenden Befehl aus.

Befehl: crontab -e

Jetzt fügt Ihr am ende bitte die folgende Zeile in die crontab ein.

*/5 * * * * /usr/bin/sudo -H /usr/local/bin/checkwifi.sh >> /dev/null 2>&1

Anschließend nur noch den Raspberry Pi neustarten und die Anpassung mit dem Skript sollte funktionieren.

Zusammenfassung

Ich werde diesen Artikel immer wieder erweitern wenn mir noch etwas auffällt das ich als sehr nützlich im Bereich W-LAN und LAN empfinde. Aktuell sind dies aber die wesentlichen Punkte die mich immer wieder beschäftigt haben.

(Visited 1.646 times, 1 visits today)