Blog 13
Scroll Menu
Scroll Menu with multiple functions, where with every functions you can set up certain things. Example: Changing Alarm Time Changing volume
The reason I made this, is because I don't want to use the raspberry pi only for just 1 thing. I want to use it for multiple script and don't want to use a command section to get the other script to work. Here I can also put all my future projects in.
First mission is to make it possible that it goes up and down in the menu and than choose a certain function.
- 1. Select option 1
- 2. Select option 2
- 3. go to the begin of the menu
- 4. Go to the End of the menu
- 5. Going down in the menu
- 6. Going up in the menu
For this script I used some techniques from previous scripts. That you can see in blog x and blog y.
array=( pushmenu2 AlarmMenu Jaap Tim Martin Koos Willem Bas Luuk Richard Nick Alex) # Element 0 1 2 3 4 5 6 7 8 9 10 11
An array is a list names that are put together and you can find with typing it's number. The number counting begins with 0 and ends until you stopped giving names. For this I used 2 names of previous scripts and 10 other random names.
Barray=( "Temp Menu" "Alarm Menu" Settings "Board menu" "Fries Menu" "Banana Menu" "vega burger" "wc menu" Bananaphone "2001:ABC" "ghost server" "My name is...") # Element 0 1 2 3 4 5 6 7 8 9 10 11
This is the second script and I called it Barray. ( You can of course call it what ever you want ) This array I made to print this text out. As you can see some of them don't use quotation marks. I only did that to say that you only really need to put them if you want to print a text with a space in it. And also here I gave the other 10 random names.
The final script all together:
#!/bin/bash bw_tool -I -D /dev/i2c-1 -a 94 -W 10:00 while true; do HENK=`bw_tool -I -D /dev/i2c-1 -a 94 -R 30:b` array=( pushmenu2 AlarmMenu Jaap Tim Martin Koos Willem Bas Luuk Richard Nick Alex) # Element 0 1 2 3 4 5 6 7 8 9 10 11 Barray=( "Temp Menu" "Alarm Menu" Settings "Board menu" "Fries Menu" "Banana Menu" "vega burger" "wc menu" Bananaphone "2001:ABC" "ghost server" "My name is...") # Element 0 1 2 3 4 5 6 7 8 9 10 11 if [ $HENK != "00" ]; then bw_tool -I -D /dev/i2c-1 -a 94 -W 10:00 fi if [ $HENK = "20" ]; then ./${array[$Number]} fi if [ $HENK = "10" ]; then ./${array[$Numb2]} fi if [ $HENK = "08" ]; then Number=0 fi if [ $HENK = "04" ]; then Number=10 fi if [ $HENK = "02" ]; then Number=$(((Number + 10) % 12 )) # can be changed to 11 if you want it to get 1 down fi if [ $HENK = "01" ]; then Number=$(((Number + 2) % 12 )) #can be changed to 1 if you want to get it up by 1 / I did 2 because speed 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""."${Barray[$Number]} bw_tool -I -D /dev/i2c-1 -a 94 -W 11:20 bw_tool -I -D /dev/i2c-1 -a 94 -t "$Numb3""."${Barray[$Numb2]} sleep 1 done