Linux (Lubuntu) with OneMix3S

Overview

I bought OneMix3S about a month ago and installed and used Linux (Lubuntu), but after trial and error, I will share the calm Linux settings and addictive points.

Settings required at the time of installation

BIOS

If you install using a USB memory, you may need to change the settings to make the BIOS recognize the USB memory. If Boot> USB Support on the BIOS Setup screen is other than Full Initial, you can select the USB memory as the boot device by changing it to Full Initial.

Keyboard layout

It may be obvious to those who use an alphabetic keyboard, but the keyboard layout should be US. If you select Japanese during installation, JP will be the default, but I had a lot of trouble entering the result of installing as it is without thinking about anything at first. .. ..

Post-installation settings

Screen display

Immediately after installation, there are two problems: (1) the screen is rotated 90 degrees to the right and displayed (2) the screen display is too fine to see. To deal with this, make the following settings.

(1) Screen rotation

Change it in the X setting.

/etc/X11/xorg.conf.d/90xrandr.conf (If the file name is * .conf, you can use another one)

Section "Monitor"
    Identifier "eDP-1"
    Option     "Rotate"  "Left"
EndSection

"EDP-1" specified in Identifier is the identifier of the screen recognized by X, and can be confirmed by the xrandr command. Install it with sudo apt install xrandr before using it.

user@onemix3s:~$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 16384 x 16384
eDP-1 connected primary 1280x800+0+0 left (normal left inverted right x axis y axis) 113mm x 181mm
   1600x2560     55.92*+
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-2 disconnected (normal left inverted right x axis y axis)
user@onemix3s:~$ 

(2) Change screen resolution

I couldn't find a way to change it in the X settings, so I fixed it by changing the settings in my X display manager (LightDM in Lubuntu).

Create the following two files so that the command to scale with xrandr will be executed when LightDM is started.

[SeatDefaults]
display-setup-script=/etc/lightdm/lightdm.conf.d/display.sh
#!/bin/bash
xrandr --output eDP-1 --scale 0.5x0.5

The scale is used to specify the resolution scaling factor. In the above, it is set to 0.5 times (that is, the actual resolution is 1280x800), but you can change it if you like.

touch screen

In addition to the screen display rotation settings, you also need to set the touch screen input coordinate rotation settings. This is done in the X settings as follows:

Section "InputClass"
	Identifier	"calibration"
	MatchProduct	"GXTP7386:00 27C6:0113"
	Option	"CalibrationMatrix"	"0 -1 1 1 0 0 0 0 1"  # unless it was already set
EndSection

The input device name recognized by X (Linux) is specified by MatchProduct and can be obtained by the xinput command. This can also be installed with sudo apt install.

user@onemix3s:~$ xinput
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ HAILUCK CO.,LTD USB KEYBOARD Mouse      	id=11	[slave  pointer  (2)]
⎜   ↳ GXTP7386:00 27C6:0113 UNKNOWN           	id=16	[slave  pointer  (2)]
⎜   ↳ GXTP7386:00 27C6:0113                   	id=15	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ Power Button                            	id=6	[slave  keyboard (3)]
    ↳ Power Button                            	id=8	[slave  keyboard (3)]
    ↳ Sleep Button                            	id=9	[slave  keyboard (3)]
    ↳ HAILUCK CO.,LTD USB KEYBOARD            	id=10	[slave  keyboard (3)]
    ↳ HAILUCK CO.,LTD USB KEYBOARD System Control	id=12	[slave  keyboard (3)]
    ↳ HAILUCK CO.,LTD USB KEYBOARD Consumer Control	id=13	[slave  keyboard (3)]
    ↳ HAILUCK CO.,LTD USB KEYBOARD Wireless Radio Control	id=14	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=18	[slave  keyboard (3)]
    ↳ Video Bus                               	id=7	[slave  keyboard (3)]
    ↳ GXTP7386:00 27C6:0113 Keyboard          	id=17	[slave  keyboard (3)]

If you want to make sure that the specified device is a touch screen, you may want to use the evtest command to display only the events from the specified device. This can also be installed with sudo apt install.

