Repository 32bit  Forum
Repository 64bit  Wiki

Acer Aspire 1692WLMi: differenze tra le versioni

Da Slacky.eu.
(Wifi)
(Ringraziamenti)
Riga 558: Riga 558:
= Ringraziamenti =
= Ringraziamenti =
<pre>
 
Un ringraziamento particolare va a kinalus, il quale ha corretto i bug presenti nel DSDT specifico per il mio portatile e ha postato il DSDT corretto sul sito ACPI4Linux (http://acpi.sourceforge.net/dsdt/view.php?id=429).
Un ringraziamento particolare va a kinalus, il quale ha corretto i bug presenti nel DSDT specifico per il mio portatile e ha postato il DSDT corretto sul sito ACPI4Linux (http://acpi.sourceforge.net/dsdt/view.php?id=429).
Altro dovuto ringraziamento va a Mehdi Yousfi-Monod e alla sua guida per l'installazione di Gentoo su Acer Aspire 1694WLMi. Le sue linee guida, infatti, mi hanno permesso di poter sfruttare al massimo questo portatile e di poter scrivere questa gui
Altro dovuto ringraziamento va a Mehdi Yousfi-Monod e alla sua guida per l'installazione di Gentoo su Acer Aspire 1694WLMi. Le sue linee guida, infatti, mi hanno permesso di poter sfruttare al massimo questo portatile e di poter scrivere questa gui
</pre>
 
= Link Utili =
= Link Utili =

Versione delle 10:50, 13 set 2006


Questa pagina descrive i passi principali per l'installazione della distro Slackware sul portatile Acer Aspire 1692WLMi. La realizzazione di questa pagina è dovuta in gran parte ai preziosissimi spunti trovati navigando nella rete.

Le specifiche tecniche del portatile sono le seguenti:

Processore: Intel® Pentium® M 740 1.73 Ghz con 2MB Cache L2 e 533Mhz FSB. Supporta Enhanced Intel® SpeedStep® Technology
Chipset: Intel® 915PM Express chipset
Memoria RAM: 512MB DDR333
Hard disk: 80GB 4200RPM
Scheda video: ATI Mobility Radeon X700 con 128MB di RAM dedicata
Schermo: 15.4' WXGA con risoluzione massima di 1280x800
Scheda audio: Intel ICH6 AC97
Masterizzatore DVD: MATSHITA UJ-840D (Double Layer)
Rete 
Wireless: Intel PRO/Wireless 2200BG
Wired: Broadcom Corporation NetXtreme BCM5788 Gigabit Ethernet
Modem: AC97 SoftV92 Data Fax Modem with SmartCP
Lettore PCMCIA: Texas Instruments PCIxx21/x515 Cardbus Controller
Lettore memorie flash: Texas Instruments PCIxx21 Integrated FlashMedia Controller. Legge SD, Memory Stick, Memory Stick PRO, MultiMediaCard.
Misc: bluetooth, irda, firewire

La configurazione attuale del mio sistema è:

Sistema operativo: GNU/Linux
Distribuzione: Slackware Linux 10.2
Kernel: 2.6.13, aggiornato successivamente in 2.6.15.3
XServer: X.Org 6.8.2
Window manager: Xfce-4.2.2
Drivers ATI: 8.23.7
Drivers Wifi: 1.1.1
Drivers stack IEEE80211: 1.1.12
Drivers modem 56K: 2.9.11

L'elenco delle periferiche PCI è il seguente (output del comando lspci):

00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)
00:01.0 PCI bridge: Intel Corporation Mobile 915GM/PM Express PCI Express Root Port (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 04)
00:1c.1 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (rev 04)
00:1c.2 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 3 (rev 04)
00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 04)
00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 04)
00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 04)
00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 04)
00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 04)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d4)
00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 04)
00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 04)
00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 04)
00:1f.1 IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 04)
00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 04)
01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility X700 (PCIE)
06:01.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller
06:01.2 FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host Controller
06:01.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller
06:03.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)
06:08.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5788 Gigabit Ethernet (rev 03)

L'elenco delle periferiche USB è il seguente (output del comando lsusb):

