Steam은 조이스틱을 사용할 때만 evdev 드라이버를 지원하므로 "wii-u-gc-adapter" 도구를 사용하여 Steam Work에서 잘 작동하는 멋진 wii u "usb 어댑터"와 2개의 게임큐브 컨트롤러를 갖게 되었습니다.
나는 또한 (에뮬레이터와 함께) 잘 작동하는 2개의 Wiimotes(클래식 컨트롤러와 함께)를 가지고 있지만, 이전 조이스틱 API에서는 /dev/input/js0
in 및 out 에 2개의 파일(조이스틱당)을 생성하는 일이 발생했습니다 /dev/input/event11
.
"hid-wiimote" 모듈(이론적으로는 evdev wiimote 드라이버)을 설치했지만 sdl2-jstest 유틸리티(sdl2-jstest --list)를 사용하지 않아도 여전히 Steam에서 인식되지 않지만 " evtest"가 있습니다 /dev/input/event11
. /dev/input/by-id/
또는 에 심볼릭 링크가 없습니다 /dev/input/by-path
.
요점은 이러한 API 간에 변경을 강제할 수 있는 방법이 있는지 알고 싶다는 것입니다. 어떤 아이디어라도 크게 감사하겠습니다.
답변1
Joystick API의 커널 모듈을 블랙리스트에 올려서 제거할 수 있었습니다. 커널 모듈을 제거하려면
실행하세요 . 로드되지 않았는지 확인하세요. 아무 것도 인쇄되어서는 안 됩니다. 모듈이 로드되지 않도록 블랙리스트에 추가하세요. Now 에 줄을 추가하세요 . 게임패드를 연결하면 /dev/input/by-id에 evdev의 API 장치만 표시되어야 합니다.sudo rmmod joydev
lsmod | grep joydev
blacklist joydev
/etc/modprobe.d/blacklist.conf
그러나 이는 올바른 접근 방식이 아닌 것 같습니다. 그 이유는 Steam과 Chrome에서 게임패드를 감지하는 데 문제가 있었기 때문입니다.