user@onemix3s:~$ 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/event2:	Power Button
/dev/input/event3:	Power Button
/dev/input/event4:	AT Translated Set 2 keyboard
/dev/input/event5:	HAILUCK CO.,LTD USB KEYBOARD
/dev/input/event6:	HAILUCK CO.,LTD USB KEYBOARD Mouse
/dev/input/event7:	HAILUCK CO.,LTD USB KEYBOARD System Control
/dev/input/event8:	HAILUCK CO.,LTD USB KEYBOARD Consumer Control
/dev/input/event9:	HAILUCK CO.,LTD USB KEYBOARD Wireless Radio Control
/dev/input/event10:	GXTP7386:00 27C6:0113
/dev/input/event11:	GXTP7386:00 27C6:0113 UNKNOWN
/dev/input/event12:	GXTP7386:00 27C6:0113 Keyboard
/dev/input/event14:	Video Bus
/dev/input/event15:	HDA Intel PCH Mic
/dev/input/event16:	HDA Intel PCH Headphone
/dev/input/event17:	HDA Intel PCH HDMI/DP,pcm=3
/dev/input/event18:	HDA Intel PCH HDMI/DP,pcm=7
/dev/input/event19:	HDA Intel PCH HDMI/DP,pcm=8
/dev/input/event20:	HDA Intel PCH HDMI/DP,pcm=9
/dev/input/event21:	HDA Intel PCH HDMI/DP,pcm=10
Select the device event number [0-21]: 10
Input driver version is 1.0.1
Input device ID: bus 0x18 vendor 0x27c6 product 0x113 version 0x100
Input device name: "GXTP7386:00 27C6:0113"
(...Omission...)
Testing ... (interrupt to exit)
Event: time 1583122934.823936, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 5
Event: time 1583122934.823936, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 3352
Event: time 1583122934.823936, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 1018
Event: time 1583122934.823936, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1583122934.823936, type 3 (EV_ABS), code 0 (ABS_X), value 3352
Event: time 1583122934.823936, type 3 (EV_ABS), code 1 (ABS_Y), value 1018
Event: time 1583122934.823936, -------------- SYN_REPORT ------------
Event: time 1583122934.843212, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1
Event: time 1583122934.843212, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1583122934.843212, -------------- SYN_REPORT ------------

I'm in trouble at the moment

pointing device

The OneMix 3S is equipped with a pointing device, such as a touchpad for whether or not one finger can barely ride. This has a function to click with a single tap, but this may cause unintended operation when entering characters, so I was looking for a way to turn it off ...

In conclusion, no workaround has been found at this time.

If it can be operated with the driver for the touchpad, it seems that it can be handled by changing the setting, but it seems that we can only hope that the firmware that will be recognized as a touchpad will be released ...

GRUB rotation display

Even with the above settings, the screen orientation is correct only after X is started, and the GRUB screen remains rotated 90 degrees to the right. There seems to be no way to set the screen rotation in the GRUB settings. Isn't it possible to set the screen rotation in BIOS Setup like GPD Pocket?

Recommended Posts

Linux (Lubuntu) with OneMix3S
linux with termux app
Self-build linux kernel with clang
Play around with Linux partitions
Linux fastest learning with AWS
Use WDC-433SU2M2 with Manjaro Linux
Prepare pipenv environment with amazon Linux 2
[Linux] OS recovery with restore command
Play around with Linux partitions ~ Continued ~
Linux
Using Kali Linux Gui with WSL2
Operate Linux Network Namespace with Go
Easy JSON formatting with standard Linux functions
Start arch Linux (Manjaro) minikube with KVM2
Experience Linux speeding up with Page cache
X86 assembler on Linux (linkage with C)
[C] [python] Read with AquesTalk on Linux
Connect to GNU / Linux with Remote Desktop
Install Mecab on Linux (CentOS) with brew
How to power off Linux with Ultra96-V2
[Linux] Build a jenkins environment with Docker
[Linux] GWAS with genetic statistics software PLINK
How to get started with laravel (Linux)
Reiwa's Linux router creation procedure ~ with raspi4 ~
Run Linux on ARM architecture with QEMU
[Linux] Build a Docker environment with Amazon Linux 2
Communicate with I2C devices in Linux C