Asus W3N-Kompendium: Ubuntu Sondertasten

Aus Wikibooks

Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

[Bearbeiten] Sondertasten unter (K)Ubuntu 5.10

In (K)Ubuntu 5.10 wurden die Tasten auf einzelne Dateien verteilt.

Beispiel Stop-Taste für xmms & amarok:

/etc/acpi/stopbtn.sh

#!/bin/bash

. /etc/default/acpi-support
. /usr/share/acpi-support/power-funcs

getXconsole;
if [ x"$XAUTHORITY" != x"" ]; then
#    acpi_fakekey 164

user=`who| grep " :0" | awk '{print $1}'`

if ps -Af | grep '[x]mms'
then
   su $user -c "export DISPLAY=:0.0; /usr/bin/xmms -s &"
else
   su $user -c "export DISPLAY=:0.0; /usr/bin/amarok -s &"
fi

fi

[Bearbeiten] Sondertasten unter (K)Ubuntu 5.04

[Bearbeiten] Beschreibung der Tasten

Fn + F10 
Mute (Lautlos) Taste, die Master Lautstärke wird aus-/eingeschaltet
/usr/bin/amixer set Master toggle 
Fn + F11 
Leiser Taste, die Master Lautstärke wird verringert
/usr/bin/amixer set Master 1-
Fn + F12 
Lauter Taste, die Master Lautstärke wird erhöht
/usr/bin/amixer set Master 1+
CD-Taste (links) 
hier belegt mit CD auswerfen
eject cdrom
Zurück Taste (links) 
zurück bei Programm xmms
man-Eintrag -r, --rew Skip backwards in playlist.
username durch den Benutzernamen des Hauptbenutzers ersetzen (gilt auch für folgende Befehle)
su - username -c "/usr/bin/xmms -r &"
Stop Taste (links) 
stop bei Programm xmms
man-Eintrag -s, --stop Stop current song.
su - username -c "/usr/bin/xmms -s &"
Play/Pause Taste (links) 
spielen/anhalten bei Programm xmms
man-Eintrag -t, --play-pause Pause if playing, play otherwise.
su - username -c "/usr/bin/xmms -t &"
Vorwärts Taste (links) 
vorwärts bei Programm xmms
man-Eintrag -f, --fwd Skip forward in playlist.
su - username -c "/usr/bin/xmms -f &"
Web Taste (rechts); Browser wird gestartet
su - username -c "mozilla-firefox --display=:0.0"
WiFi button (rechts) bzw Fn + F2 
WLAN wird ein-/ausgeschaltet und die Status-LED wird angepasst
/etc/acpi/wireless.sh
Speed button (rechts oben erste Taste) 
Umschalten zwischen den powersave (600MHz) und ondemand (600-1700MHz)
/etc/acpi/speed.sh

[Bearbeiten] Skripte

[Bearbeiten] Hotkey aktivieren

/etc/acpi/events/hotkey

 event=hotkey ATKD .*
     action=/etc/acpi/actions/hotkey.sh %e

[Bearbeiten] Festlegen der Aktionen

/etc/acpi/actions/hotkey.sh

#!/bin/bash

#Benutzer feststellen
user=`who| grep " :0" | awk '{print $1}'`

     case "$3" in
     # Mute button
     00000032) /usr/bin/amixer set Master toggle
     ;;
     # Volume up button
     00000030) /usr/bin/amixer set Master 1+
     ;;
     # Volume down button
     00000031) /usr/bin/amixer set Master 1-
     ;;
     # Rewind button
     00000040) su - $user -c "/usr/bin/xmms -r &"
     ;;
     # Stop button
     00000043) su - $user -c "/usr/bin/xmms -s &"
     ;;
     # Play/pause button
     00000045) su - $user -c "/usr/bin/xmms -t &"
     ;;
     # Forward button
     00000041) su - $user -c "/usr/bin/xmms -f &"
     ;;
     # CD-player ON/OFF button (I use it to eject the cdrom)
     0000004c) eject cdrom
     ;;
     # Web button
     00000051) su - $user -c "mozilla-firefox --display=:0.0"
     ;;
     
     # WiFi button
     0000005d) /etc/acpi/wireless.sh
     ;;
     # Speed button
     0000005c) /etc/acpi/speed.sh
     ;;
     *) logger "ACPI hotkey $3 is not defined"
     ;;
     esac


/etc/acpi/wireless.sh

#!/bin/bash
# Find and enable/disable wireless devices
for DEVICE in /sys/class/net/*; do
   if [ -d $DEVICE/wireless ]; then
# $DEVICE is a wireless device. Check if it's powered on:
       if [ `cat $DEVICE/device/power/state` = 0 ]; then
# It's powered on. Switch it off.
         (  echo -n 3 > $DEVICE/device/power/state;
# WLAN LED off
            echo -n 0 > /proc/acpi/asus/wled;
         );
       else
# It's powered off. Switch it on.
         (  echo -n 0 > $DEVICE/device/power/state;
# WLAN LED on
            echo -n 1 > /proc/acpi/asus/wled;
         );
       fi
   fi
done

[Bearbeiten] WLAN Status-LED

Status der WLAN-LED nach Booten und Suspend festlegen

/etc/init.d/wled.sh

#!/bin/bash
# enable/disable WLAN LED
for DEVICE in /sys/class/net/*; do
   if [ -d $DEVICE/wireless ]; then
# $DEVICE is a wireless device. Check if it's powered on:
       if [ `cat $DEVICE/device/power/state` = 0 ]; then
# It's powered on. LED on.
         echo -n 1 > /proc/acpi/asus/wled; 
         else
# It's powered off. LED off.
         echo -n 0 > /proc/acpi/asus/wled; 
       fi
   fi
done


Status nach Suspend /etc/acpi/resume.sh (Zusatz am Ende)

...
. /etc/init.d/wled.sh


Status beim Booten

/etc/rc2.d/S70wled -> ./../init.d/wled.sh

[Bearbeiten] CPU Geschwindigkeit einstellen

Umschalten zwischen den powersave (600MHz) und ondemand (600-1700MHz)

cat /etc/acpi/speed.sh

#!/bin/bash
       var=$(cat /proc/cpufreq)
       if [ -z "${var#*powersave*}" ]; then 
          ( # von powersave nach ondemand wechseln
          echo "0%0%100%ondemand" > /proc/cpufreq;
          logger "powersave -> ondemand";
          )     
       else
          ( # von ondemand nach powersave wechseln
          echo "0%35%35%powersave" > /proc/cpufreq;
          logger "ondemand -> powersave";
          )                
       fi


[Bearbeiten] Link mit Infos

http://m6n.ath.cx/forum/viewtopic.php?t=208


Inhalt


Persönliche Werkzeuge
Buch erstellen