Bus 005 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 002: ID 0a5c:200a Broadcom Corp.
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 001: ID 0000:0000

Indice

Installazione

Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        2188    17575078+   7  HPFS/NTFS
/dev/hda2            2189        8632    51761430    c  W95 FAT32 (LBA)
/dev/hda3            8633        8708      610470   82  Linux swap
/dev/hda4            8709        9729     8201182+  83  Linux

Ho seguito la procedura consueta per l'installazione di Slackware, fornendo come parametro di boot test26.s. Al primo riavvio, ho inserito il secondo CD e installato i sorgenti e i moduli del kernel 2.6.13. Più precisamente ho installato i pacchetti:

kernel-modules-2.6.13-i486-1
kernel-source-2.6.13-i486-1	

Configurazione Delle Principali Periferiche

Wifi

Il portatile in questione monta la nota periferica wireless Intel PRO/Wireless 2200BG, per la quale sono disponibili i driver all'indirizzo http://ipw2200.sourceforge.net/ Tali driver richiedono che sul sistema sia presente un kernel 2.6.8 o superiore, le wireless extensions e il sottosistema ieee80211 (scaricabile dal sito http://ieee80211.sf.net/). Le procedure di compilazione del sottosistema IEEE80211 e dei driver non presentano alcuna difficoltà. Al termine della fase di compilazione, è disponibile un nuovo modulo del kernel, chiamato ipw2200. Per il caricamento del modulo in fase di boot senza ricorrere ad hotplug, basta aggiungere la seguente riga nel file

/etc/rc.d/rc.modules:
/sbin/modprobe ipw2200 led=1

L'opzione passata come parametro permette l'accensione del led arancione in presenza di segnale radio. I parametri di configurazione della rete wireless sono presenti nel file /etc/rc.d/rc.wireless.conf.

N.B.: per abilitare il segnale wifi occorre, in fase di boot, premere il tasto wireless.
N.B.: A partire dal kernel 2.6.14 è stato incluso nel kernel il supporto per tale scheda wireless. Personalmente, consiglio di non abilitare tale supporto nel kernel, ma di aggiornare i driver nel momento in cui sono rilasciate nuove versioni sul sito sopra indicato.

Ethernet

Il supporto per la scheda ethernet è presente in modo nativo nel kernel. Il modulo interessato è tg3 (TIGON3 in Device Drivers|Networking Support|Ethernet (1000 Mbit)|Broadcom Tigon3 support)

Modem

I driver del modem 56K integrato sono scaricabili all'indirizzo http://freshmeat.net/projects/slmodem/. Anche in questo caso, la procedura di compilazione e installazione del modulo nn presenta alcuna difficoltà.

ACPI

Prima di qualunque ricompilazione del kernel, l'ACPI su questo portatile non era funzionante al 100%. Non era possibile, infatti, controllare lo stato della batteria. Il problema risiede essenzialmente nel DSDT. Dopo innumerevoli ricerche, ho trovato un DSDT compatibile con questo modello di portatile: DSDT.aml. Per usare tale DSDT, ho seguito questi 5 passi:

applicazione della patch al kernel: ACPI DSDT in initrd;
abilitazione delle seguenti voci nel kernel: 
ACPI_CUSTOM_DSDT_INITRD in General Setup|Power Management|ACPI Support|Read custom DSDT from initrd (non come modulo);
BLK_DEV_INITRD in Device Drivers|Block Devices|Initial RAM disk (initrd) support (non come modulo);
CONFIG_ACPI_AC in in General Setup|Power Management|ACPI Support|AC Adapter;
CONFIG_ACPI_BATTERY in General Setup|Power Management|ACPI Support|Battery;
CONFIG_ACPI_BUTTON in General Setup|Power Management|ACPI Support|Button;
CONFIG_ACPI_FAN in General Setup|Power Management|ACPI Support|Fan;
CONFIG_ACPI_PROCESSOR in General Setup|Power Management|ACPI Support|Processor;
CONFIG_ACPI_THERMAL in General Setup|Power Management|ACPI Support|Thermal Zone;
ricompilazione del kernel;
copia del file DSDT.aml in /boot;
modifica del file di configurazione del boot loader (nel mio caso di Grub) con l'aggiunta della riga initrd /boot/DSDT.aml come mostrato nell'esempio:

