MSI P15

This article or section does not follow the
Laptop page guidelines
.
Reason:
Lacks function keys table (Discuss in
Talk:MSI P15
)
This laptop may also be known as Prestige 15 or A10SC
Hardware
PCI/USB ID
Working?
Touchpad
06cb:cdaa
Yes
Keyboard
–
Yes
GPU (Intel)
8086:9bca
Yes
GPU (NVIDIA)
10de:1f91
Yes
Thunderbolt
8086:15eb
Untested
Wi-Fi
8086:02f0
Yes
Bluetooth
8087:0026
Yes
Webcam
5986:211c
Yes
Card reader
10ec:5250
Yes
Fingerprint reader
06cb:009b
No
Installation
Secure Boot
needs to be disabled at first startup, but it can be configured later. This laptop supports keys reset to factory and custom keys install.
This laptop has
advanced UEFI settings
if desired.
Wi-Fi
Sometimes the wireless card gets stuck on startup and needs reset, which can also be accomplished by reloading iwlwifi, iwlmvm and restarting wpa_supplicant.
Function keys
All the function keys should work out of the box, except
Fn12
,
Fn4
,
Fn5
and
Fn7
. The latter does not send an Fn input, but rather the proper
F7
key, so this can be easily assigned.
About the other Fn keys,
Fn+F4
maps as the keycode 93, so it can be assigned to its original function (touchpad toggle) with
xmodmap
:
~/.Xmodmap
keycode  93 = XF86TouchpadToggle NoSymbol XF86TouchpadToggle
About
Fn5
and
Fn12
, these send a keycode, and needs to be configured as described in
Map scancodes to keycodes
using
udev
instead of
setkeycodes
, as the latter does not seem to work properly. This is achieved modifying the file
/lib/udev/hwdb.d/60-keyboard.hwdb
or otherwise, adding at the end of the
# Micro-Star
section the followings:
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*A10SC*:pvr*
 KEYBOARD_KEY_f1=f20
 KEYBOARD_KEY_f2=f21
The microphone mute button should now work out of the box, but the rotate screen one does need a script that toggles the rotation. This can be accomplished by this script
This article or section needs expansion.
Reason:
xrandr
only works on X11. On Wayland you need something like
gnome-randr
or
kscreen-doctor
, or whatever the equivalent for your compositor. (Discuss in
Talk:MSI P15
)
toggle_rotation.sh
#!/bin/sh
# This shell script is PUBLIC DOMAIN. You may do whatever you want with it.

TOGGLE=/tmp/.toggle

if [ ! -e $TOGGLE ]; then
    touch $TOGGLE
    xrandr -o inverted
else
    rm $TOGGLE
    xrandr -o normal
fi
which will need to be saved somewhere with execution permissions, then added to the shortcut menu in the currently used Desktop Environment and lastly enabled to be triggered by
Fn12
. Afterwards,
update the hardware database index
.
Home and End buttons
These buttons are mapped to
AltGr+PgUp
and
AltGr+PgDown
respectively. A helpful solution is to modify the current layout in
/usr/share/X11/xkb/symbols/$LAYOUT
, where LAYOUT is the current keyboard layout. This is accomplished by writing the following two lines in the default section of the file:
key <PGUP>  { [     Prior,      Prior,         Home,    Home      ] };
   key <PGDN>  { [      Next,       Next,          End,    End       ] };
Fingerprint reader
The fingerprint sensor implementation is not currently functioning but there are some promising projects.
python-validity
and
pam-validity
.
There is also the
Validity90
project on GitHub to port the Synaptics
06cb:009b
device to Linux - but this project has not seen work in years.
Hibernation
If after hibernation the laptop does not power off but reboots, it is necessary to modify
/etc/systemd/sleep.conf
to the following:
/etc/systemd/sleep.conf
HibernateMode=shutdown