입력 장치에서 입력을 디버깅하는 방법 (/ dev / input / event *)


19

imon-driver를 사용하는 IR 수신기가 있으며 커널과 작동하도록하고 싶습니다. 현재 리모콘 ( image ) 의 키 중 절반이 작동하지만 숫자 키와 같은 모든 중요한 생각은 작동하지 않습니다!

이상한 생각은 커널 키 맵 모듈 (rc-imon-pad)이 올바른 것처럼 보이지만 실제로는 동일한 키가 해당 모듈없이 작동하기 때문에 실제로 사용되지 않는 것 같습니다.

rc-imon-pad 모듈은 imon을로드 할 때 항상로드 된 다음 키 코드가 캐시되어 rc-imon-pad를 언로드해도 차이가 발생하지 않는 것으로 보입니다.

이제 어떤 키를 눌러도 데이터 가 cat /dev/input/event5있거나 없어지면 ir-keytable -t드라이버가 버튼을 등록하지만 잘못된 키 코드로 변환 된 것 같습니다.

내 커널은 Natty의 우분투 스톡 커널입니다 (Linux xbmc 2.6.37-11-generic # 25-Ubuntu SMP Tue Dec 21 23:42:56 UTC 2010 x86_64 GNU / Linux)


2
커널이 부호없는 8 비트 정수로 제한되어 있기 때문에 X가 등록하지 않는 255보다 큰 키 코드를 커널이 보내는 것이 문제인 것 같습니다. 이 이론을 테스트하기 위해 수정 된 키 코드로 커널 모듈을 다시 컴파일하고 있습니다.
LassePoulsen

1
Btw 대신에 잘 파싱 된 정보를 제공하는을 cat사용할 수 있습니다 evtest.
9000

답변:


3

나는 같은 리모컨을 가지고 있으며 2.6.38-gentoo-r3 커널에 올바른 키 코드를 보냅니다. 키 코드를 모듈로 컴파일하지 않았습니다. 아마도 개별 키맵을 선택할 수있는 시간이 없었기 때문입니다. 그것은 전부 또는 아무것도 아니며 Gazillion 쓸모없는 모듈이 나를 혼란스럽게하는 것을 좋아하지 않습니다. 대신 v4l-utils가 udev로 처리하도록합니다.

내가 배운 것들 :

  • ir-keytable -r의 출력을 확인하십시오 . 리모컨에 적용 가능한 모든 키 코드 가 나열 되어 있습니다.
  • ir-keytable -c -w bleh / keymaps / imon_pad 키 테이블을 수동으로로드하십시오.
  • 실제로 수신기에 결함이있을 수 있습니다. 기록에 대해서는 언급하지 않았습니다. lirc-list 에서 적어도 한 건의 메시지를보고 사례를 다시 보내고 새로운 사례 를 받으면 문제가 해결 된 것을 기억합니다.

어떻게되었는지 알려주십시오.


이 답변을 모두 확인 xinput test하십시오. 여기에서 매우 유용합니다. unix.stackexchange.com/a/6231/27902
Elijah Lynn

17

당신은 유용하게 사용할 수 xinput listxinput test <device>.

예를 들어

$ xinput 목록
⎡ 가상 코어 포인터 id = 2 [마스터 포인터 (3)]
core ↳ 가상 코어 XTEST 포인터 id = 4 [슬레이브 포인터 (2)]
PS ↳ SynPS / 2 Synaptics TouchPad id = 11 [슬레이브 포인터 (2)]
⎣ 가상 코어 키보드 id = 3 [마스터 키보드 (2)]
    ↳ 가상 코어 XTEST 키보드 id = 5 [슬레이브 키보드 (3)]
    ↳ 전원 버튼 id = 6 [슬레이브 키보드 (3)]
    ↳ 비디오 버스 id = 7 [슬레이브 키보드 (3)]
    ↳ 절전 버튼 id = 8 [슬레이브 키보드 (3)]
    ↳ Asus Laptop 추가 버튼 id = 9 [슬레이브 키보드 (3)]
    Translate AT Translated Set 2 keyboard id = 10 [슬레이브 키보드 (3)]

모든 종류의 입력 이벤트에 대해 키보드 ( xinput test 10) 또는 터치 패드 ( xinput test 11, 또는 )를 모니터링 할 수 있으며 xinput test "SynPS/2 Synaptics TouchPad"콘솔에 꽤 인쇄되고 매개 변수도 추출 및 인쇄됩니다.

이렇게하면 문제가 해결되지 않지만 최소한 cat /dev/input/event1생성 하는 혼란을 해독하여 조금 도움이 될 것 입니다.


1
정말 고맙습니다! 이 답변을 바탕으로 키보드 감지기 를 만들었습니다 .
l0b0
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.