Ich habe Ubuntu 14.04 installiert und ich liebe es. Als ich jedoch ein Spiel namens Garry’s Mod spielte, bemerkte ich, dass mein CTRL und ALT Tasten auf meiner kabelgebundenen Tastatur wurden beide als Shift erkannt . Ich habe mir die Tastaturlayouttabelle angesehen und dies bestätigt. Mir ist auch aufgefallen, dass mein Windows oder Super Taste, Rechts STRG und Rechts ALT werden alle auf Left Shift gemappt .
Sie funktionieren alle perfekt, sie werden nur falsch erkannt. Ich habe das US-Layout ausgewählt, das meine Tastatur sein soll und in Windows ist. Kann jemand helfen? Meine Tastatur wird als SONiX USB-Tastatur erkannt (die eigentliche Tastaturmarke ist Avazz).
-
meine
xev -event keyboard
Ausgabe ist dies für jeden einzelnen:KeyRelease event, serial 28, synthetic NO, window 0x4a00001, root 0xdc, subw 0x0, time 2446369, (730,547), root:(795,599), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False
Das einzige, was sich ändert, ist die Uhrzeit.
-
Der
ansudo evtest
Der Befehl zeigt alle Zusatztasten alstype 4 (EV_MSC), code 4 (MSC_SCAN), value 700e1v type 1 (EV_KEY), code 42 (KEY_LEFTSHIFT), value 0
-
für
lsusb
, der verwendete Treiber istusbhid
Fahrer.lsusb
zeigt etwas Verwirrendes; Derselbe Port, den meine Tastatur in anderen Befehlen anzeigt, wird inlsusb
angezeigt als Treiber meiner kabellosen Maus,Logitech, Inc. Unifying Receiver
. Dies kann das Problem sein, aber ich irre mich wahrscheinlich einfach in dem Port, auf dem es sich befindet. Aus diesem Grund bin ich mir nicht sicher, welcher Treiber was ist. Ich werde sie alle posten, obwohl dies ärgerlich sein könnte. Ich habe neben meiner Haupttastatur eine separate Tastatur angeschlossen, um CTRL zu verwenden , Super , oder ALT Lassen Sie sich übrigens nicht vom Logitech Classic Keyboard Driver verwirren.Bus 001 Device 009: ID 0bda:8172 Realtek Semiconductor Corp. RTL8191SU 802.11n WLAN Adapter Bus 001 Device 008: ID 046d:c315 Logitech, Inc. Classic Keyboard 200 Bus 001 Device 007: ID 1a40:0101 Terminus Technology Inc. 4-Port HUB Bus 001 Device 006: ID 0480:0200 Toshiba America Info. Systems, Inc. Bus 001 Device 004: ID 0c45:6340 Microdia Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 004: ID 0d8c:013c C-Media Electronics, Inc. CM108 Audio Controller Bus 002 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 002 Device 002: ID 0c45:7603 Microdia Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Für
lsusb -t
, der verwendete Treiber istusbhid
. -
for i in $(ls /sys/module/usbhid/parameters/); do echo -ne "$it"; more /sys/module/usbhid/parameters/$i; done
ist:ignoreled 0 mousepoll 0 quirks (null),(null),(null),(null)
-
Ich glaube nicht, dass Sie das brauchen, da ich sagte, es ist
usbhid
, aber hier ist es trotzdem.for i in $(ls /sys/module/hid/parameters/); do echo -ne "$it"; more /sys/module/hid/parameters/$i; done
Ausgabe.debug 0
ignore_special_drivers 0 -
modinfo usbhid
Die Ausgabe ist:filename: /lib/modules/3.18.3-031803-generic/kernel/drivers/hid/usbhid/usbhid.ko license: GPL description: USB HID core driver author: Jiri Kosina author: Vojtech Pavlik author: Andreas Gal srcversion: A395FA22EA2729BAC1557C9 alias: usb:v*p*d*dc*dsc*dp*ic03isc*ip*in* depends: hid intree: Y vermagic: 3.18.3-031803-generic SMP mod_unload modversions signer: Magrathea: Glacier signing key sig_key: 29:DB:FD:FC:5A:CC:82:3C:C5:2C:39:4C:C1:C7:4C:01:C3:BE:BF:78 sig_hashalgo: sha512 parm: mousepoll:Polling interval of mice (uint) parm: ignoreled:Autosuspend with active leds (uint) parm: quirks:Add/modify USB HID quirks by specifying quirks=vendorID:productID:quirks where vendorID, productID, and quirks are all in 0x-prefixed hex (array of charp)
-
cat /sys/kernel/debug/usb/usbmon/2u > /tmp/usb.mon.out
sagt mir, dass ich nicht gefunden wurde, obwohl ich2
geändert habe zu meiner Bus-ID. Was mache ich hier falsch? Klären Sie, wenn Sie bitte können, etwas verwirrt. Ich habe versucht,2
zu setzen ,02
und002
. Die Ausgabe vonsudo ls /sys/kernel/debug/usb/usbmon/
ist0s 0u 1s 1t 1u 2s 2t 2u
Akzeptierte Antwort:
Meine Tastatur ist eine Perixx P1800. Es hat die gleiche Lsusb-Kennung (0c45:7603 Microdia)
Anscheinend verwendet es auch das gleiche Board wie die azio L70-Tastatur.
Der Linux-Treiber für die Tastatur wurde von Hand erstellt und ist unter dieser Adresse erhältlich.
Unter Debian funktioniert es für mich sehr gut (nach update-initramfs
) mit Ausnahme einer einzelnen Taste in der Nähe von Enter (* auf der Azerty-Tastatur funktioniert das * der Tastatur gut).