LED: Difference between revisions

From ArmadeusWiki
(Redirecting to GPIO LEDS)
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
== The linux LED driver class ==
#REDIRECT [[GPIO_LEDS]]
 
On recent kernel, linux have a led driver. This led can be driven from /sys/class/leds/ directory.
 
For APF28Dev, the led is configurable under the directory :
 
<pre class="apf">
# cd /sys/class/leds/apfdev:green:user
</pre>
 
=== Blinking ===
 
The blinking style can be selected with ''trigger'' file. By defaut on APF28Dev, Heartbeat is selected :
 
<pre class="apf">
# cat /sys/class/leds/apfdev:green:user/trigger
none nand-disk mmc0 timer [heartbeat] backlight gpio default-on
</pre>
 
Blinking style can be changed with ''echo'' command :
 
<pre class="apf">
# echo "nand-disk" > /sys/class/leds/apfdev:green:user/trigger
# cat /sys/class/leds/apfdev:green:user/trigger
none [nand-disk] mmc0 timer heartbeat backlight gpio default-on
</pre>
 
With this "nand-disk" option selected, the led will blink each time nand access occur (try with ''sync'' command to see it blinking).
 
=== Switch led with user button ===
 
It is possible to switch led state using the APF28Dev user button. This button is seen as gpio17 (as seen under APF28Dev [[datasheet]]) under Linux, then configure the led trigger as gpio :
 
<pre class="apf">
# echo "gpio" > /sys/class/leds/apfdev:green:user/trigger
</pre>
 
New config files are available :
<pre class="apf">
# ls /sys/class/leds/apfdev:green:user/
brightness          gpio                power              uevent
desired_brightness  inverted            subsystem
device              max_brightness      trigger
</pre>
 
Then the trigger gpio can be configured with ''gpio'' file :
 
<pre class="apf">
# echo 17 > gpio
</pre>
 
Then pushing the user switch will now commute the LED state.
 
=== Links ===
 
See the kernel documentation [http://www.mjmwired.net/kernel/Documentation/leds-class.txt Documentation/leds-class.txt] for more information about this driver.

Latest revision as of 14:35, 10 July 2012

Redirect to: