xpl_happy_pedals
Toto je starší verze dokumentu!
Happy pedals XPL issue
- X-Plane od 10.10 nepoužívá linuxové rozhraní /dev/input/jsX.
- protože js rozhraní omezuje: podléhá kalibraci, zavádí například null zóny atd…
- Místo toho /dev/input/eventX
- vyžaduje oprávnění na eventX
- stačí chmod o+r
- machři to dělají přes udev rule
- eventX lze identifikovat podle id nebo path, podle id takto:
Pharaon:/dev/input/by-id# ls -la /dev/input/by-id/ celkem 0 drwxr-xr-x 2 root root 240 zář 3 21:04 . drw-rw-r-x 4 root root 320 zář 3 20:49 .. lrwxrwxrwx 1 root root 9 zář 3 20:49 usb-Arduino_LLC_Arduino_Leonardo-event-if02 -> ../event7 lrwxrwxrwx 1 root root 9 zář 3 19:47 usb-Logitech_Gaming_Mouse_G300-event-mouse -> ../event2 lrwxrwxrwx 1 root root 9 zář 3 19:47 usb-Logitech_Gaming_Mouse_G300-if01-event-kbd -> ../event3 lrwxrwxrwx 1 root root 9 zář 3 19:47 usb-Logitech_Gaming_Mouse_G300-mouse -> ../mouse0 lrwxrwxrwx 1 root root 9 zář 3 19:47 usb-Logitech_Logitech_Extreme_3D-event-joystick -> ../event6 lrwxrwxrwx 1 root root 6 zář 3 19:47 usb-Logitech_Logitech_Extreme_3D-joystick -> ../js0 lrwxrwxrwx 1 root root 9 zář 3 19:47 usb-Logitech_USB_Keyboard-event-if01 -> ../event5 lrwxrwxrwx 1 root root 9 zář 3 19:47 usb-Logitech_USB_Keyboard-event-kbd -> ../event4
- eventX lze číst přes evtest nástroj
- příklad logitech:
zkoumání xpl
- jak X-Plane zjístí seznam events?
- on ví, že jich je max 32, tak to prostě zkusí
strace /opt/X-Plane\ 10/X-Plane-x86_64 2>&1 | grep -i "/dev/input"
open("/dev/input/event0", O_RDONLY) = 20
open("/dev/input/event1", O_RDONLY) = 20
open("/dev/input/event2", O_RDONLY) = 20
open("/dev/input/event3", O_RDONLY) = 20
open("/dev/input/event4", O_RDONLY) = 20
open("/dev/input/event5", O_RDONLY) = 20
open("/dev/input/event6", O_RDONLY) = 20
open("/dev/input/event7", O_RDONLY) = 28
open("/dev/input/event8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event9", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event10", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event11", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event12", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event13", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event14", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event15", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event16", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event17", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event18", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event19", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event20", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event21", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event22", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event23", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event24", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event25", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event26", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event27", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event28", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event29", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event30", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/input/event31", O_RDONLY) = -1 ENOENT (No such file or directory)
- podle čeho se rozhodne, že se mu eventX líbí?
xpl_happy_pedals.1441309480.txt.gz · Poslední úprava: (upraveno mimo DokuWiki)
