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 13. The menu you can scroll through with button 5(up) and 6(down). On the screen than will be visible which 2 menu you can go to. With button 1 and 2 you can choose which of the 2 you want to edit.
#!/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