Im aktuellen Mainline-Kernel für den Cubietruck sind alle LEDs standardmäßig deaktiviert. Je nach Anwendungsfall kann es aber sehr wünschenswert sein, das Standard-Verhalten des 3.4er Kernels wiederherzustellen.
Um die blaue LED für die Heartbeat-Anzeige des Hardware-Watchdogs zu verwenden, muss nur der LED-Trigger der blauen LED auf „heartbeat“ gesetzt werden:
echo "heartbeat" > /sys/class/leds/cubietruck\:blue\:usr/trigger
Ist die Belegung statisch gewünscht, kann man die Zuordnung auch über den Device-Tree-Blob vornehmen. Die entsprechende Code-Stelle in der Cubietruck-DTS-Datei sieht dann so aus (Vielen Dank an Alex für den Hinweis):
leds { compatible = „gpio-leds“; pinctrl-names = „default“; pinctrl-0 = ; blue { label = „cubietruck:blue:usr“; gpios = ; linux,default-trigger = „heartbeat“; }; ...
Kann man die LEDs noch für andere Zwecke nutzen, oder ist jede LED auf den jeweiligen Verwendungszweck festgelegt?
Man kann zwischen verschiedenen Triggern wählen. „cat /sys/class/leds/cubietruck\:blue\:usr/trigger“ gibt alle Möglichkeiten aus. In den eckigen Klammern ist die aktuelle Belegung gekennzeichnet. Aktuell ist dies bei mir:
none mmc0 [heartbeat] default-on mmc1
Ansonsten kann man natürlich die LEDs auch manuell schalten – z.B. in einem Skript:
echo 1 > /sys/class/leds/cubietruck\:green\:usr/brightness
schaltet sie ein, eine 0 schaltet sie aus.
Hey, danke für die schnelle Antwort!
Hallo,
in der cubietruck dts-datei im Kernel lässt sich das Standardverhalten festlegen.
Hinzugefügt wurde die zeile linux,default-trigger = „heartbeat“;
leds {
compatible = „gpio-leds“;
pinctrl-names = „default“;
pinctrl-0 = ;
blue {
label = „cubietruck:blue:usr“;
gpios = ;
linux,default-trigger = „heartbeat“;
};
[…]
Vielleicht hilft es ja