Ich habe derzeit Probleme mit den Funktionstasten auf meinem MSI Creator 17 B11UG. Mit jedem Ubuntu-Update (aktuell 23.04) ist es schlimmer geworden und ich habe ein besonderes Interesse daran, die Webcam wieder zum Laufen zu bringen, da sie anscheinend einfach im „Hardware deaktiviert“-Zustand hängen geblieben ist. Einige Funktionstasten funktionieren (Stummschaltung, Lautstärke hoch/runter, Tastaturbeleuchtung), andere funktionieren nach dem Upgrade nicht mehr, einige protokollieren Fehler in dmesg und einige funktionieren, werden aber nicht registriert showkey -k
. Die detaillierte Tabelle mit Beschreibung, wie sich Funktionstasten derzeit verhalten:
Beschreibungstabelle für Fn-Tastenprobleme
Aktualisierung:Ich habe zunächst eine Markdown-Tabelle erstellt, die in der Vorschau sehr gut aussah, beim Posten aber aus irgendeinem Grund durcheinander geriet, sodass ich stattdessen ein Bild erstellt habe.
showkey -k
erkennt absolut dieselben Codes, wenn Funktionstasten allein oder zusammen mit der Fn-Taste gedrückt werden. Ich habe auch die BIOS-Einstellungen überprüft und es gibt keine Einstellung, die die Funktionsweise der Fn-Tasten ändert.
sudo udevadm info /dev/input/by-path/platform-i8042-serio-0-event-kbd
gibt mir diese Ausgabe:
P: /devices/platform/i8042/serio0/input/input3/event3
M: event3
R: 3
U: input
D: c 13:67
N: input/event3
L: 0
S: input/by-path/platform-i8042-serio-0-event-kbd
E: DEVPATH=/devices/platform/i8042/serio0/input/input3/event3
E: DEVNAME=/dev/input/event3
E: MAJOR=13
E: MINOR=67
E: SUBSYSTEM=input
E: USEC_INITIALIZED=5374008
E: KEYBOARD_KEY_a0=mute
E: KEYBOARD_KEY_ae=volumedown
E: KEYBOARD_KEY_b0=volumeup
E: KEYBOARD_KEY_b2=www
E: KEYBOARD_KEY_c2=ejectcd
E: KEYBOARD_KEY_df=sleep
E: KEYBOARD_KEY_e2=bluetooth
E: KEYBOARD_KEY_e4=f21
E: KEYBOARD_KEY_ec=email
E: KEYBOARD_KEY_ee=camera
E: KEYBOARD_KEY_f6=wlan
E: KEYBOARD_KEY_f7=brightnessdown
E: KEYBOARD_KEY_f8=brightnessup
E: KEYBOARD_KEY_f9=search
E: ID_INPUT=1
E: ID_INPUT_KEY=1
E: ID_INPUT_KEYBOARD=1
E: ID_BUS=i8042
E: ID_SERIAL=noserial
E: ID_PATH=platform-i8042-serio-0
E: ID_PATH_TAG=platform-i8042-serio-0
E: XKBMODEL=pc105
E: XKBLAYOUT=us,ru
E: XKBVARIANT=,
E: XKBOPTIONS=grp:alt_shift_toggle,lv3:ralt_alt,compose:caps,terminate:ctrl_alt_bksp,grp_led:scroll
E: BACKSPACE=guess
E: LIBINPUT_DEVICE_GROUP=11/1/1:isa0060/serio0
E: DEVLINKS=/dev/input/by-path/platform-i8042-serio-0-event-kbd
E: TAGS=:power-switch:
E: CURRENT_TAGS=:power-switch:
Alle Diagnosemittel (siehe Tabelle oben) liefern mir scheinbar widersprüchliche Ergebnisse, zB funktioniert F8 und ändert die Tastaturbeleuchtung, showkey
registriert aber nichts und dmesg
protokolliert einen Fehler, manche Tasten erzeugen Unknown event received
, manche Unknown key pressed
, manche beides.
udevadm info
weist offenbar darauf hin, dass die Tastatur falsch erkannt wurde (da die Ausgabe E: KEYBOARD_KEY_f9=search
beispielsweise Folgendes enthält und ich diese Taste nicht habe). Daher habe ich Folgendes ausprobiert /lib/udev/hwdb.d
:
Ich habe bearbeitet /lib/udev/hwdb.d/90-keyboard-ubuntu.hwdb
:
# Dell G16 microphone mute
evdev:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnDellG16*:*
KEYBOARD_KEY_100150=f20
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*pnCreator17B11UG*:*
KEYBOARD_KEY_ee=camera # Fn+F6 camera disable
Ich habe nämlich die letzten beiden Zeilen hinzugefügt, alles andere war vorher da. Dann habe ich die Änderungen angewendet: systemd-hwdb update
und udevadm trigger --verbose --sysname-match="event*"
. Danach hat sich am Verhalten der F6-Taste scheinbar nichts geändert. Ich habe auch einige andere zufällige Dinge ausprobiert, wie zum Beispiel die Änderung camera
in !camera
oder andere Hex-Tasten anstelle von KEYBOARD_KEY_ee
, aber es hat scheinbar nichts geändert.
Da weder showkey -k
noch dmesg
mir einen Hinweis darauf gaben, was der tatsächliche Hex-Wert der Taste F6 war, habe ich Folgendes versucht sudo evtest
:
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Lid Switch
/dev/input/event1: Sleep Button
/dev/input/event10: HDA NVidia HDMI/DP,pcm=7
/dev/input/event11: HDA NVidia HDMI/DP,pcm=8
/dev/input/event12: HDA NVidia HDMI/DP,pcm=9
/dev/input/event13: Video Bus
/dev/input/event14: Video Bus
/dev/input/event15: sof-hda-dsp Mic
/dev/input/event16: sof-hda-dsp Headphone
/dev/input/event17: sof-hda-dsp HDMI/DP,pcm=3
/dev/input/event18: sof-hda-dsp HDMI/DP,pcm=4
/dev/input/event19: sof-hda-dsp HDMI/DP,pcm=5
/dev/input/event2: Power Button
/dev/input/event3: AT Translated Set 2 keyboard
/dev/input/event4: SynPS/2 Synaptics TouchPad
/dev/input/event5: FX-2
/dev/input/event6: FX-2 Keyboard
/dev/input/event7: MSI WMI hotkeys
/dev/input/event8: gpio-keys
/dev/input/event9: HDA NVidia HDMI/DP,pcm=3
Select the device event number [0-19]: 7
Input driver version is 1.0.1
Input device ID: bus 0x19 vendor 0x0 product 0x0 version 0x0
Input device name: "MSI WMI hotkeys"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 113 (KEY_MUTE)
Event code 114 (KEY_VOLUMEDOWN)
Event code 115 (KEY_VOLUMEUP)
Event code 148 (KEY_PROG1)
Event code 149 (KEY_PROG2)
Event code 224 (KEY_BRIGHTNESSDOWN)
Event code 225 (KEY_BRIGHTNESSUP)
Event code 240 (KEY_UNKNOWN)
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Properties:
Testing ... (interrupt to exit)
^C
Es wurde erkannt /dev/input/event7: MSI WMI hotkeys
, aber beim tatsächlichen Testen, als ich nacheinander alle Funktionstasten drückte (mit oder ohne Fn-Taste), wurde überhaupt keine Ausgabe ausgegeben. Mit der normalen Tastatur funktioniert es jedoch.
Ich würde mich über jeden Ratschlag freuen, wie ich das Problem weiter untersuchen oder sogar beheben kann. Als Workaround bin ich auch an Ihren Vorschlägen interessiert, wie ich meine Webcam alternativ aktivieren kann (d. h. das Drücken von Fn + F6 auf andere Weise nachahmen oder so ähnlich).
Antwort1
Ich verwende Creator 17 2020. Ubuntu 22.04:
Als ich den sudo evtest
Befehl auf meinem MSI ausführte, entdeckte ich, dass
event7: MSI WMI-Hotkeys – zeigt keine Tastencodes an
event4: AT Translated Set 2 Tastatur wird den Trick machen - zeigt Ihnen Tastencodes