Status LEDs (act/pwr) beim Raspberry Pi 2/3 B+

PWR ACT LED Raspberry Pi2 Pi3 B +Rot und Grün – Der Status vom Raspi

Für einige vielleicht ein alter Hut, für andere evtl. interessant ;-)

Vorweg, getestet habe ich das Vorgehen nur auf dem Raspberry Pi 2 und 3, jeweils die B+ Varianten, OS ist Raspbian Stretch. Mangels Besitz anderer Pi’s, kann ich zu weiteren Boards nichts schreiben.

Beim Start, in der Datei „config.txt“

Wenn man also auf die Idee kommt, dass die rote (pwr) und auch die grüne (act) LED auf dem Raspi mal einen anderen Status anzeigen dürfen und dies direkt beim Start aktiviert werden soll, bieten sich Einträge der Datei config.txt an. Es gibt, wie immer, auch viele weitere Möglichkeiten, hier geht es speziell um eine unkomplizierte Lösung, direkt beim Systemstart. Wer es gerne immer dunkel oder auch flackernd haben möchte, ist damit eigentlich schon fertig. Wenn die LEDs während des Betriebes ihren Modus ändern sollen, wird es ein wenig mehr Aufwand.

Los gehts

Man schnappt  sich also einen Editor und ergänzt in der config.txt folgende Zeilen:

Für die rote LED (pwr):

dtparam=pwr_led_trigger=heartbeat

Sinngleich für die grüne Leuchtdiode (act):

dtparam=act_led_trigger=heartbeat

Ab dem nächsten Neustart blinken beide Dioden in einer Art Herzschlagtakt. Natürlich steht „heartbeat“ hier nur für eine der Möglichkeiten. Mit der Option „none“, bleibt alles duster.

Weitere Optionen finden sich in der Liste unten im Artikel, ich habe NICHT alle getestet!

 

Änderungen erst nach dem Systemstart

Möchte man bestimmte Zustände an unterschiedliche Zeiten binden, z. B. am Tage „heartbeat“ und in der Nacht alles dunkel, empfiehlt es sich, einen Cronjob anzulegen und mit diesem ein zuvor erstelltes Bash-Script aufzurufen.

Ich habe diverse Einträge in der Root-Crontab (sudo crontab -e) angelegt, die wiederrum unterschiedliche Scripte aufrufen:

Beispiel:

Crontab:

0 22 * * * /bin/runledoff.sh

ruft nachfolgendes Schript auf, welches um 22 Uhr die Leuchtdioden abschaltet:

Script:

#!/bin/bash
# System LEDs OFF

echo „none“ >/sys/class/leds/led1/trigger
echo „none“ >/sys/class/leds/led0/trigger

Ich habe der aufzurufenden Datei den Namen „runledoff.sh“ gegeben und sie in /bin/ abgelegt. Gegebenenfalls nicht vergessen, die Datei mit

sudo chmod +x /bin/runledoff.sh

ausführbar zu machen. Wahrscheinlich sollte das Script auch dem User „root“ gehören, dies kann ggf. mit

chown root  /bin/runledoff.sh

erledigt werden. Vielleicht geht es auch mit anderen Besitzern, ich habe es gar nicht erst anders versucht.

Analog dazu können die LEDs mit einer weiteren Datei wieder aktiviert werden. In meinem Fall soll die grüne Diode (act/led0) weiterhin Aktivitäten der SD-Karte, die rote (pwr/led1) den „Heartbeat“ symbolisieren.

Script:

#!/bin/bash
# System LEDs ON

echo „heartbeat“ >/sys/class/leds/led1/trigger
echo „mmc0“ >/sys/class/leds/led0/trigger

Neuen Crontab-Eintrag mit passender Uhrzeit nicht vergessen!

Weitere Optionen/Parameter:

none – No trigger/Aus
kbd-scrolllock – Keyboard scroll lock
kbd-numlock – Keyboard num lock
kbd-capslock – Keyboard caps lock
kbd-kanalock – Keyboard kana lock
kbd-shiftlock – Keyboard shift
kbd-altgrlock – Keyboard altgr
kbd-ctrllock  – Keyboard ctrl
kbd-altlock – Keyboard alt
kbd-shiftllock – Keyboard left shift
kbd-shiftrlock – Keyboard right shift
kbd-ctrlllock – Keyboard left ctrl
kbd-ctrlrlock – Keyboard right ctrl
timer – Flash at 1 second intervals
oneshot – Flash only once
heartbeat – Flash like a heartbeat (1-0-1-00000)
backlight – Always on
gpio – Flash when a certain GPIO is high
cpu0 – Flash on cpu0 usage
cpu1 –  Flash on cpu1 usage
cpu2 – Flash on cpu2 usage
cpu3 – Flash on cpu3 usage
default-on – Always on
[input] – Default state
panic – Flash on kernel panic
mmc0 – Flash on mmc0 (primary SD Card interface) activity
mmc1 – Flash on mmc1 (secondary SD Card interface) activity
rfkill0 – Flash on wifi activity
rfkill1 – Flash on bluetooth activity

Wie oben erwähnt, ist nicht alles persönlich getestet. Bei einigen Parametern weiß ich auch nicht sicher, was sie genau anzeigen bzw., ob es auf jedem Pi funktioniert oder ob dies so schnell geschieht, dass man nichts unterscheiden kann (rfkill z. B.). Wenn ich weitere Einsatzmöglichkeiten oder Details herausfinde, wird diese Liste ergänzt.