KDE Plasma screen auto-rotation for 2-in-1 tablet PCs

Hello Garuda fam,

I have a rather old laptop (HP Touchsmart tm2 [tm 2t 1000]) that i'm rescuing for my own use as a drawing tool for teaching. It's a 2-in-1 with a rotating screen. It was on the roadmap since KDE Plasma 5.19 (~2020). However, i can't find it in any GUI options and google/garuda forums don't really have anyone finding it either. This did work in windows, so it must have a rotation sensor.

Arch wiki has a bit about it:
https://wiki.archlinux.org/title/Tablet_PC#Screen_rotation

Which i created an xorg.conf.new via # X -configure (Xorg - ArchWiki), added the option in the specified location, and rebooted. No dice on automatic rotation as if it could be that simple. So i turned to google. On the Manjaro forums i found a few hacky bash scripts, but i'd prefer to stay away from those if at all possible.

Does anyone have a similar laptop and have the same experience, or any further troubleshooting ideas?

╭─[email protected] in ~ took 7m38s
╰─λ garuda-inxi
System:
Kernel: 5.19.7-zen2-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=8219e17f-36f2-429f-b053-adf071264db8 rw [email protected]
quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
loglevel=3
Desktop: KDE Plasma v: 5.25.5 tk: Qt v: 5.15.5 info: latte-dock
wm: kwin_x11 vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
Type: Laptop System: Hewlett-Packard product: HP TouchSmart tm2 Notebook PC
v: 049D100000200800000220000 serial: <superuser required> Chassis: type: 10
serial: <superuser required>
Mobo: Hewlett-Packard model: 3661 v: KBC Version 47.18
serial: <superuser required> BIOS: Insyde v: F.07 date: 04/20/2010
Battery:
ID-1: BAT0 charge: 38.3 Wh (69.3%) condition: 55.3/55.3 Wh (100.0%)
volts: 12.6 min: 11.1 model: Hewlett-Packard Primary type: Li-ion
serial: <filter> status: charging
CPU:
Info: model: Intel Core2 Duo U9600 bits: 64 type: MCP arch: Penryn
built: 2008 process: Intel 45nm family: 6 model-id: 0x17 (23)
stepping: 0xA (10) microcode: 0xA0B
Topology: cpus: 1x cores: 2 smt: <unsupported> cache: L1: 128 KiB
desc: d-2x32 KiB; i-2x32 KiB L2: 3 MiB desc: 1x3 MiB
Speed (MHz): avg: 1427 high: 1597 min/max: 800/1601 boost: enabled
scaling: driver: acpi-cpufreq governor: schedutil cores: 1: 1258 2: 1597
bogomips: 6384
Flags: ht lm nx pae sse sse2 sse3 sse4_1 ssse3
Vulnerabilities:
Type: itlb_multihit status: KVM: VMX unsupported
Type: l1tf mitigation: PTE Inversion
Type: mds status: Vulnerable: Clear CPU buffers attempted, no microcode;
SMT disabled
Type: meltdown mitigation: PTI
Type: mmio_stale_data status: Unknown: No mitigations
Type: retbleed status: Not affected
Type: spec_store_bypass status: Vulnerable
Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
sanitization
Type: spectre_v2 mitigation: Retpolines, STIBP: disabled, RSB filling,
PBRSB-eIBRS: Not affected
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: Intel Mobile 4 Series Integrated Graphics vendor: Hewlett-Packard
driver: i915 v: kernel arch: Gen-5 process: Intel 45nm built: 2008 ports:
active: LVDS-1 empty: DP-1,SVIDEO-1,VGA-1 bus-ID: 00:02.0
chip-ID: 8086:2a42 class-ID: 0300
Device-2: AMD RV710/M92 [Mobility Radeon HD 4350/4550]
vendor: Hewlett-Packard driver: radeon v: kernel alternate: amdgpu
arch: TeraScale process: TSMC 55-65nm built: 2005-13 pcie: gen: 1
speed: 2.5 GT/s lanes: 16 ports: active: none
empty: HDMI-A-1,LVDS-2,VGA-2 bus-ID: 01:00.0 chip-ID: 1002:9555
class-ID: 0300
Device-3: Importek HP Webcam type: USB driver: uvcvideo bus-ID: 2-2:2
chip-ID: 10f1:1a16 class-ID: 0e02
Display: x11 server: X.Org v: 21.1.4 with: Xwayland v: 22.1.3
compositor: kwin_x11 driver: X: loaded: modesetting unloaded: amdgpu
gpu: i915 display-ID: :0 screens: 1
Screen-1: 0 s-res: 1280x800 s-dpi: 96 s-size: 338x211mm (13.31x8.31")
s-diag: 398mm (15.69")
Monitor-1: LVDS-1 model: AU Optronics 0x9514 built: 2009 res: 1280x800
hz: 60 dpi: 125 gamma: 1.2 size: 261x163mm (10.28x6.42")
diag: 308mm (12.1") ratio: 16:10 modes: 1280x800
OpenGL: renderer: Mesa Mobile Intel GM45 Express (CTG) v: 2.1 Mesa 22.1.7
direct render: Yes
Audio:
Device-1: Intel 82801I HD Audio vendor: Hewlett-Packard
driver: snd_hda_intel v: kernel bus-ID: 00:1b.0 chip-ID: 8086:293e
class-ID: 0403
Device-2: AMD RV710/730 HDMI Audio [Radeon HD 4000 series]
vendor: Hewlett-Packard driver: snd_hda_intel v: kernel pcie: gen: 1
speed: 2.5 GT/s lanes: 16 bus-ID: 01:00.1 chip-ID: 1002:aa38
class-ID: 0403
Sound Server-1: ALSA v: k5.19.7-zen2-1-zen running: yes
Sound Server-2: PulseAudio v: 16.1 running: no
Sound Server-3: PipeWire v: 0.3.57 running: yes
Network:
Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: Hewlett-Packard driver: r8169 v: kernel pcie: gen: 1
speed: 2.5 GT/s lanes: 1 port: 2000 bus-ID: 02:00.0 chip-ID: 10ec:8168
class-ID: 0200
IF: enp2s0 state: down mac: <filter>
Device-2: Intel Centrino Wireless-N 1000 [Condor Peak] driver: iwlwifi
v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1 bus-ID: 03:00.0
chip-ID: 8086:0084 class-ID: 0280
IF: wlo1 state: up mac: <filter>
Drives:
Local Storage: total: 465.76 GiB used: 13.67 GiB (2.9%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/sda maj-min: 8:0 vendor: Seagate model: ST9500420AS
size: 465.76 GiB block-size: physical: 512 B logical: 512 B speed: 3.0 Gb/s
type: HDD rpm: 7200 serial: <filter> rev: HPM1 scheme: MBR
Partition:
ID-1: / raw-size: 465.76 GiB size: 465.76 GiB (100.00%) used: 13.67 GiB
(2.9%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
ID-2: /home raw-size: 465.76 GiB size: 465.76 GiB (100.00%) used: 13.67
GiB (2.9%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
ID-3: /var/log raw-size: 465.76 GiB size: 465.76 GiB (100.00%) used: 13.67
GiB (2.9%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
ID-4: /var/tmp raw-size: 465.76 GiB size: 465.76 GiB (100.00%) used: 13.67
GiB (2.9%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 3.74 GiB used: 13.9 MiB (0.4%)
priority: 100 dev: /dev/zram0
Sensors:
System Temperatures: cpu: 40.0 C mobo: N/A
Fan Speeds (RPM): N/A
Info:
Processes: 202 Uptime: 3h 2m wakeups: 2 Memory: 3.74 GiB used: 2.07 GiB
(55.5%) Init: systemd v: 251 default: graphical tool: systemctl
Compilers: gcc: 12.2.0 Packages: pacman: 1332 lib: 355 Shell: fish v: 3.5.1
default: Bash v: 5.1.16 running-in: konsole inxi: 3.3.20
Garuda (2.6.7-1):
System install date:     2022-09-05
Last full system update: 2022-09-08 ↻
Is partially upgraded:   No
Relevant software:       NetworkManager
Windows dual boot:       <superuser required>
Snapshots:               Snapper
Failed units:            mnt-fruitsalad.mount nmb.service

Just a few miscellaneous ideas...
Maybe give a look here (although very old):
HP TouchSmart tm2 - Ubuntu Wiki
Maybe also the subsequent section, but there, rather than the linked project, in the AUR I saw:
AUR (en) - kde-auto-rotate-git
You could give it a try.
This would bring in also the
Arch Linux - iio-sensor-proxy 3.4-1 (x86_64)
Which is probably needed anyway.
Other than that, maybe I'd give a try to a wayland session, and maybe a Gnome ISO...

6 Likes

I recall some touch related settings to be Wayland exclusive, switch to wayland by installing plasma-wayland-session logging out and choosing Plasma Wayland. Then on System Settings go to "Workspace Behaviour" -> "General Behaviour" and change touch mode setting as you wish. Automatic should enable / disable touch mode, enable should make it permanent.

4 Likes

Thank you! I'll explore these when i get home from work, and finish my chores that have to be done before tournament tomorrow. Much appreciated, the resources and solutions i've looked at have much promise.

This is not the solution. Touch screen modes only make elements on the screen larger. I want it to rotate 180 degrees when i flip the screen over.

none of these work either, and i don't know enough about why to begin troubleshooting

All the scripts spit out errors like:

cat: /sys/devices/platform/hp-wmi/tablet: No such device
/usr/local/bin/auto-rotate: unary operator expected: line 6
[...]

I fixed the unary operator by putting the variable in the boolean comparator in quotes, but i'm still getting No such device.

Hi there, what options offer in "Configure Display Settings", can you manually set it in X?
I installed Wayland and had auto-rotation automatically if chosen.

Both DM should offer that option if detected.

2 Likes

@justmere you should at least try Wayland! :crossed_fingers:

2 Likes