Keyboard

Redragon Asura USB 鍵盤將所有 Ctrl、Alt、Win 鍵映射到 Shift_L

  • August 15, 2018

狀態:這是從核心 4.18 開始修復的,有關詳細資訊,請參閱接受的答案。

我剛開始使用Redragon Asura USB 鍵盤。鍵盤在基本級別上工作,但不幸的是,所有 Ctrl、Alt 鍵和 Win 鍵都映射到左 shift 鍵,這使得它很難使用。

dmesg 輸出是

[185765.848957] input: USB Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:0C45:760B.0022/input/input50
[185765.905395] hid-generic 0003:0C45:760B.0022: input,hidraw3: USB HID v1.11 Keyboard [USB Keyboard] on usb-0000:00:14.0-3/input0
[185765.949342] input: USB Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.1/0003:0C45:760B.0023/input/input51
[185766.009474] hid-generic 0003:0C45:760B.0023: input,hiddev0,hidraw4: USB HID v1.11 Keyboard [USB Keyboard] on usb-0000:00:14.0-3/input1

我已經開始使用xev調試按鍵,並且我得到了與這些鍵完全相同的鍵映射。我可能混合了 KeyPress 和 KeyRelease 事件,但總的來說它們是相同的(見文章末尾)。

如何正確映射 Ctrl、Alt 和 Win 鍵?

左替代:

KeyRelease event, serial 36, synthetic NO, window 0x3200001,
   root 0xd7, subw 0x0, time 185237066, (307,429), root:(2272,538),
   state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
   XLookupString gives 0 bytes: 
   XFilterEvent returns: False

左鍵:

KeyPress event, serial 36, synthetic NO, window 0x3200001,
   root 0xd7, subw 0x0, time 185265721, (443,237), root:(2408,346),
   state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
   XLookupString gives 0 bytes: 
   XmbLookupString gives 0 bytes: 
   XFilterEvent returns: False

左移:

KeyRelease event, serial 36, synthetic NO, window 0x3200001,
   root 0xd7, subw 0x0, time 185303441, (436,539), root:(2401,648),
   state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
   XLookupString gives 0 bytes: 
   XFilterEvent returns: False

勝利鍵:

KeyPress event, serial 36, synthetic NO, window 0x3200001,
   root 0xd7, subw 0x0, time 185327465, (399,367), root:(2364,476),
   state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
   XLookupString gives 0 bytes: 
   XmbLookupString gives 0 bytes: 
   XFilterEvent returns: False

右 Alt:

KeyPress event, serial 36, synthetic NO, window 0x3200001,
root 0xd7, subw 0x0, time 185361768, (348,141), root:(2313,250),
   state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
   XLookupString gives 0 bytes: 
   XmbLookupString gives 0 bytes: 
   XFilterEvent returns: False

右控制:

KeyPress event, serial 36, synthetic NO, window 0x3200001,
   root 0xd7, subw 0x0, time 185401328, (598,415), root:(2563,524),
   state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
   XLookupString gives 0 bytes: 
   XmbLookupString gives 0 bytes: 
   XFilterEvent returns: False

編輯:確實,鍵盤顯示為兩個 USB 設備。我已經從 /sys/debug/kernel/hid 上傳了 HID 描述符

用於修復 Redragon Asura 鍵盤的 Linux 核心更新檔現已成為主線,並將成為核心 4.18 版本的一部分。

Num Lock 和 Caps Lock LED 未啟動(按鍵工作正常)存在一個小問題,該問題將在 4.19 中修復。

該更新檔也可以應用於 4.16 和 4.17,openSUSE 從 4.16 開始攜帶它。

我知道這個答案有點晚了,但我找到了 Swoogans 鍵盤驅動程序並為我們的目的對其進行了修改。我最近自己買了一台 Asura K501,也遇到了同樣的麻煩。請注意,我的 asura 是 2017 型號,晶片組是 0x760b 而不是 0x7603

https://bitbucket.org/vipinmohan/redragon-asura-kb-ubuntu

用這個。我的阿修羅現在工作正常

引用自:https://unix.stackexchange.com/questions/370612