Bootsignale der seriellen Schnittstelle (GPIO 14 und 15 / Pin 8 und 10) ausschalten

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Beim Raspberry Pi sind einige GPIOs mit Zweitfunktionen belegt. So liegt z.B. an den GPIOs 14 und 15 (Pin 8 und 10 auf der Stiftleiste) eine serielle Schnittstelle (RxD,TxD). Darüber kann man den RasPi mit einem Serialkabel über eine Konsole erreichen. Beim Raspberry Pi A und A+ kann das sinvoll sein, da dort kein LAN zur Verfügung steht. Auch für viele andere Anwendungen macht eine serielle Schnittstelle Sinn. Bereits beim Booten werden darüber Signale zur Verbindungsaufnahme gesendet, was dann allerdings für andere Anwendungen störend wirkt. So flattern z.B. dort angeschlossene Relais unmotiviert vor sich hin oder LEDs blinken unvermittelt auf. Wie Ihr den Port abschaltet will ich Euch mit dieser Anleitung für das Betriebssystem Raspbian zeigen.

    Login über den Port abschalten

    Wie erwähnt ist es möglich, sich über den seriellen Port an der Konsole anzumelden, um diese Option auszuschalten ändern wir einen Eintrag in der inittab. Um die Dateien zu ändern könnt Ihr genauso gut einen grafischen Editor benutzen, den Ihr mit Rootrechten gestartet habt.

    Code
    sudo nano /etc/inittab

    Findet die Zeile:

    Code
    T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

    und kommentiert diese aus, indem Ihr ein # davor setzt:

    Code
    #T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

    mit Strg-X speichert Ihr die Datei, wenn Ihr nano nutzt. Die Abfrage mit "Y" und Enter bestätigen.

    Bootmeldungen ausschalten

    Der RasPi will über die serielle Schnittstelle einige Meldungen loswerden, die z.B. gut sind um Fehler zu finden, aber auch die wollen wir nicht haben. Um die Bootmeldungen auszuschalten müssen wir wieder eine Datei ändern. Macht also folgendes:

    Code
    sudo nano /boot/cmdline.txt

    Sucht die Zeile:

    Code
    dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

    und entfernt einige Parameter, so das die Zeile so aussieht:

    Code
    dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

    Speichert wieder mit Strg-X, "Y" und Enter.

    Raspberry Pi neu starten

    Gut, hier hätte der Hinweis auf einen Neustart gereicht, aber der Neustart ist wichtig, deswegen gibt es hier das Kommando

    Code
    sudo reboot



    Testen des seriellen Ports

    Um sicher zu gehen, dass beim Start des Raspberry Pi nichts mehr über den seriellen Port ausgegeben wird, könnt Ihr das auch testen, müsst Ihr aber nicht. Es gibt z.B. Datenkabel, die einen Serial zu USB-Adapter eingebaut haben. Damit könnt Ihr den RasPi über die serielle Schnittstelle mit einem PC verbinden. Am PC öffnet Ihr eine beliebige Konsole wie z.B. putty und nehmt über den Port der im Gerätemanager (bei Windows) beim Serial zu USB-Adapter steht, Verbindung mit dem RasPi auf.

    Um vom Raspberry einfach Signale über die serielle Schnittstelle zu senden, könnt Ihr mincom verwenden. Das lässt sich einfach über

    sudo apt-get install minicom

    installieren (Internetverbindung vorausgesetzt)

    Nun startet minicom mit:

    minicom -b 9600 -o -D /dev/ttyAMA0

    Jetz könnt Ihr beliebige Zeichen auf Eurer Tastatur tippen, die dann über die Schnittstelle, wenn Sie dann noch funktionieren würde, ausgegeben werden. Ihr solltet nun natürlich nichts auf der Konsole am anderen Rechner sehen.

    Mit Strg-A, dann X und Enter beendet Ihr minicom.

    Wie gesagt, dass ist nur eine Möglichkeit für den interessierten Nutzer das mal zu testen. Normalerweise sollte die Schnittstelle nach den obigen Schritten ausgeschaltet sein und bein Booten Ruhe geben.

  • Bootsignale der seriellen Schnittstelle (GPIO 14 und 15 / Pin 8 und 10) ausschalten? Schau mal ob du hier fündig wirst!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!