blob: d3696680bfc8ac557ef89abd39ac49383035695a [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001* Pattern format for LED pattern trigger
2
3The pattern is given by a series of tuples, of brightness and duration (ms).
4The LED is expected to traverse the series and each brightness value for the
5specified duration. Duration of 0 means brightness should immediately change to
6new value, and writing malformed pattern deactivates any active one.
7
81. For gradual dimming, the dimming interval now is set as 50 milliseconds. So
9the tuple with duration less than dimming interval (50ms) is treated as a step
10change of brightness, i.e. the subsequent brightness will be applied without
11adding intervening dimming intervals.
12
13The gradual dimming format of the software pattern values should be:
14"brightness_1 duration_1 brightness_2 duration_2 brightness_3 duration_3 ...".
15For example (using sysfs interface):
16
17echo 0 1000 255 2000 > pattern
18
19It will make the LED go gradually from zero-intensity to max (255) intensity in
201000 milliseconds, then back to zero intensity in 2000 milliseconds:
21
22LED brightness
23 ^
24255-| / \ / \ /
25 | / \ / \ /
26 | / \ / \ /
27 | / \ / \ /
28 0-| / \/ \/
29 +---0----1----2----3----4----5----6------------> time (s)
30
312. To make the LED go instantly from one brightness value to another, we should
32use zero-time lengths (the brightness must be same as the previous tuple's). So
33the format should be: "brightness_1 duration_1 brightness_1 0 brightness_2
34duration_2 brightness_2 0 ...".
35For example (using sysfs interface):
36
37echo 0 1000 0 0 255 2000 255 0 > pattern
38
39It will make the LED stay off for one second, then stay at max brightness for
40two seconds:
41
42LED brightness
43 ^
44255-| +---------+ +---------+
45 | | | | |
46 | | | | |
47 | | | | |
48 0-| -----+ +----+ +----
49 +---0----1----2----3----4----5----6------------> time (s)