Questa guida è stata verificata solo con versioni obsolete di Ubuntu, potrebbe non essere più valida. Vuoi contribuire ad aggiornarla? Clicca qui!

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

evdev è un modulo per la gestione generica delle periferiche di input di X. Consente la gestione di qualsiasi tipo di periferica di input e utilizza direttamente dei file descrittori come /dev/input/event*, permettendo un'accesso più diretto alle periferiche; è così possibile sfruttare maggiormente queste, senza subire le limitazioni imposte dall'accesso tramite gli altri file come /dev/input/mouse*, /dev/input/kbd* o /dev/input/js*.

Preparativi

Aprire il file /etc/apt/sources.list con un editor di testo ed i privilegi di amministrazione e aggiungere le seguenti righe:

deb http://ppa.launchpad.net/xorg-edgers/ubuntu hardy main
deb-src http://ppa.launchpad.net/xorg-edgers/ubuntu hardy main

Per aggiornare la lista dei pacchetti e installare la versione aggiornata di xserver-xorg-input-evdev è sufficiente digitare i seguenti comandi in una finestra di terminale:

sudo apt-get update
sudo apt-get upgrade

Identificazione del file descrittore

Per una configurazione di base della periferica, è sufficiente conoscere il suo file descrittore; digitare il seguente comando in una finestra di terminale:

sudo ls -l /dev/input/by-id/ | grep event

Per esempio, se si desidera configurare una periferica di imput, nel risultato del comando precedente potrebbe essere presente una riga simile alla seguente:

lrwxrwxrwx 1 root root 9 2008-09-16 12:14 usb-Logitech_Logitech_BT_Mini-Receiver_000761AEA7CD-event-mouse -> ../event2

In questo caso, il file descrittore sarà /dev/input/by-id/usb-Logitech_Logitech_BT_Mini-Receiver_000761AEA7CD-event-mouse.

Per verificare la correttezza delle informazioni ottenute dal precedente comando, è utile digitare il seguente comando in una finestra di terminale:

sudo less -f /dev/input/by-id/nome_file

Sostituire la dicitura «nome_file» com il nome del file identificato in precedenza.

Identificazione delle periferiche di gioco

Alcune periferiche non permettono l'identificazione tramite l'ID, quindi si deve utilizzare quella per percorso; digitare il seguente comando in una finestra di terminale:

sudo ls -l /dev/input/by-path/ | grep event

Un esempio di queste periferiche sono i joystick su gameport0 e nel risultato del precedente comando sarà presente una riga simile alla seguente:

lrwxrwxrwx 1 root root 9 2008-09-16 12:13 pci-gameport0--event-joystick -> ../event6

In questo caso il file descrittore è /dev/input/by-path/pci-gameport0--event-joystick.

Per verificare la correttezza delle informazioni ottenute dal precedente comando, è utile digitare il seguente comando in una finestra di terminale:

sudo less -f /dev/input/by-path/nome_file

Sostituire la dicitura «nome_file» com il nome del file identificato in precedenza.

Quando si identificano le periferiche per percorso, è utile notare che queste cambieranno file ogni volta che verrà fisicamente cambiata la porta a cui vengono connesse.

Se muovendo la periferica o premendo i tasti su di essa compaiono caratteri non leggibili sul terminale allora il file è stato identificato correttamente, altrimenti tale file non è quello corretto o viene già utilizzato da evdev.

Configurazione del server grafico

Una volta identificato correttamente il file, è necessario configurare X.

Se si sta configurando un mouse, una tastiera o un'altra periferica già in uso, bisogna come prima cosa eliminare i riferimenti a questa periferica già presenti. Aprire il file /etc/X11/xorg.conf con un editor di testo e con i privilegi di amministrazione, controllare nella sezione «ServerLayout» e commentare tutte le righe che si riferiscono a tale periferica aggiungendo il carattere «#» all'inizio della riga. Sempre all'interno di questa sezione aggiungere una nuova riga, in modo che assuma il seguente aspetto:

Section "ServerLayout"
    ...
#   InputDevice    "Mouse0"            "CorePointer"
    InputDevice    "MouseEvent0"       "CorePointer"
    InputDevice    "KeyboardEvent0"    "CoreKeyboard"
    InputDevice    "JoystickEvent0"
    ...
EndSection

Per i mouse è bene aggiungere la stringa «CorePointer» e per le tastiere «CoreKeyboard».

Il testo riportato sopra è solo esemplificativo, non è necessario usare tutte le periferiche di input con il modulo in questione.

Ora è necessario aggiungere una sezione per questa periferica; in fondo al file aggiungere delle righe simili alle seguenti:

Section "InputDevice"
        Identifier              "Identificativo"
        Driver                  "evdev"
        Option  "Path"  "/dev/input/by-id/nome_file"
EndSection

La dicitura «Identificativo» deve essere sostituita con l'identificativo aggiunto nella sezione «ServerLayout» (per esempio «KeyboardEvent0») mantenendo le virgolette, e «nome_file» con il nome del file descrittore identificato in precedenza.

L'attuale versione di evdev supporta poche opzioni native, in compenso supporta tutte le opzioni degli altri moduli di input; per esempio, se si desidera configurare una tastiera per la lingua italiana, inserire nella sezione «InputDevice» una riga simile alla seguente:

    Option    "XkbLayout"    "it"

Ulteriori risorse


CategoryHardware CategoryDaRevisionare

Hardware/Video/Evdev (l'ultima modifica è del 29/05/2021 21.34.02, fatta da wilecoyote)