Add initial version
This version is semi-tuned to give reasonable brightness.
This commit is contained in:
		
							
								
								
									
										89
									
								
								brightness.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										89
									
								
								brightness.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,89 @@ | ||||
| #!/bin/bash | ||||
|  | ||||
| max=$(cat /sys/class/backlight/intel_backlight/max_brightness) | ||||
|  | ||||
| sensitivity=$((max/90)) | ||||
|  | ||||
| treshold=$((max/4)) | ||||
|  | ||||
| panOut=$((sensitivity/4)) | ||||
|  | ||||
| min=$((max/10)) | ||||
|  | ||||
| delay=2 | ||||
|  | ||||
| minSensor=404334 | ||||
|  | ||||
|  | ||||
| while [ 1 ] | ||||
| do | ||||
|         updated=1 | ||||
|         while [ $updated -gt 0 ] | ||||
|         do | ||||
|                 updated=0 | ||||
|                 backlight=$(cat /sys/class/backlight/intel_backlight/brightness) | ||||
|                 sensor=$(cat /sys/bus/iio/devices/iio:device0/in_illuminance_raw) | ||||
| 		# Scale the sensor a bit | ||||
| 		sensor=$((sensor/10)) | ||||
| 		sensor=$((5*sensor)) | ||||
| 		target=$backlight | ||||
|  | ||||
| 		echo Current backlight: $backlight | ||||
| 		echo Max backlight: $max | ||||
| 		echo Sensitivity is: $sensitivity | ||||
| 		echo Threshold is: $treshold | ||||
| 		echo panOut is: $panOut | ||||
| 		echo min is: $min | ||||
| 		echo Current sensor reading: $sensor | ||||
| 		echo Target is: $backlight | ||||
| 		 | ||||
|                 if [ $sensor -lt $treshold ] | ||||
|                 then | ||||
| 		    echo Sensor was less than backlight | ||||
|                     sensor=$(((sensor+panOut)+min)) | ||||
| 		    echo New sensor: $sensor | ||||
|                 fi | ||||
|  | ||||
|  | ||||
|  | ||||
|                 if [ $sensor -gt $((backlight+sensitivity)) ] | ||||
|                 then | ||||
| 		    echo Sensor was greater than backlight+sensitivity | ||||
|                     updated=1 | ||||
|                     target=$((target+(sensitivity/2))) | ||||
| 		    echo New target: $target | ||||
|                 fi | ||||
|  | ||||
|  | ||||
|                 if [ $sensor -lt $((backlight-sensitivity)) ] | ||||
|                 then | ||||
| 		    echo Sensor was less than backlight-sensitivity | ||||
|                     updated=1 | ||||
|                     target=$((target-(sensitivity/2))) | ||||
| 		    echo New target: $target | ||||
|                 fi | ||||
|  | ||||
|  | ||||
|                 if [ $target -gt $max ] | ||||
|                 then | ||||
| 		    echo Target was greater than max brightness | ||||
|                     target=$max | ||||
| 		    echo New target: $target		     | ||||
|                 fi | ||||
|  | ||||
|                 if [ $target -lt 1 ] | ||||
|                 then | ||||
| 		    echo Target was less than 1 | ||||
|                     target=$min | ||||
| 		    echo New target: $target | ||||
|                 fi | ||||
|  | ||||
|                 if [ $updated -gt 0 ] | ||||
|                 then | ||||
|                         echo $target > /sys/class/backlight/intel_backlight/brightness | ||||
|                 fi | ||||
|  | ||||
|         done | ||||
| 	echo Sleeping | ||||
|         sleep $delay | ||||
| done | ||||
		Reference in New Issue
	
	Block a user