GPD MicroPC 2
Hardware | PCI/USB ID | Working? |
---|---|---|
GPU (N250) | Untested | |
GPU (N300) | 8086:46d0 |
Yes |
Ethernet | 10ec:8125 |
Yes |
Wi-Fi | 8086:54f0 |
Yes |
Bluetooth | 8087:0026 |
Yes |
Audio | 8086:54c8 |
Yes |
Display | Yes | |
Touchpad | 36b6:c001 |
Yes |
Touchscreen | 222a:fff1 |
Yes |
Fingerprint sensor | No | |
SD card reader | 8086:54c4 |
Yes |
This page provides information for the GPD MicroPC 2.
Specifications
Only two variants exist so far; N250 and N300. Other specifications should be identical.
N250/N300
- Display: 7" 1920x1080
- CPU: Intel N250 or N300
- RAM: 16GB LPDDR5 4800 MT/s
- Storage: 512GB NVMe SSD PCIe Gen 3 2280
- Network: 2.5Gbps Ethernet, Intel AX201 802.11ax (2.4/5Ghz), Bluetooth 5.2
Firmware
fwupd is not supported on the GPD MicroPC 2. GPD provides firmware updates via Windows executables.
See https://www.gpd.hk/gpdmicropc2firmwaredriver for the files and Windows PE for instructions on how to make a bootable Windows environment to apply the updates.
The only real thing of relevance here for the laptop will be the BIOS, the executable of which can be extracted and then in your WinPE where you would simply run the .bat file to update BIOS.
Recommendations
It is highly recommended you use Wayland for this laptop and not X11, as Wayland will give a better end result and need less tweaking.
Please note that while the fixes provided below were originally created whilst using Wayland and GNOME under Arch, there is no guarantee of all of them working on other distributions or desktop environments.
All sections are worth reading, some of which highlight issues found. If the section does not exist it either works, or no issue has been found.
Display
The MicroPC 2 display is designed for portrait devices and is rotated by 90 degrees counter-clockwise by default. This can be solved by adding the following kernel parameters:
fbcon=rotate:1 video=DSI-1:panel_orientation=right_side_up
The first parameter (fbcon
) will fix console rotation. The second (video
) rotates other graphical elements including Plymouth, Wayland, and GDM to the correct, landscape orientation.
Some login managers will need manually tweaking in addition.
Automatic screen rotation
iio-sensor-proxy is needed.
Wayland
Under GNOME, the Screen Rotate extension from here is needed−and if you open up your extensions settings, you can change the offset. Needs to be set to 1.
X11
Ensure you have xorg-xinput
Create a script and run it on startup.
$HOME/Documents/Scripts/Auto-Rotate.sh
#!/bin/bash DEVICE="ILTP7807:00 222A:FFF1" DISPLAYNAME="DSI-1" monitor-sensor | while read -r line; do case "$line" in *normal*) xrandr --output $DISPLAYNAME --rotate normal xinput set-prop "$DEVICE" "Coordinate Transformation Matrix" 1 0 0 0 1 0 0 0 1 ;; *left-up*) xrandr --output $DISPLAYNAME --rotate left xinput set-prop "$DEVICE" "Coordinate Transformation Matrix" 0 -1 1 1 0 0 0 0 1 ;; *right-up*) xrandr --output $DISPLAYNAME --rotate right xinput set-prop "$DEVICE" "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1 ;; *bottom-up*) xrandr --output $DISPLAYNAME --rotate inverted xinput set-prop "$DEVICE" "Coordinate Transformation Matrix" -1 0 1 0 -1 1 0 0 1 ;; esac done
Ensure you mark it as executable.
X11 screen tearing
Due to the display being designed for portrait devices, the device experiences vertical screen tearing. This can be solved by ensuring xf86-video-intel is installed and following the instructions in Intel graphics#Tearing.
Touchscreen
The touchscreen is an Ilitek ILTP7807.
BIOS 2.16 or later is needed for it to work on Linux.
Currently the touchscreen will turn off when you wake the laptop from sleep, but not turn back on when awaken. This can be fixed by running the following:
# echo -n "i2c-ILTP7807:00" > /sys/bus/i2c/drivers/i2c_hid/unbind # echo -n "i2c-ILTP7807:00" > /sys/bus/i2c/drivers/i2c_hid/bind
Wayland
Under GNOME, no further modification is needed and seems to work fully.
X11
Touchscreen controls are very limited for X11.
/etc/X11/xorg.conf.d/99-touchscreen-matrix.conf
Section "InputClass" Identifier "rotate ILTP7807 touchscreen" Driver "libinput" MatchProduct "ILTP7807:00 222A:FFF1" Option "TransformationMatrix" "0 1 0 -1 0 1 0 0 1" EndSection
Then logout or restart for changes to apply.
Touchpad and mouse buttons
Wayland
The right mouse button can be fixed by adding a quirk to libinput:
/etc/libinput/local-overrides.quirks
[ALPS touchpad with external buttons] MatchName=ALPS0001:00 36B6:C001 Touchpad MatchUdevType=touchpad MatchDMIModalias=dmi:*svnGPD:pnG1688-08:* # Drop the "buttonpad" property so libinput treats it as a normal touchpad AttrInputProp=-INPUT_PROP_BUTTONPAD
X11
Install xf86-input-synaptics.
/etc/X11/xorg.conf.d/99-alps-touchpad.conf
Section "InputClass" Identifier "ALPS touchpad" MatchProduct "ALPS0001:00 36B6:C001 Touchpad" Driver "synaptics" Option "ClickPad" "false" Option "TapButton1" "1" Option "TapButton2" "3" Option "TapButton3" "2" EndSection
Then re-log.
Wi-Fi
Currently while Wi-Fi does work, there are reports of the driver crashing.
Fingerprint sensor
A Microarray MAFP8800 is used in the MicroPC 2. Currently there appears to be no driver for this on Linux (or any Microarray fingerprint sensor).
Additional features
Charging control
The MicroPC 2 features threshold charging to limit max charging to preserve the batteries health. You can set this in the BIOS under Main > OEM System Configuration.
It also has a bypass feature, allowing it to run from the mains without stressing the battery.
BIOS reset
There is a pinhole BIOS reset button on the left hand side of the device.