Es gibt 5 LEDs am RPi: OK, PWR, FDX, LNK, 10M.
Ich möchte wissen, ob es möglich ist, diese über Software zu steuern, dh sie einzuschalten oder die Intensität zu ändern (oder sogar die Farbe zu keuchen ).
Und wenn ja, wo kann ich mich darüber informieren? Die LEDs können sehr praktisch sein, um den Status der Benutzeranwendung anzuzeigen, wenn sie für die ursprüngliche Verwendung nicht benötigt werden.
Antworten:
Die OK-LED kann über die User-Space-Software gesteuert werden. Details hier: Betreff: Können wir die On-Board-LEDs steuern?
Zusammengefasst aus dem oben Gesagten (alle Kredite an BrianW):
Die OK-LED ist verfügbar als
/sys/class/leds/led0/
.Der Kernel-LED-Treiber hat "Trigger", mit denen ein anderer Teil des Kernels die LED steuern kann. Der Standard-Auslöser für die LED ist '
mmc0
', wodurch sie beim Zugriff auf die SD-Karte leuchtet.Sie können den
mmc0
Trigger wie folgt deaktivieren :Die LED kann mit der '
brightness
' Datei ein- und ausgeschaltet werden . Die Mindesthelligkeit beträgt 0 und die Höchsthelligkeit 255. Da keine variable Helligkeit unterstützt wird, schaltet jeder Wert über 0 die LED ein.Wenn Sie die Helligkeit auf 0 setzen, wird der Trigger automatisch auf "Keine" gesetzt.
Wenn Sie möchten, dass die LED zu ihrer Standardfunktion zurückkehrt:
Es gibt ein paar Kernel-Module, die Sie laden können (
ledtrig_timer
undledtrig_heartbeat
), die die LED für Sie blinken lassen.Nachdem Sie den
mmc0
Auslöser ausgeschaltet haben, können Sie die LED mit GPIO16 steuern. Es ist aktiv-niedrig, daher müssen Sie den Pin niedrig einstellen, um die LED einzuschalten, und hoch, um sie auszuschalten.In Python können Sie mit dem Modul
RPi.GPIO
Pin 16 steuern. Es gibt auch einen C # -Treiber.quelle
echo gpio | sudo tee /sys/class/leds/led1/trigger
und dann mit ein oder ausecho [0|1] | sudo tee /sys/class/leds/led1/brightness
.Keine der integrierten LEDs kann in der Software gesteuert werden - sie werden alle für andere Zwecke verwendet.
Nun, das ist die offizielle Antwort ... Lassen Sie uns den Schaltplan studieren .
Page 4 Die PWR - LED ist direkt an die Stromversorgung angeschlossen, so können wir nicht in der Software steuern.
Page 3 FDX, LNK und 10M sind alle mit dem Ethernet-Chip verbunden, daher können wir sie auch hier nicht über Software steuern (ohne etwas Funky Traffic Hack ...).
Page 4 ABER OK wird tatsächlich von GPIO 16 gesteuert, daher besteht die Möglichkeit eines Hacks ...
quelle
Es gibt eine einfachere Möglichkeit, die LAN-LEDs vom Benutzerland aus zu steuern. Der Quellcode ist verfügbar bei
http://www.raspberrypi.org/forums/viewtopic.php?f=63&t=72070
Das Programm muss mit sudo ausgeführt werden.
quelle
Sie können alle LEDs steuern (außer PWR in älteren Pi-Modellen, wie in anderen Antworten angegeben).
Für Ethernet-LEDs müssen Sie jedoch den Treiber patchen und den Kernel neu kompilieren.
Informationen zum Neukompilieren finden Sie hier: http://elinux.org/RPi_Kernel_Compilation
Patches und weitere Informationen finden Sie hier: http://everpi.tsar.in/2013/11/patch-para-controlar-os-leds-ethernet-do-raspberrypi.html
Danach können Sie Folgendes steuern: / sys / class / smsc95xx_leds und eth_fdx, eth_lnk und eth_spd.
Beispiel: Echo 0> / sys / class / smsc95xx_leds / eth_fdx Echo 1> / sys / class / smsc95xx_leds / eth_fdx
quelle
Ich kann bestätigen, dass es mit dem Raspberry Pi 2 auch möglich ist, die PWD-LED zu steuern!
Die Power-LED wird von den folgenden Dateien gesteuert:
Sie können es wie die Status-LED ausschalten, indem Sie Folgendes verwenden:
Weitere Möglichkeiten zur Steuerung der LEDs finden Sie in der Antwort von Guy
quelle
Ich habe ein Userspace-Programm geschrieben, mit dem Sie die Ethernet-LEDs steuern können.
Das Programm benötigt das aktuellere
libusb-1.0
(NICHT das ältere 0.1). Es funktioniert mit LAN9512 (zB auf dem älteren Raspberry B) sowie mit LAN9514-Chips (zB auf Raspberry B + oder Raspberry 2)Details finden Sie hier: LAN951x LED-Steuerung
quelle
Mit dem Pi 2 können Sie sowohl die roten als auch die grünen Onboard-LEDs steuern.
In der Windows 10 IoT-Dokumentation sind die rote Betriebsanzeige und die grüne Ok-Anzeige am GPIO 35 bzw. 47 aufgeführt.
https://ms-iot.github.io/content/en-US/win10/samples/PinMappingsRPi2.htm
Ich habe es mit dem Windows 10 IoT und mit Python auf Raspbian versucht. Beide können die LEDs steuern, obwohl Raspbian die LED überschreibt, wenn etwas auf die SD-Karte zugreift. Vermutlich würde das Löschen des Auslösers dieses Verhalten beseitigen.)
Hier ist ein Beispiel. (Beachten Sie, dass dies den in vorherigen Beiträgen erwähnten Auslöser nicht außer Kraft setzt.)
quelle