# Linux bootable partition config ends
  title Linux Slackware 10.2 
  root (hd0,3)
  kernel /boot/image-2.6.15.3-doppiak root=/dev/hda4 ro
  initrd /boot/DSDT.aml

CPU

Il kernel 2.6.13 installato di default nel sistema non ha abilitato il supporto per il CPU Frequency Scaling. Questo richiede una ricompilazione del kernel e l'abilitazione delle seguenti voci:

CONFIG_CPU_FREQ in General Setup|Power Management|CPU Frequency scaling|CPU Frequency scaling;
CONFIG_CPU_FREQ_STAT in General Setup|Power Management|CPU Frequency scaling|CPU frequency translation statistics;
CONFIG_CPU_FREQ_STAT_DETAILS in General Setup|Power Management|CPU Frequency scaling|CPU frequency translation statistics details;
CONFIG_CPU_FREQ_GOV_POWERSAVE in General Setup|Power Management|CPU Frequency scaling|'powersave' governor;
CONFIG_CPU_FREQ_GOV_USERSPACE in General Setup|Power Management|CPU Frequency scaling|'userspace' governor for userspace frequency scaling;
CONFIG_CPU_FREQ_GOV_ONDEMAND in General Setup|Power Management|CPU Frequency scaling|'ondemand' cpufreq policy governor;
CONFIG_CPU_FREQ_GOV_CONSERVATIVE in General Setup|Power Management|CPU Frequency scaling|'conservative' cpufreq governor;
CONFIG_X86_SPEEDSTEP_CENTRINO in General Setup|Power Management|CPU Frequency scaling|Intel Enhanced SpeedStep;

