Skip to content

Instantly share code, notes, and snippets.

@jumpinjackie
Last active October 31, 2025 10:35
Show Gist options
  • Select an option

  • Save jumpinjackie/436655e9edea53b5e9cd0200526d934d to your computer and use it in GitHub Desktop.

Select an option

Save jumpinjackie/436655e9edea53b5e9cd0200526d934d to your computer and use it in GitHub Desktop.
Nanote P8 Next on Linux

Fedora 42

Summary

Mostly usable if you can live without touchscreen and/or tablet mode.

Display Orientation

Boot screen and default orientation is portrait.

Can rotate the desktop in KDE settings, and login screen can match desktop orientation by going:

(Settings > SDDM > Apply Plasma Settings) on selected login screen.

However, boot screen is still portrait oriented. Tried various grub configs to get it to rotate (fbcon:rotate=1) with no luck.

Auto-Rotate

No accelerometer support, so it doesn't auto-rotate on change of orientation.

Touchscreen

Touchscreen works with the silead touchscreen driver and firmware, which you have to compile yourself (instructions below)

Touchscreen driver default settings are horribly uncalibrated and require calibration. This is where we have a hard blocker situation.

Touchscreen Calibration for Wayland

Wayland (the default) DOES NOT OFFER A GUI-BASED CALIBRATION TOOL that works in a Fedora KDE environment.

  • Supposedly you can calibrate using libinput debug mode and have to manually observe the coordinates of where you touched and math out the required transformation matrices and stuff, but I DON'T HAVE TIME to waste manually crunching numbers like that!

Touchscreen Calibration for X11

If I switch to X11, we can calibrate with xinput_calibrator, but:

Firstly, this package is not available in standard package feeds. You have to enable RPM Sphere to access this package.

Secondly, you have to run xinput_calibrator in portrait mode. Running it in landscape means the GUI is "cut off" and you can't touch calibrate the 2 bottom points it shows you.

Alternative was to use xcalibrate

git clone https://github.com/reinderien/xcalibrate
sudo dnf install xinput python3-pip
pip install -r requirements.txt
./xcalibrate 

I forgot which approach I ultimately went to have this fully calibrated in landscape mode.

Touchscreen driver fickleness

For some reason, even after having a fully calibrated touchscreen, subsequent boots where the driver has been loaded, the touchscreen will revert back to a horribly uncalibrated state until you force unload/reload the kernel module like so:

sudo rmmod gslx680_ts_acpi
sudo modprobe gslx680_ts_acpi

Issues with using X11

We will have a functional and calibrated touchscreen with X11, but that ultimately means nothing as KDE tablet mode will not present an on-screen keyboard when focused on any text input.

This is because KDE's on-screen keyboard (Maliit) DOES NOT WORK IN AN X11 SESSION. It will only work in a Wayland session, which then comes full circle back to how much of a PITA it is to calibrate the touch screen in a KDE Wayland session!!!

Also, Fedora clearly wants X11 to go away as X11 session support is something you have to opt-in by installing extra support packages.

There are some X11 on-screen keyboards available, but they are all presented as separate apps and not as something actually integrated into the desktop environment, which means such keyboards are useless in tablet mode.

So as a result, we are in a no-win situation on the tablet mode front.

You either go with Wayland and rip your hair out trying to figure out how to calibrate the touchscreen, or you go with X11 and have to live with the fact that there is no functional on-screen keyboard in tablet mode.

Which brings us to tablet mode itself. There is no hardware and/or driver support for detecing the screen has flipped back the full 360 degrees to automatically enter tablet mode.

I did not bother with investigating any further due to the Wayland/X11 impasse.

Compiling Silead Touchscreen Driver

git clone https://github.com/onitake/gsl-firmware.git
sudo mkdir -p /lib/firmware/silead
sudo cp gsl-firmware/firmware/rwc/nanote-next/firmware.fw /lib/firmware/silead/mssl0017.fw
#cp gsl-firmware/firmware/rwc/nanote-next/sileadtouch.inf_amd64_5874d9f37e5e7a24/SileadTouch.sys gsl-firmware/tools/
#cd gsl-firmware/tools/
#./scanwindrv SileadTouch.sys
#sudo ./fwtool -c firmware_00.fw -m 1680 -w 1920 -h 1200 -t 10 -f yflip /lib/firmware/silead_ts.fw
#cd ../..
sudo cp gsl-firmware/firmware/rwc/nanote-next/silead_ts.fw /lib/firmware
git clone https://github.com/onitake/gslx680-acpi.git
cd gslx680-acpi
make
sudo cp gslx680_ts_acpi.ko /lib/modules/$(uname -r)/kernel/drivers/
sudo depmod
#sudo insmod ./gslx680_ts_acpi.ko
sudo modprobe gslx680_ts_acpi

Linux Mint

Summary

Out of the box auto-rotation support was promising, but touchscreen calibration problems means this distro is also a non-starter if you desire a working touchscreen.

Display Orientation

Boot screen and default orientation is portrait.

Can rotate the desktop using xrandr. Yet to figure out how to rotate the login screen.

Boot screen is still portrait oriented. Yet to figure out if I will have the same issues as Fedora in trying to rotate the boot screen.

Auto-Rotate

Auto-rotation WORKS OUT OF THE BOX! However, the portrait orientation when auto-rotating is completely inverted.

Need to investigate how to invert the portrait orientation so that it rotates in the "same direction" properly.

Touchscreen

xinput-calibrator package was easy to install and xinput_calibrator calibrates properly in landscape mode.

git clone https://github.com/reinderien/xcalibrate
sudo apt install python3-pip python3-tk
python3 -m venv ~/nanote-venv
source ~/nanote-venv/bin/activate
pip install numpy tkinter
./xcalibrate 

Unfortunately, calibration with either xinput_calibrator and xcalibrate produces unusable calibration

Tablet Mode?

Didn't investigate further because of calibration issues above.

Debian

Summary

TBD

Display Orientation

TBD

Auto-Rotate

TBD

Touchscreen

TBD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment