83 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| What:		/sys/class/leds/<led>/pattern
 | |
| Date:		September 2018
 | |
| KernelVersion:	4.20
 | |
| Description:
 | |
| 		Specify a software pattern for the LED, that supports altering
 | |
| 		the brightness for the specified duration with one software
 | |
| 		timer. It can do gradual dimming and step change of brightness.
 | |
| 
 | |
| 		The pattern is given by a series of tuples, of brightness and
 | |
| 		duration (ms). The LED is expected to traverse the series and
 | |
| 		each brightness value for the specified duration. Duration of
 | |
| 		0 means brightness should immediately change to new value, and
 | |
| 		writing malformed pattern deactivates any active one.
 | |
| 
 | |
| 		1. For gradual dimming, the dimming interval now is set as 50
 | |
| 		milliseconds. So the tuple with duration less than dimming
 | |
| 		interval (50ms) is treated as a step change of brightness,
 | |
| 		i.e. the subsequent brightness will be applied without adding
 | |
| 		intervening dimming intervals.
 | |
| 
 | |
| 		The gradual dimming format of the software pattern values should be:
 | |
| 		"brightness_1 duration_1 brightness_2 duration_2 brightness_3
 | |
| 		duration_3 ...". For example:
 | |
| 
 | |
| 		echo 0 1000 255 2000 > pattern
 | |
| 
 | |
| 		It will make the LED go gradually from zero-intensity to max (255)
 | |
| 		intensity in 1000 milliseconds, then back to zero intensity in 2000
 | |
| 		milliseconds:
 | |
| 
 | |
| 		LED brightness
 | |
| 		    ^
 | |
| 		255-|       / \            / \            /
 | |
| 		    |      /    \         /    \         /
 | |
| 		    |     /       \      /       \      /
 | |
| 		    |    /          \   /          \   /
 | |
| 		  0-|   /             \/             \/
 | |
| 		    +---0----1----2----3----4----5----6------------> time (s)
 | |
| 
 | |
| 		2. To make the LED go instantly from one brigntess value to another,
 | |
| 		we should use use zero-time lengths (the brightness must be same as
 | |
| 		the previous tuple's). So the format should be:
 | |
| 		"brightness_1 duration_1 brightness_1 0 brightness_2 duration_2
 | |
| 		brightness_2 0 ...". For example:
 | |
| 
 | |
| 		echo 0 1000 0 0 255 2000 255 0 > pattern
 | |
| 
 | |
| 		It will make the LED stay off for one second, then stay at max brightness
 | |
| 		for two seconds:
 | |
| 
 | |
| 		LED brightness
 | |
| 		    ^
 | |
| 		255-|        +---------+    +---------+
 | |
| 		    |        |         |    |         |
 | |
| 		    |        |         |    |         |
 | |
| 		    |        |         |    |         |
 | |
| 		  0-|   -----+         +----+         +----
 | |
| 		    +---0----1----2----3----4----5----6------------> time (s)
 | |
| 
 | |
| What:		/sys/class/leds/<led>/hw_pattern
 | |
| Date:		September 2018
 | |
| KernelVersion:	4.20
 | |
| Description:
 | |
| 		Specify a hardware pattern for the LED, for LED hardware that
 | |
| 		supports autonomously controlling brightness over time, according
 | |
| 		to some preprogrammed hardware patterns. It deactivates any active
 | |
| 		software pattern.
 | |
| 
 | |
| 		Since different LED hardware can have different semantics of
 | |
| 		hardware patterns, each driver is expected to provide its own
 | |
| 		description for the hardware patterns in their ABI documentation
 | |
| 		file.
 | |
| 
 | |
| What:		/sys/class/leds/<led>/repeat
 | |
| Date:		September 2018
 | |
| KernelVersion:	4.20
 | |
| Description:
 | |
| 		Specify a pattern repeat number. -1 means repeat indefinitely,
 | |
| 		other negative numbers and number 0 are invalid.
 | |
| 
 | |
| 		This file will always return the originally written repeat
 | |
| 		number.
 |