Per la regolazione della frequenza in base al carico di lavoro e soprattutto in base al tipo di alimentazione (linea o batteria), ho usato il tool Cpu Frequency Daemon (cpufreqd, reperibile all'indirizzo http://cpufreqd.sourceforge.net/). Per caricarlo automaticamente all'avvio, basta aggiungere la seguente riga al file /etc/rc.d/rc.local:

/usr/sbin/cpufreqd


Scheda video

Per sfruttare appieno le potenzialità della scheda video PCI express installata su questo portatile, occorre scaricare i driver ATI direttamente dal sito del produttore (driver ATI linux). La procedura di installazione dei driver ATI si articola nei seguenti passi:

conversione del pacchetto RPM scaricato in formato TGZ: rpm2tgz fglrx_6_8_0-8.23.7-1.i386.rpm
decompressione dell'archivio in /
compilazione dei moduli ATI: cd /lib/modules/fglrx/buil_mod && ./make.sh
installazione dei moduli ATI: cd.. && ./make_install.sh
configurazione del server grafico: fglrxconfig
aggiunta della seguente riga al file /etc/fstab:
tmpfs  /dev/shm   tmpfs   defaults   0 0

Al termine della procedura, è necessario apportare qualche piccola modifica al file /etc/X11/xorg.conf al fine di abilitare la risoluzione 1280x800. Più precisamente nella sezione "Monitor" occorre aggiungere la seguente riga:

Modeline "1280x800" 83.46 1280 1344 1480 1680 800 801 804 828 -Hsync +Vsync

Questa riga permette di sfruttare la risoluzione WXGA dello schermo LCD. Nella sottosezione "Display" della sezione "Screen", occorre modificare la riga

Modes "1024x768"

in

Modes "1280x800"

La verifica del corretto funzionamento dei driver ATI può essere fatta lanciando il comando fglrxinfo. Si dovrebbe ottenere un output simile a questo:

display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: MOBILITY RADEON X700 Generic
OpenGL version string: 2.0.5695 (8.23.7)

Altra verifica importante da fare è eseguire il comando fgl_glxgears. Se tutto è andato bene, dovrebbe essere mostrato a video un cubo rotante; nel terminale invece è mostrato il numero di frames per secondo. Qui di seguito è mostrato il file xorg.conf correntemente in uso:

== Section "Device" ==

Driver                              "fglrx"
# ### generic DRI settings ###
# === disable PnP Monitor  ===
	#Option                              "NoDDC"
# === disable/enable XAA/DRI ===
	Option "no_accel"                   "no"
	Option "no_dri"                     "no"
# === misc DRI settings ===
	Option "mtrr"                       "off" # disable DRI mtrr mapper, driver has its own code for mtrr
# ### FireGL DDX driver module specific settings ###
# === Screen Management ===
	Option "DesktopSetup"               "(null)" 
	Option "ScreenOverlap"              "0" 
	Option "GammaCorrectionI"           "0x00000000"
	Option "GammaCorrectionII"          "0x00000000"
# === OpenGL specific profiles/settings ===
	Option "Capabilities"               "0x00000000"
	Option "CapabilitiesEx"             "0x00000000"
# === Video Overlay for the Xv extension ===
	Option "VideoOverlay"               "on"
# === OpenGL Overlay ===
# Note: When OpenGL Overlay is enabled, Video Overlay
#       will be disabled automatically
	Option "OpenGLOverlay"              "off"
# === Center Mode (Laptops only) ===
	Option "CenterMode"                 "off"
# === Pseudo Color Visuals (8-bit visuals) ===
	Option "PseudoColorVisuals"         "off"
# === QBS Management ===
	Option "Stereo"                     "off"
	Option "StereoSyncEnable"           "1"
# === FSAA Management ===
	Option "FSAAEnable"                 "no"
	Option "FSAAScale"                  "1"
	Option "FSAADisableGamma"           "no"
	Option "FSAACustomizeMSPos"         "no"
	Option "FSAAMSPosX0"                "0.000000"
	Option "FSAAMSPosY0"                "0.000000"
	Option "FSAAMSPosX1"                "0.000000"
	Option "FSAAMSPosY1"                "0.000000"
	Option "FSAAMSPosX2"                "0.000000"
	Option "FSAAMSPosY2"                "0.000000"
	Option "FSAAMSPosX3"                "0.000000"
	Option "FSAAMSPosY3"                "0.000000"
	Option "FSAAMSPosX4"                "0.000000"
	Option "FSAAMSPosY4"                "0.000000"
	Option "FSAAMSPosX5"                "0.000000"
	Option "FSAAMSPosY5"                "0.000000"
# === Misc Options ===
	Option "UseFastTLS"                 "0"
	Option "BlockSignalsOnLock"         "on"
	Option "UseInternalAGPGART"         "yes"
	Option "ForceGenericCPU"            "no"
	Option "KernelModuleParm"           "agplock=0" # AGP locked user pages: disabled
	BusID "PCI:1:0:0"    # vendor=1002, device=5653
	Screen 0
EndSection

Section "Screen"

Section "Screen"
	Identifier  "Screen0"
	Device      "ATI Graphics Adapter"
	Monitor     "Monitor0"
	DefaultDepth 24
	#Option "backingstore"

	Subsection "Display"
		Depth       24
		Modes       "1280x800"
		ViewPort    0 0  # initial origin if mode is smaller than desktop
#        Virtual     1280 1024
	EndSubsection
EndSection

Scheda Audio

La scheda audio funziona senza alcun problema. Viene rilevata e caricata correttamente da hotplug in fase di boot. L'unica operazione da fare è eseguire il comando alsamixer, regolare i volumi e poi salvare le impostazioni mediante il comando alsactl store.

USB

Le tre porte USB montate su questo portatile funzionano alla perfezione senza alcun intervento particolare. I moduli caricati automaticamente all'avvio da hotplug sono uhci_hcd e ehci_hcd.

FIREWIRE

La porta firewire presente funziona senza alcun problema. I moduli caricati all'avvio da hotplug sono ieee1394 e ohci1394. Sfortunamente non dispongo di nessun dispositivo firewire, quindi non ho potuto fare prove reali di funzionamento della porta.

Tasti Speciali

L'Acer Aspire 1692WLMi dispone, come la maggior parte dei portatili attuali, di un discreto numero di tasti speciali. Inizialmente gli unici tasti speciali funzionanti al 100% erano:

i tasti di regolazione della luminosità dello schermo;
il tasto di accensione/spegnimento del touchpad (FN + F7);
il tasto di accensione/spegnimento del segnale Wifi;
il tasto di accensione/spegnimento del modulo Bluetooth;
il tasto di accensione/spegnimento del display LCD (FN + F6).

Da questa lista risulta che i tasti speciali non funzionanti sono:

i tasti di regolazione del volume;
il tasto di abilitazione/disabilitazione del suono (FN + F8);
i quattro tasti posti accanto a quello di accensione/spegnimento del portatile;
i tasti per l'ascolto della musica (Play/Pause, Stop, Rewind, Forward).

Facendo qualche ricerca su internet e soprattutto prendendo spunto dalla guida di Mehdi Yousfi-Monod sull'installazione di Gentoo su un Acer Aspire 1694WLMi (http://intuxication.org/~mym/acer/), ho trovato qualcosa per far funzionare anche gli altri tasti funzione.

La procedura illustrata qui di seguito è identica a quella di Mehdi Yousfi-Monod nella sua guida. Prima di tutto, occorre impostare i tasti speciali mediante il tool setkeycodes. Come viene spiegato nella pagina di man del comando, setkeycodes legge due argomenti alla volta: uno scancode (dato in esadecimale) e un keycode (dato in decimale). Per ogni coppia, dice al driver del kernel della tastiera di mappare lo scancode con il keycode specificati come argomenti. Lo script che effettua questo mapping è riportato qui di seguito:

#!/bin/sh
#-----------------------------------------------
#Acer Aspire 1692WLMi hotkeys
#-----------------------------------------------
SKC=/usr/bin/setkeycodes

#help (symb ?) (Fn+F1 )
#dmesg: setkeycodes e025 <keycode>
#define KEY_HELP                138
$SKC e025 138

#Acer eSetting (Fn+F2)
#dmesg: setkeycode e026 <keycode>
#define KEY_SETUP               141
$SKC e026 141


#Acer ePowerManagement (Fn+F3)
#dmesg: setkeycodes e027 <keycode>
#define KEY_MENU                139
$SKC e027 139

#Sleep (symb Zz) (Fn+F4) doesn't work
#no dmesg or xev
#define KEY_SLEEP               142

##Display Choice (symb [  ]|[#]) (Fn+F5)
#dmesg: setkeycode e029 <keycode>
#define KEY_CYCLEWINDOWS        154
$SKC e029 154

##Black screen (symb[*]>[ ]) (Fn+F6) works (turn off/on the LCD)
#no dmesg or xev

##Mousepad (Fn+F7) works (turn off/on the mousepad)
#dmesg: setkeycodes e072 <keycode> (off->on)
#define KEY_CHAT->->216
$SKC e072 216
#dmesg: setkeycodes e071 <keycode> (off->on)
#define KEY_SPORT  220
$SKC e071 220
##extra â\ufffd¬ (near direction keys,above left key)
#dmesg: setkeycodes e033 <keycode>
#define KEY_PROG3               202
$SKC e033 202

##extra $ (near direction keys,above right key)
#dmesg: setkeycodes e034 <keycode>
#define KEY_PROG4               203
$SKC e034 203

##Brightness Up (Fn+Right) make LCD brighter
#dmesg: setkeycodes e06e <keycode>
#define KEY_BRIGHTNESSUP        225
$SKC e06e 225

##acer P
#dmesg: setkeycodes e073 <keycode>
#define KEY_PROG1               148
$SKC e073 148

##acer e
#dmesg: setkeycodes e074 <keycode>
#define KEY_PROG2               149
$SKC e074 149

##Blue LED Switchbutton (bluetooth)
#dmesg: setkeycodes e057 <keycode> (off-> on, the blue light turns on)
#define KEY_SENDFILE 145$
$SKC e057 145
#dmesg: setkeycodes e058 <keycode> (on-> off, the blue light turns off)
#define KEY_DELETEFILE 146
$SKC e058 146

##Orange LED Switchbutton (wifi)
#dmesg: setkeycodes e055 <keycode> (/sys/bus/pci/drivers/ipw2200/0000\:06\:03.0/rf_kill goes from 2 to 0 or from 3 to 1)
#define KEY_CONNECT   218
$SKC e055 218
#dmesg: setkeycodes e056 <keycode> (/sys/bus/pci/drivers/ipw2200/0000\:06\:03.0/rf_kill goes from 0 to 2 or from 1 to 3)
#define KEY_FINANCE   219
$SKC e056 219

Questo script va eseguito all'avvio, ad esempio aggiungendo una riga in fondo al file /etc/rc.d/rc.local.

A questo punto va definita un'azione per ogni tasto speciale. Questo è possibile mediante un pacchetto, chiamato hotkeys, scaricabile dal sito web http://ypwong.org/hotkeys/. Il file che ho scaricato è hotkeys-latest.tar.gz. L'installazione del pacchetto può essere fatta con i soliti comandi: ./configure, make, sudo make install. Nella directory /usr/local/share/hotkeys sono presenti i file di definizione di alcune tastiere multimediali. In questa directory bisogna aggiungere il file di definizione della tastiera del portatile. Chiameremo questo file con il nome acer-aspire-1690.def

<?xml version="1.0"?>

<definition>

  <config model="Acer Aspire 1690 Series Keyboard">

    	<VolUp        keycode="176" adj="5"/>
    	<VolDown      keycode="174" adj="5"/>
    	<Mute         keycode="160"/>

	<userdef keycode="245" command="echo Acer Help">Acer help</userdef>
    	<userdef keycode="151" command="echo Acer e">Acer e</userdef>
       	<userdef keycode="159" command="echo Acer P">Acer P</userdef>

     	<userdef keycode="194"  command="echo wifi off">wifi on</userdef>
     	<userdef keycode="195"  command="echo wifi on">wifi off</userdef>

      	<userdef keycode="199"  command="echo Bluetooth on">bluetooth on</userdef>
    	<userdef keycode="200"  command="echo Bluetooth off">bluetooth off</userdef>
	<userdef keycode="193" command="echo Acer eSetting">eSetting</userdef>
    	<userdef keycode="158" command="echo Acer ePM">ePM</userdef>	
	<userdef keycode="196" command="echo Mousepad on">MousePad On</userdef>
     	<userdef keycode="121" command="echo Mousepad off">MousePad Off</userdef>
    	<userdef keycode="166" command="echo Windows clycle">Windows Cycle</userdef>
     	<userdef keycode="171"  command="echo Euro">Euro</userdef>
    	<userdef keycode="172"  command="echo Dollars">Dollars</userdef>

  	<PrevTrack keycode="144"/>
	<Play      keycode="162"/>
     	<Stop      keycode="164"/>
    	<NextTrack keycode="153"/>
<WebBrowser   keycode="178"/>
    	<Email        keycode="236"/>
	
  </config>

<contributor>
	<name>Didier CLERC</name>
	<email>didier-clercNOSPAM@linuxbourg.ch</email>
</contributor>

</definition>

Il tool hotkeys ha un file di configurazione, chiamato hotkey.conf, presente nella directory /usr/local/etc/. In questo file possiamo definire cosa accadrà alla pressione di ciascuno dei tasti speciali. Eccone un esempio:

############################################################
# Global configuration for hotkeys                         #
############################################################

# These are the default values.
# A line starting with # is a comment.

### Specify the default keyboard  (without the .def extension) so you
### don't need to specify -t every time
Kbd=acer-aspire-1690
# CDROM=/dev/cdrom

PrevTrack=xmms --rew
Play=xmms --play-pause
Stop=xmms --stop
Pause=xmms --pause
NextTrack=xmms --fwd
#Rewind=

WebBrowser=firefox
Email=thunderbird
# Calculator=xcalc
FileManager=rox
# MyComputer=gmc
# MyDocuments=gmc
# Favorites=gnome-moz-remote --remote=openBookmarks
# Transfer=gtp
# Record=grecord
Shell=Terminal
# ScreenSaver=xscreensaver-command -activate
# NewsReader=mozilla -news
# Communities=mozilla -remote 'openURL(http://slashdot.org)'
# Search=mozilla -remote 'openURL(http://google.com)'
# Idea=mozilla -remote 'openURL(http://sourceforge.net)'
# Shopping=mozilla -remote 'openURL(http://thinkgeek.com)'
# Go=mozilla -remote 'openURL(http://linux.com)'
# Print=lpr
# Rotate=

# osd_font=-arphic-ar pl kaitim big5-bold-i-normal--0-250-0-0-c-0-*-*
### For the color, you can either use the strings in /etc/X11/rgb.txt,
### or use the RGB syntax #RRGGBB, e.g. ##A086FF
# osd_color=LawnGreen
# osd_timeout=3
### osd_position is either 'top' or 'bottom'
# osd_position=bottom
# osd_offset=25

La riga più importante di questo file è quella nella quale si definisce qual'è la tastiera di default (ovvero il nome di uno dei file contenuti nella directory /usr/local/share/hotkeys senza l'estensione .def).

