Blog 10

From BitWizard Wiki
Revision as of 13:18, 24 September 2015 by Cartridge1987 (talk | contribs) (Created page with " == Push menu == 1. Temperature (From blog 05) 2. Time with load averages (From blog 04) 3. CPU + GPU (From blog 08) 4. Temperature at weather station (From ...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Push menu

1. Temperature  (From blog 05)
2. Time with load averages (From blog 04)
3. CPU + GPU (From blog 08)
4. Temperature at weather station (From blog 09) 
5. Wind a weather station (From blog 09) 
6. Defining Temperature ( not visible on display! ) (From blog 05)

I used previous codes, but I copied them in a new version. Example

cp timer > time_load 

You have to make the script get to the basic, so that it only prints. So things like this has to be removed:

while true
done
echo 
10:00/11:00

Note! You shouldn't delete 11:20, because the script from pushmenu isn't made to to also remove the second line. It only cleans first row with 11:00.

Example from the 'Time with load averages':

#!/bin/bash

DISPL="bw_tool -I -D /dev/i2c-1 -a 94"

       load=`cut -d' ' -f-3 /proc/loadavg`
       $DISPL -t `date +%H:%M:%S`
       $DISPL -W 11:20:b
       $DISPL -t $load
#!/bin/bash 

Print=showtemp2
Print=time_load
Print=DIAMoscow2
Print=cgpu2
Print=DIAMWind
Print=ui
bw_tool -I -D /dev/i2c-1 -a 94 -w 10:00 

while true; do
  # kijk naar de knoppen
  Button=`bw_tool -I -D /dev/i2c-1 -a 94 -R 30:b`
  if [ $Button  = "20" ]; then 
    bw_tool -I -D /dev/i2c-1 -a 94 -w 10:00
    Print=showtemp2
  fi  

  if [ $Button  = "10" ]; then 
    bw_tool -I -D /dev/i2c-1 -a 94 -w 10:00
    Print=time_load
  fi 

  if [ $Button  = "08" ]; then 
    bw_tool -I -D /dev/i2c-1 -a 94 -w 10:00
    Print=cgpu2
  fi

  if [ $Button  = "04" ]; then 
    bw_tool -I -D /dev/i2c-1 -a 94 -w 10:00
    Print=DIAMoscow
  fi

  if [ $Button  = "02" ]; then 
    bw_tool -I -D /dev/i2c-1 -a 94 -w 10:00
    Print=DIAMWind
  fi

  if [ $Button  = "01" ]; then 
    bw_tool -I -D /dev/i2c-1 -a 94 -w 10:00
    Print=ui
  fi

  bw_tool -I -D /dev/i2c-1 -a 94 -w 11:00
  ./$Print

  sleep 1
done

All the 6 buttons reference to 6 scripts:

1. Temperature
2. Time 
3. CPU +GPU
4. Temperature at weather station
5. Wind at weather station 
6. ui

It directly removes everything from display. (10:00)

Then it will start the while loop. ( while true; do) When started it will first look if it detects which button is pressed.

After that I made 6 if statements to check of that button is pressed. ( to detect which button gives which number:

bw_tool -I -D /dev/i2c-1 -a 94 -R 30:b
01

) Press the number you want to know and press the button.

At the end it says it has to place on the line 11:00 and with ./$print he that finally print the every second the one information from the button pressed.

Thanks to the sleep you now have to wait a second to recognize the different button you pressed. Because it has to go trough that list again in that 1 sec.