PDA

View Full Version : input/event* "statici?!"


palmy
13-10-2008, 19:04
Ho una tastiera/mouse usb wireless ed una scheda PCI per la sintonizzazione TV con remote controller IRdA.

Il mio problema è che ogni volta che riavvio il PC il numero degli event in /proc/bus/input/devices cambia ogni volta, spesso assegnando il numero di uno all'altro con la conseguenza di non riuscire a far funzionare il mouse o la tastiera o il telecomando della scheda TV.

esempio:


I: Bus=0003 Vendor=046d Product=c517 Version=0110
N: Name="Logitech USB Receiver"
P: Phys=usb-0000:00:02.0-2/input1
S: Sysfs=/class/input/input5
U: Uniq=
H: Handlers=kbd mouse0 event5
B: EV=1f
B: KEY=837fff042c332f bf08444400000000 ff0001 1f848a37cc00 667bfadd71dfed 9e000000000000 0
B: REL=1c3
B: ABS=100000000
B: MSC=10

I: Bus=0001 Vendor=1043 Product=4876 Version=0001
N: Name="saa7134 IR (ASUSTeK P7131 Hybri"
P: Phys=pci-0000:05:06.0/ir0
S: Sysfs=/class/input/input3
U: Uniq=
H: Handlers=kbd event3
B: EV=100003
B: KEY=108c0322 210400000000000 0 10000 418000000801 9f16c000000000 10000ffc



e magari la volta dopo vengono assegnati in modo opposto

Per ora l'unica soluzione è modificare ad ogni avvio il file /etc/lirc/hardware.conf (relativo al telecomando) con il numero di "event" assegnato a quel riavvio.


Chiaramente questa soluzione è pessima, perciò quello che vorrei sapere è se esiste un modo per stabilire in modo statico e definitivo gli input/event dei dispositivi.

HELP!! :help: :help:

Gimli[2BV!2B]
13-10-2008, 20:05
Ho trovato qualcosa nel man di lircd ("...you can use name=STRING or phys=STRING to select the device..."), ma non sono riuscito a capire dove andasse a parare di preciso.

Questa soluzione, invece, mi sembra più concreta e comprensibile. (http://www.mythtv.org/wiki/index.php/LIRC#Make_the_lirc_device_static)

Quindi direi DEVICE="/dev/input/irremote", più l'aggiunta in /etc/init.d/lirc (fai un backup, è!):
ln -fs /dev/input/`cat /proc/bus/input/devices | grep -A 3 "saa7134" | grep event | cut -d ' ' -f3 | head -n1` /dev/input/irremote

Prima testa se il comando per l'init crea il link e non necessita di qualcosa di diverso dal saa7134 che ho ipotizzato.

palmy
14-10-2008, 08:54
;24551707']Ho trovato qualcosa nel man di lircd ("...you can use name=STRING or phys=STRING to select the device..."), ma non sono riuscito a capire dove andasse a parare di preciso.

Questa soluzione, invece, mi sembra più concreta e comprensibile. (http://www.mythtv.org/wiki/index.php/LIRC#Make_the_lirc_device_static)

Quindi direi DEVICE="/dev/input/irremote", più l'aggiunta in /etc/init.d/lirc (fai un backup, è!):
ln -fs /dev/input/`cat /proc/bus/input/devices | grep -A 3 "saa7134" | grep event | cut -d ' ' -f3 | head -n1` /dev/input/irremote

Prima testa se il comando per l'init crea il link e non necessita di qualcosa di diverso dal saa7134 che ho ipotizzato.

Ti ringrazio gli darò senz'altro un'occhiata.

palmy
15-10-2008, 10:19
Sono riuscito a risolvere utilizzando in parte la guida e sfruttando la possibilità di udev di creare file personalizzati dei roules.