Siamo giunti quasi al termine: l'unica operazione che resta da fare è avviare hotkeys insieme al nostro Window Manager preferito. Siccome io sono un appassionato di Xfce, riporto le istruzioni per avviare hotkeys congiuntamente a Xfce. E' sufficiente modificare il file /etc/X11/xdg/xfce4-session/xfce4-session.rc aggiungendo, nella sezione "Failsafe Session", la chiamata a hotkeys, come nell'esempio mostrato qui di seguito:

# This the default session launched by xfce4-session if the
# user hasn't saved any session yet or creates a new session.
[Failsafe Session]
Count=5
Client0_Command=xfwm4
Client0_PerScreen=False
Client1_Command=xfce4-panel
Client1_PerScreen=True
Client2_Command=xftaskbar4
Client2_PerScreen=True
Client3_Command=idesk
Client3_PerScreen=False
Client4_Command=hotkeys
Client4_PerScreen=Tru

File Di Configurazione

Configurazione del kernel 2.6.13: .config
Configurazione del kernel 2.6.15.3: .config
Configurazione di X.Org: xorg.conf
Configurazione di hotkeys: hotkeys.conf
Script mapping scancode-keycode: keycodes.sh
Definizione tastiera Acer Aspire 1690 series: acer-aspire-1690.def	

