Portál AbcLinuxu, 13. května 2025 19:05
Jediné, co se nemění je fyzická adresa zařízení - ta je k nalezení v /proc/bus/input/devices
(kde každé vstupní zařízení má zápis podobný následujícímu,
I: Bus=0019 Vendor=0000 Product=0001 Version=0000 N: Name="Power Button (CM)" P: Phys=PNP0C0C/button/input0 S: Sysfs=/class/input/input6 U: Uniq= H: Handlers=kbd event6 B: EV=3 B: KEY=10000000000000 0
kde je napsané i číslo eventu. Tenhle skript:
sed -n '/Phys='`echo "$PHYS" </proc/bus/input/devices | \ sed 's#/#\\\\/#g'`'/,/^$/{s#.*Handlers.*\(event[0-9]*\).*#\1#p}'
by (pokud jsem někde něco nezvoral) měl vrátit eventX
. Takže by mělo stačit potom při startu někde spustit tenhle skript a vytvořit symlink na třeba /dev/input/ir
.
Snad to pomůže...
I: Bus=0001 Vendor=107d Product=665e Version=0001 N: Name="cx88 IR (WinFast DTV2000 H)" P: Phys=pci-0000:05:07.2/ir0 S: Sysfs=/class/input/input4 U: Uniq= H: Handlers=kbd event4 B: EV=100003 B: KEY=10afc336 2150a48 0 0 0 404 80010000 190 4801 1e0000 4400 100000 10000ffcjenže já mám někdy event3 a někdy event4 mění se to s PC Speaker dost podezdřívám Ubuntu, protože má nějaké ovládání hlasitosti svoje který funguje i bez lirc.
I: Bus=0001 Vendor=107d Product=665e Version=0001 N: Name="cx88 IR (WinFast DTV2000 H)" P: Phys=pci-0000:05:07.0/ir0 S: Sysfs=/class/input/input3 U: Uniq= H: Handlers=kbd event3 B: EV=100003 B: KEY=10afc336 2150a48 0 0 0 404 80010000 190 4801 1e0000 4400 100000 10000ffc
Tak to je zvláštní, ale ten skript by měl jít přiohnout a místo hledání fyzické adresy hledat řádek Name
, který se zdá býti stejným.
name=`echo "$1" | sed 's#/#\\\\/#g'`; ev=`sed -n '/Name.*'"$name"'/,/^$/{s#.*Handlers.*\(event[0-9]*\).*#\1#p}' </proc/bus/input/devices`; #připojit za předchozí echo $ev
Pozn: jako první parametr očekává název zařízení, výstup je eventX
/dev/input/by-id
a /dev/input/by-path
proto existuji symlinky podle jmena resp. id na sbernici ke ktere je zarizeni pripojeno - ty se nemeni. Jmeno neni "nazev na krabici" ale sklada se z ruznych internich id ktere si urcuje vyrobce a casto dost osklive (treba moje klaveska ktera ma na krabici "logitech G11" dopadla jako "usb-046d_Gaming_Keyboard-event-kbd") ale to neni problem - prinejhorsim staci danou vec odpojit a podivat se co zmizi.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.