One-shot LED Trigger¶
This is a LED trigger useful for signaling the user of an event where there areno clear trap points to put standard led-on and led-off settings. Using thistrigger, the application needs only to signal the trigger when an event hashappened, than the trigger turns the LED on and than keeps it off for aspecified amount of time.
This trigger is meant to be usable both for sporadic and dense events. In thefirst case, the trigger produces a clear single controlled blink for eachevent, while in the latter it keeps blinking at constant rate, as to signalthat the events are arriving continuously.
A one-shot LED only stays in a constant state when there are no events. Anadditional “invert” property specifies if the LED has to stay off (normal) oron (inverted) when not rearmed.
The trigger can be activated from user space on led class devices as shownbelow:
echo oneshot > trigger
This adds sysfs attributes to the LED that are documented in:Documentation/ABI/testing/sysfs-class-led-trigger-oneshot
Example use-case: network devices, initialization:
echo oneshot > trigger # set trigger for this ledecho 33 > delay_on # blink at 1 / (33 + 33) Hz on continuous trafficecho 33 > delay_off
interface goes up:
echo 1 > invert # set led as normally-on, turn the led on
packet received/transmitted:
echo 1 > shot # led starts blinking, ignored if already blinking
interface goes down:
echo 0 > invert # set led as normally-off, turn the led off