1

古い Compaq キーボードを使用していますが、その上に動作しないキー セットがあります。

xevevtestevemu-recordを試しましたが、libinput debug-eventsこれらのキーを除くすべてのキーが認識されます。

ただし、wireshark USB レコーダーをオンにすると、次のような出力が得られます。

0000   00 a8 6e e5 73 9c ff ff 42 01 82 0a 01 00 2d 00   ..o.s...C.....-.
0010   9e ab f1 5f 00 00 00 00 06 c6 03 00 00 00 00 00   ..._............
0020   06 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00   ................
0030   02 00 00 00 00 00 00 00 04 02 00 00 00 00 00 00   ................
0040   04 00 00 00 00 00                                 ......

0000   00 a8 6e e5 73 9c ff ff 42 01 82 0a 01 00 2d 00   ..o.s...C.....-.
0010   a0 ab f1 5f 00 00 00 00 66 64 01 00 00 00 00 00   ..._....fd......
0020   06 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00   ................
0030   02 00 00 00 00 00 00 00 04 02 00 00 00 00 00 00   ................
0040   04 00 00 10 00 00 

これは、キーが実際に機能することを意味し、そのためのドライバーを作成する必要があるだけです。

現在、Linuxドライバーの作成経験はありませんが、具体的linux/drivers/hid/にはgithub.com/torvalds/linuxhid-asus.cを見て、各キーストロークをそれぞれの16進値で何らかの形で識別しなければならないことを知っています.

問題は、16 進ダンプの0000,0020および行のみが同じままで、 wireshark を介して記録するたびに異なるため、どこを見ればよいかを把握できることです。00300010

これはおそらく基本的なことだと思いますが、正しい方向に向けてください。つまり、この主題について読むことができるコンテンツを提供してもらえますか、またはどのように進めるべきかについて何か考えがありますか?

からの出力evtest:

/dev/input/event12: Compaq Compaq Internet Keyboard
/dev/input/event13: Compaq Compaq Internet Keyboard Consumer Control
/dev/input/event14: Compaq Compaq Internet Keyboard System Control
/dev/input/event15: Compaq Compaq Internet Keyboard

からの出力は次のlsusbとおりです。

Bus 001 Device 010: ID 049f:000e Compaq Computer Corp. Internet Keyboard
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x049f Compaq Computer Corp.
  idProduct          0x000e Internet Keyboard
  bcdDevice            1.00
  iManufacturer           1 Compaq
  iProduct                2 Compaq Internet Keyboard
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x003b
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          2 Compaq Internet Keyboard
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower               50mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              3 Compaq Internet Keyboard
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.00
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      65
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              24
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      0 
      iInterface              4 Compaq Internet Keyboard
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.00
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     499
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0006  1x 6 bytes
        bInterval               3
Device Status:     0x0000
  (Bus Powered) 
4

0 に答える 0