Blog 18
Settings Menu
Hardware I used on my Raspberry Pi:
Programmed in:
- bash
In this post I will show the menu I made, where you can change the: Backlight, Contrast and Volume.
The overall script is based on the scroll menu from blog 1312314
#!/bin/bash
bw_tool -I -D /dev/i2c-1 -a 94 -W 10:00
while true; do
BUTTON=`bw_tool -I -D /dev/i2c-1 -a 94 -R 30:b`
array=( Volume Contrast Backlight )
# Element 0 1 2
Narray=( VOLUME CONTRAST BACKLIGHT )
# Element 0 1 2
if [ $BUTTON != "00" ]; then
bw_tool -I -D /dev/i2c-1 -a 94 -W 10:00
fi
if [ $BUTTON = "20" ]; then
./${array[$Number]}
fi
if [ $BUTTON = "10" ]; then
./${array[$Numb2]}
fi
if [ $BUTTON = "08" ]; then
Number=0
fi
if [ $BUTTON = "04" ]; then
exit
fi
if [ $BUTTON = "02" ]; then
Number=$(((Number + 2) % 3 ))
fi
if [ $BUTTON = "01" ]; then
Number=$(((Number + 1) % 3 ))
fi
Numb2=$((Number + 1))
Numb3=$((Numb2 + 1))
bw_tool -I -D /dev/i2c-1 -a 94 -W 11:00
bw_tool -I -D /dev/i2c-1 -a 94 -t "$Numb2""."${Narray[$Number]}
bw_tool -I -D /dev/i2c-1 -a 94 -W 11:20
bw_tool -I -D /dev/i2c-1 -a 94 -t "$Numb3""."${Narray[$Numb2]}
sleep 1
done
Backlight/Contrast
#!/bin/bash
bw_tool -I -D /dev/i2c-1 -a 94 -W 10:00
while true; do
BUTTON=`bw_tool -I -D /dev/i2c-1 -a 94 -R 30:b`
array=( 00 19 33 4c 66 7F 99 B2 CC E5 FF )
# Element 0 1 2 3 4 5 6 7 8 9 10
Narray=( 00 10 20 30 40 50 60 70 80 90 100 )
# Name 0 1 2 3 4 5 6 7 8 9 10
if [ $BUTTON != "00" ]; then
bw_tool -I -D /dev/i2c-1 -a 94 -W 10:00
fi
if [ $BUTTON = "04" ]; then
exit
fi
if [ $BUTTON = "02" ]; then
Number=$(((Number + 10) % 11 )) # can be changed to 11 if you want it to get 1 down
fi
if [ $BUTTON = "01" ]; then
Number=$(((Number + 1) % 11 )) #can be changed to 1 if you want to get it up by 1 / I did 2 because speed
fi
bw_tool -I -D /dev/i2c-1 -a 94 -W 11:00
bw_tool -I -D /dev/i2c-1 -a 94 -t "$Numb2"${Narray[$Number]}
bw_tool -I -D /dev/i2c-1 -a 94 -W 13:${array[$Number]}
sleep 1
done
Volume
#!/bin/bash
DISPL="bw_tool -I -D /dev/i2c-1 -a 94"
while true; do
BUTTON=`bw_tool -I -D /dev/i2c-1 -a 94 -R 30:b`
array=( 00 10 20 30 40 50 60 70 80 90 100 )
# Element 0 1 2 3 4 5 6 7 8 9 10
if [ $BUTTON != "00" ]; then
bw_tool -I -D /dev/i2c-1 -a 94 -W 10:00
fi
if [ $BUTTON = "04" ]; then
exit
fi
if [ $BUTTON = "20" ]; then
amixer -c 0 set PCM 5dB-
#mplayer ru.mp3
fi
if [ $BUTTON = "10" ]; then
amixer -c 0 set PCM 5dB+
#mplayer ru.mp3
fi
if [ $BUTTON = "02" ]; then
amixer -c 0 set PCM 10dB-
#mplayer ru.mp3
fi
if [ $BUTTON = "01" ]; then
amixer -c 0 set PCM 10dB+
#mplayer ru.mp3
fi
$DISPL -W 11:00:b
$DISPL -t `amixer | grep Mono: | sed -e 's/%] .*//' -e 's/.* \[//'`
sleep 1
done