USB 장치의 폴링 속도 수정

USB 장치의 폴링 속도 수정

이 비디오폴링 속도를 높이면 게임 컨트롤러의 평균 입력 지연이 어떻게 줄어드는지 보여줍니다. 안타깝게도 폴링률을 수정하는 데 사용되는 소프트웨어는 다음과 같습니다.히두스버프그리고 Windows에만 해당됩니다. 내가 찾은gcadapter-oc-kmodLinux에서 GameCube 어댑터의 폴링 속도를 높이는 데 사용할 수 있지만 USB 장치의 폴링 속도를 수정하는 방법을 알고 싶습니다.

답변1

먼저, 장치가 어떤 드라이버를 사용하는지 알아내야 합니다. HID USB 마우스, 키보드 및 조이스틱의 경우 드라이버 usbhid에는 자체 매개변수 mousepollkbpoll가 있습니다 jspoll. 이들 매개변수의 값은 폴링 주기(T)를 밀리초 단위로 결정하는 숫자이며, 이는 폴링 속도(f)에 반비례하고 2의 거듭제곱으로 반올림됩니다. 따라서 폴링 속도가 250Hz이면 4로 설정하고, 폴링 속도가 125Hz이면 8로 설정하고, 폴링 속도가 1kHz이면 1로 설정하는 식으로 진행됩니다. 이 매개변수가 0(기본값)으로 설정되면 드라이버는 HID 장치가 최적의 폴링 속도를 결정하도록 합니다.

실행 중인 시스템에서 이 매개변수를 변경하려면 다음 명령을 실행하십시오(루트 액세스 필요) modprobe -r usbhid && modprobe usbhid mousepoll=1 kbpoll=2 jspoll=4. 첫 번째 부분은 usbhid드라이버를 언로드하고 두 번째 부분은 지정된 매개변수를 사용하여 드라이버를 로드합니다(관심하지 않는 매개변수는 무시해도 됩니다). 두 번째 명령이 실패하면 입력 장치에 대한 액세스 권한을 잃게 될 수 있습니다(복구 옵션은 재부팅, 시스템에 대한 원격 액세스 또는 PS/2 키보드/마우스 사용). 이러한 변경 사항을 유지하려면 비슷한 options usbhid mousepoll=1 kbpoll=2 jspoll=4줄을 추가 /etc/modprobe.d/usbhid.conf하거나 비슷한 매개 변수를 커널 명령줄에 추가하세요.usbhid.mousepoll=1 usbhid.kbpoll=2 usbhid.jspoll=4

그러나 장치가 HID 장치가 아닌 경우(GameCube 어댑터의 경우처럼) 드라이버는 해당 매개변수를 사용자에게 노출하지 않을 수 있습니다. 이 경우 드라이버 소스 코드의 값을 수정하고 다시 컴파일해야 합니다.

관련 정보