PDA

View Full Version : [Mini Guida] Mouse Logitech Bluetooth V470


aventrax
09-02-2008, 20:33
Vista la fatica che ho incredibilmente dovuto fare per configurare il mio nuovo mouse Logitech V470 bluetooth sul mio macbook (lato linux) ho deciso di scrivere due righe che riassumono la procedura da fare in Debian. Il tutto è adattabile a Ubuntu.

Il mouse ha 7 tasti, la particolarità è che la rotella si piega a destra e sinistra e possiamo associare qualsiasi funzione a questi tasti, io ho voluto fare in modo che fungessero come avanti-indietro in Firefox e nel file manager Nautilus. Cominciamo.

Innanzitutto accertiamoci di aver un kernel con supporto bluetooth, se usate quelli di default delle distro di solito siete già a posto.

Ora installiamo le utility.

# apt-get install bluez-utils

Proviamo ora a cercare il device..

# hcitool scan

Il comando sopra restituirà un indirizzo simile ad un MAC address (es. AA:00:11:22:33:BB) di una scheda di rete, scrivetevelo da qualche parte che quello è il mouse (se non avete altri dispositivi bluetooth accesi nelle vicinanze).

Proviamo dunque a connettere il mouse. Accendiamolo, e premiamo il tasto connect sotto di esso e lanciamo subito questo comando:

# hidd --connect AA:00:11:22:33:BB

Se il comando funziona non restituirà alcun output, verifichiamolo comunque così:

# hidd --show
AA:00:11:22:33:BB Logitech Bluetooth Mouse [046d:b008] connected

Da subito dovreste poter usare il mouse senza riavviare X o il SO, se così non fosse la causa è il vostro xorg.conf, ma a quello arriveremo dopo, al momento facciamo in modo che quello che abbiamo fatto sia automatico ad ogni avvio.

In /etc/default/bluetooth accertiamoci ci siano queste voci..

BLUETOOTH_ENABLED=1
HIDD_ENABLED=1
HIDD_OPTIONS="--master --connect AA:00:11:22:33:BB --server"

Ora apriamo /etc/bluetooth/hcid.conf e in fondo aggiungiamo questo

device AA:00:11:22:33:BB {
name "Logitech Bluetooth Mouse";
}

Assicuratevi che "name" sia esattamente la stringa che avete ricavato da /proc/bus/input/devices relativa al vostro mouse.


Ora passiamo alla configurazione di Xorg.

# cat /proc/bus/input/devices

[...]

I: Bus=0005 Vendor=046d Product=b008 Version=0314
N: Name="Logitech Bluetooth Mouse"
P: Phys=00:13:12:A9:52:44
S: Sysfs=/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/hci0/aclaa00112233bb/input/input11
U: Uniq=AA:00:11:22:33:BB
H: Handlers=mouse2 event9
B: EV=17
B: KEY=ff0000 0 0 0 0 0 0 0 0
B: REL=143
B: MSC=10

Come vedete a noi interessano i parametri colorati. La stringa "Name" è quella che andava precedentemente in /etc/bluetooth/hcid.conf, e assieme alle altre serviranno ora in xorg.conf. Aggiungete una sezione "InputDevice" al vostro /etc/X11/xorg.conf :

Section "InputDevice"
Identifier "Logitech V470"
Driver "evdev"
Option "SendCoreEvents" "true"
Option "Device" "/dev/input/event9"
Option "Protocol" "evdev"
Option "Buttons" "7"
Option "Emulate3Buttons" "false"
Option "ZAxisMapping" "4 5"
# Option "Buttonmapping" "1 2 3 9 8" #non funziona con drv evdev
Option "Name" "Logitech Bluetooth Mouse"
Option "Dev Phys" "AA:00:11:22:33:BB"
EndSection

I valori da modificare sono quelli che abbiamo ricavato in precedenza da /proc/bus/input/devices, e sono ovviamente quelli colorati.Occhio al device, nel mio caso event9, cambiatelo di conseguenza per i vostri sistemi. Per far si che venga caricato questo nuovo dispositivo all'avvio di X, dovete aggiungere nella sezione ServerLayout una riga relativa al dispositivo definito sopra..

Section "ServerLayout"
[...]
InputDevice "Logitech V470"
EndSection

Ora che abbiamo configurato correttamente X, il mouse dovrebbe essere riconosciuto. Verifichiamo che sia così guardando i log di X in /var/log/Xorg.0.log, dovreste avere qualcosa di simile a questo...

