Added brightness fix

This commit is contained in:
ham
2024-03-20 06:09:19 -07:00
parent f7f27a008f
commit 2b08589af2
5 changed files with 106 additions and 2 deletions
+45
View File
@@ -0,0 +1,45 @@
#!/bin/bash
#
# Author : Gaston Gonzalez
# Date : 16 January 2023
# Updated : 16 March 2024
# Purpose : Fix screen brightness on Panasonic hardware
#
# Note: This fix is based on the following article:
# https://www.bobjohnson.com/bloghow-to-install-ubuntu-on-a-panasonic-toughbook-cf31/
PATH=/opt/emcomm-tools/bin:$PATH
WatchDriver="/sys/class/backlight/panasonic"
PatchDriver="/sys/class/backlight/intel_backlight"
if [ ! -d $WatchDriver ]; then
et-log "This is not a Pansonic system. Exiting."
exit 1
fi
if [ ! -d $PatchDriver ]; then
et-log "Patch driver directory does not exist: ${PatchDriver}"
exit 1
fi
# Get maximum brightness values
WatchMax=$(cat $WatchDriver/max_brightness)
PatchMax=$(cat $PatchDriver/max_brightness)
SetBrightness () {
# Calculate watch current percentage
WatchAct=$(cat $WatchDriver/actual_brightness)
WatchPer=$(( WatchAct * 100 / WatchMax ))
# Reverse engineer patch brightness to set
PatchAct=$(( PatchMax * WatchPer / 100 ))
echo $PatchAct | sudo tee $PatchDriver/brightness
}
# When machine boots, set brightness to last saved value
SetBrightness
# Wait forever for user to press Fn keys adjusting brightness up/down.
while (true); do
/usr/bin/inotifywait --event modify $WatchDriver/actual_brightness
SetBrightness
done