Seltsames Verhalten der Funktionstasten Fn im MSI Creator unter Ubuntu 23.04

Seltsames Verhalten der Funktionstasten Fn im MSI Creator unter Ubuntu 23.04

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 -kerkennt 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-kbdgibt 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, showkeyregistriert aber nichts und dmesgprotokolliert einen Fehler, manche Tasten erzeugen Unknown event received, manche Unknown key pressed, manche beides.

udevadm infoweist offenbar darauf hin, dass die Tastatur falsch erkannt wurde (da die Ausgabe E: KEYBOARD_KEY_f9=searchbeispielsweise 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 updateund 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 camerain !cameraoder andere Hex-Tasten anstelle von KEYBOARD_KEY_ee, aber es hat scheinbar nichts geändert.

Da weder showkey -knoch dmesgmir 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 evtestBefehl 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

verwandte Informationen