(**) Logitech V470: always reports core events
(II) Logitech V470: Found 4 relative axes.
(II) Logitech V470: Configuring as pointer.
(II) Logitech V470: Found 8 mouse buttons
(II) Logitech V470: Configured 13 mouse buttons.
(**) Logitech V470: 2 valuators.
(**) Logitech V470: Configuring in Absolute mode.
(**) Logitech V470: Registering 13 buttons.
(II) Logitech V470: Init
(II) Logitech V470: On

Verifichiamo che tutti i tasti funzionino.

$ xev

Si aprirà una finestra e a terminale vedremo tutti gli input provenienti dal nostro mouse, tenendolo fermo proviamo a schiacciare tutti i tasti e verifichiamo che a ogni tasto venga scritto qualcosa di differente a terminale. Un altro modo per verificare questo è :

$ imwheel -c

Benissimo, il mouse funziona! Avviamo Firefox o Nautilus e verifichiamo che sia possibile andare avanti e indietro fra pagine o cartelle muovendo la rotella del mouse a destra e sinistra. Questa funzione via tastiera si ottiene premendo ALT+Freccia_DX/SX, non ci resta che farlo fare al mouse avvalendoci di due formidabili tools, xvkbd e xbindkeys.

In ~/.xbindkeysrc, che probabilmente non esiste oppure è vuoto, e scriveteci questo...

"/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Left]""
m:0x0 + b:7
"/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Right]""
m:0x0 + b:6

Ogni entry si compone di due righe, la prima è il comando che vogliamo sia eseguito, in questo caso ci avvaliamo di xvkbd che digiterà virtualmente ALT+FrecciaSX; la seconda è la definizione di quel qualcosa che fa eseguire il comando stesso. Nel nostro caso la pressione del tasto che abbiamo trovato prima con i comandi xev o imwheel.
Ecco fatto, ora abbiamo "bindato" al mouse una combinazione di tasti. Potete sbizzarrirvi a creare alias per qualsiasi altra cosa, ma per i nostri scopi basta questo.

Spero di essere stato utile a qualcuno.
Saluti.

aventrax
12-02-2008, 12:00
Update:

Se attacchiamo altri mouse o tastiere può capitare che il device /dev/input/event9 cambi e di conseguenza il mouse non funzioni più. Per fare in modo che il nostro mouse sia SEMPRE riconosciuto ugualmente come event9 editiamo (creiamo) /etc/udev/rules.d/19-local.rules e mettiamoci dentro questo:

KERNEL=="event[0-9]*", SYSFS{../name}=="Logitech Bluetooth Mouse", NAME="input/event9"

RollingThunder
15-03-2008, 01:44
Nonostante ovunque venga scritto che con gutsy basta pigiare sul bottoncino cercare il mouse e connetterlo io ho avuto seri problemi col mio vaio.
Dunque il tutto si è risolto usando il comando
hciconfig hci0 reset
Vi accorgerete di avere il mio problema se dal comando hciconfig -a otterrete un messaggio di errore.
Il comando va dato come root quindi: sudo hciconfig hci0 reset.
Dopodiché l'applet bluetooth riusciva a vedere il mio mouse ma non riuscivo ad accoppiarlo.
Seguendo questa guida ho risolto, e non ho avuto bisogno di fare nulla per avere avanti-indietro in firefox.
Per avere il reset del device bluetooth basta inserire "hciconfig hci0 reset" nel file /etc/rc.local prima di exit0 e senza # davanti ovviamente.
Unico problemino che ho è con la gestione della sensibilità, vorrei poter configurarare il puntatore mouse del per farlo andare pià lento ma con l'applicazione standard non sembra succedere nulla e comunque sembra non salvare i settaggi da un riavvio ad un altro...

cipo691
03-02-2009, 19:49
Io avevo configurato tutto e funzionava alla grande fino a quando non si sono scaricate le batterie del mouse, le ho cambiate, e adesso il mouse me lo vede si connettem, ma non dà nessun segno di vita...

TorpedoBlu
12-07-2009, 21:38
ottima guida, direi anche molto "nerd" :D

per chi non mastica molto di shell, scripting ecc...

qui una guida "punta e clicca"

http://www.hwsetup.it/articoli/index.php?action=get&hws_article_id=14&hws_article_page_id=5