Ringraziamenti

Un ringraziamento particolare va a kinalus, il quale ha corretto i bug presenti nel DSDT specifico per il mio portatile e ha postato il DSDT corretto sul sito ACPI4Linux (http://acpi.sourceforge.net/dsdt/view.php?id=429). Altro dovuto ringraziamento va a Mehdi Yousfi-Monod e alla sua guida per l'installazione di Gentoo su Acer Aspire 1694WLMi. Le sue linee guida, infatti, mi hanno permesso di poter sfruttare al massimo questo portatile e di poter scrivere questa gui

Link Utili

Sito ufficiale della distro Slackware: http://www.slackware.com
ACER Aspire 1694WLMI (1024): http://intuxication.org/~mym/acer/
ACPI DSDT in initrd: http://gaugusch.at/kernel.shtml
ACPI4Linux: http://acpi.sourceforge.net/
Cpu Frequency Daemon: http://cpufreqd.sourceforge.net/
Sito ufficiale ATI: http://www.ati.com
Driver Intel PRO/Wireless 2200BG: http://ipw2200.sourceforge.net/
Driver modem 56K interno: http://freshmeat.net/projects/slmodem/
Hotkeys: http://ypwong.org/hotkeys/

Contatti

Per qualunque commento, domanda, correzione, ti prego di contattarmi via email al seguente indirizzo: NOME.COGNOME -at- gmail -dot- com (sostituisci NOME e COGNOME con il nome e il cognome riportati in cima all'articolo, '-at' con '@' e '-dot-' con '.', questa è una protezione contro lo SPAM).

Autore: Giovanni Verrecchia
20 marzo 2006
Strumenti personali
Namespace

Varianti