[TUTO] touchscreen rotations

Hi everyone!

After many hours to find the solution I finally found it!
And since I could not find a complete answer on this forum I decided to create a topic on the subject.
So here is a topic on How to rotate EVERY touchscreens.

1- Connect to volumio with ssh.

2- Got to:

sudo nano /boot/config.txt

And add this:

display_rotate=3

This rotate the picture at 270° but not the touch (for other rotations: display_rotate=1 —>90 degrees; display_rotate=2 —>180 degrees).
To do that you have to:

3- Update your system and install xinput:

sudo apt-get update
sudo apt-get install xinput

4- Check your device name:

sudo DISPLAY=:0 xinput list

You should see something like this:

volumio@mikhifi:~$ sudo DISPLAY=:0 xinput list
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ WaveShare WS170120                      	id=6	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]

Here, the name of my screen is: WaveShare WS170120 (Don’t forget to write down the lowercase and upper case letters)

5- Now you just have to edit this file:

sudo nano ~/.xsessionrc

by adding this line:

xinput set-prop 'YOUR DEVICE NAME' 'Coordinate Transformation Matrix' 0 -1 1 1 0 0 0 0 1

to rotate the touch at 270°.
If you need to turn it in another position read this: https://wiki.ubuntu.com/X/InputCoordinateTransformation

6- Now restart your system: the touchscreen should be in the good position.
NOTE: For those who have a waveshare touchscreen, you don’t need to replace the kernel file by the one given with the screen. For me it doesn’t work because of a version problem. So don’t use it it is totally useless.

Here we are! I hope this will help some of you :slight_smile:

3 Likes

Hi - just read this post. I am having just this same problem with a Waveshare 7.9 inch touch display (https://www.amazon.de/dp/B087CNJYB4?psc=1&ref=ppx_yo2ov_dt_b_product_details) and tried to apply according to your post.

However, the command “sudo DISPLAY=:0 xinput list” does only produce this error message for me:

no protocol specified
unable to connect to X server

Now I am wondering a) what I might be doing wrong and b) whether something has changed the last five years?

I suggest to install the Touch Display plugin 3.3.8 and add the following lines to “/boot/userconfig.txt”:

hdmi_group=2
hdmi_mode=87
hdmi_timings=400 0 100 10 140 1280 10 20 20 2 0 0 0 60 0 43000000 3
hdmi_blanking=1

After that restart Volumio and check if the display works. If so try the orientation setting on the Touch Display’s config page to rotate display and touch by 270 deg. (reboot required).

thx. but that is exactly what I already had, except for the “hdmi_blanking=1” setting.

rotating the display works fine. But the touch-functionality isn’t adapting to the rotation (switching on the mouse cursor helps understanding what the touch believes the display is showing).

I would actually have expected (from the display) that changing the rotation of what is displayed automatically changes the touch orientation as well, but that is obviously not the case.

Do you have the proposed line xinput set-prop ... in “.xsessionrc”? If so, remove it.

Then stop and start the Touch Display plugin and post the output of

cat /var/log/Xorg.0.log

I had tried setting that but failed (see my above initial question). So the answer is: no, I don’t have that.

Now the good news: I meanwhile managed to change the touch rotation. I had not paid enough attention to the Waveshare wiki for this display. In fact, that wiki even clearly states that the touch rotation is not automatically following the display rotation. And, it also explains how to adapt the touch rotation :slight_smile:

here the steps necessary:

sudo apt-get install xserver-xorg-input-libinput
sudo mkdir /etc/X11/xorg.conf.d
sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/
sudo nano /etc/X11/xorg.conf.d/40-libinput.conf

in this file, find the touchscreen section, and add one of the commands below depending on the rotation wanted:
90-degree rotation: Option “CalibrationMatrix” “0 1 0 -1 0 1 0 0 1”
180-degree rotation: Option “CalibrationMatrix” “-1 0 1 0 -1 1 0 0 1”
270-degree rotation: Option “CalibrationMatrix” “0 -1 1 1 0 0 0 0 1”

reboot, and you are all set!

so, all good now, and I have both the standard display and the Now Playing widget up and running.

Really cool stuff, love it, and much appreciate the work of all involved! In essence, after investing an old Raspberry 4 I had laying on my desk, €50 for a DAC hat, and @100 for the display, plus maybe 2 hours of my time, I now have a music server that really rocks, with great audio quality (connected to my high end audio system), and a really cool UX (that even my wife already uses :slight_smile:)

Now I have 3 questions left, that maybe someone can also answer?

  1. right now I use the HifiBerry DAC2 Pro, and it works just fine (even though it is not directly available in Volumio, but I had to select the older HiFiBerry DAC+ Pro instead). Now I am wondering whether there is any better DACs available that would further improve audio quality, like the HiFiBerry DAC2 HD or something like the AUDIOPHONICS DAC I-Sabre ES9038Q2M?

  2. currently I am on the free version of Volumio, but certainly will upgrade once my test project here is finished successfully. What I have not yet set up is streaming services like Spotify or Amazon Music HD. Is that available with the full version of Volumio only?

  3. I am looking for some nice housing for this system, that kind of fits to my HiFi set. Any idea where to get something like this from?

IMHO modifying “40-libinput.conf” should not be necessary. I would have appreciated the requested log without this modification to investigate, but if it now works all is good.

I am sorry I had not seen your request for the logfile in time. Let me know what I need to eventually roll back or otherwise change, and I am happy to provide the logs

Just rename “/etc/X11/xorg.conf.d/40-libinput.conf” like

sudo mv /etc/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/40-libinput.conf.bak

and reboot.

Then run

cat /var/log/Xorg.0.log

and post the output (plase format with code tags for better readability :wink:).

Thank you.

Volumio Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Welcome to Volumio for Raspberry Pi (6.1.69-v7l+ armv7l)
volumio@volumio:~$ cat /var/log/Xorg.0.log
[ 46.849]
X.Org X Server 1.20.4
X Protocol Version 11, Revision 0
[ 46.849] Build Operating System: Linux 5.4.0-109-generic armv8l Raspbian
[ 46.849] Current Operating System: Linux volumio 6.1.69-v7l+ #1710 SMP Thu Dec 21 13:17:38 GMT 2023 armv7l
[ 46.849] Kernel command line: coherent_pool=1M 8250.nr_uarts=0 snd_bcm2835.enable_headphones=0 snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 bcm2708_fb.fbwidth=1280 bcm2708_fb.fbheight=400 bcm2708_fb.fbswap=1 smsc95xx.macaddr=DC:A6:32:FC:59:D6 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 splash plymouth.ignore-serial-consoles dwc_otg.fiq_enable=1 dwc_otg.fiq_fsm_enable=1 dwc_otg.fiq_fsm_mask=0xF dwc_otg.nak_holdoff=1 quiet console=ttyS0,115200 console=tty1 imgpart=/dev/mmcblk0p2 imgfile=/volumio_current.sqsh rootwait bootdelay=5 elevator=noop logo.nologo vt.global_cursor_default=0 net.ifnames=0 snd-bcm2835.enable_compat_alsa= snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_headphones=1 loglevel=0
[ 46.849] Build Date: 04 April 2023 07:50:56AM
[ 46.849] xorg-server 2:1.20.4-1+rpt4+deb10u9 (Debian -- User Support)
[ 46.849] Current version of pixman: 0.36.0
[ 46.849] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 46.849] Markers: (–) probed, () from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 46.849] (==) Log file: “/var/log/Xorg.0.log”, Time: Mon Feb 12 13:03:38 2024
[ 46.855] (==) Using config directory: “/etc/X11/xorg.conf.d”
[ 46.855] (==) Using system config directory “/usr/share/X11/xorg.conf.d”
[ 46.859] (==) No Layout section. Using the first Screen section.
[ 46.859] (==) No screen section available. Using defaults.
[ 46.859] (
) |–>Screen “Default Screen Section” (0)
[ 46.859] (**) | |–>Monitor “”
[ 46.863] (==) No monitor specified for screen “Default Screen Section”.
Using a default monitor configuration.
[ 46.863] (==) Automatically adding devices
[ 46.863] (==) Automatically enabling devices
[ 46.863] (==) Automatically adding GPU devices
[ 46.868] (==) Max clients allowed: 256, resource mask: 0x1fffff
[ 46.869] (WW) The directory “/usr/share/fonts/X11/cyrillic” does not exist.
[ 46.869] Entry deleted from font path.
[ 46.870] (==) FontPath set to:
/usr/share/fonts/X11/misc,
/usr/share/fonts/X11/100dpi/:unscaled,
/usr/share/fonts/X11/75dpi/:unscaled,
/usr/share/fonts/X11/Type1,
/usr/share/fonts/X11/100dpi,
/usr/share/fonts/X11/75dpi,
built-ins
[ 46.870] (==) ModulePath set to “/usr/lib/xorg/modules”
[ 46.870] (II) The server relies on udev to provide the list of input devices.
If no devices become available, reconfigure udev or disable AutoAddDevices.
[ 46.870] (II) Loader magic: 0x1fdf80
[ 46.870] (II) Module ABI versions:
[ 46.870] X.Org ANSI C Emulation: 0.4
[ 46.870] X.Org Video Driver: 24.0
[ 46.871] X.Org XInput driver : 24.1
[ 46.871] X.Org Server Extension : 10.0
[ 46.872] (–) using VT number 2

[ 46.872] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[ 46.873] (II) no primary bus or device found
[ 46.873] (II) LoadModule: “glx”
[ 46.877] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[ 46.911] (II) Module glx: vendor=“X.Org Foundation”
[ 46.911] compiled for 1.20.4, module version = 1.0.0
[ 46.911] ABI class: X.Org Server Extension, version 10.0
[ 46.911] (==) Matched modesetting as autoconfigured driver 0
[ 46.911] (==) Matched fbdev as autoconfigured driver 1
[ 46.911] (==) Assigned the driver to the xf86ConfigLayout
[ 46.911] (II) LoadModule: “modesetting”
[ 46.911] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[ 46.915] (II) Module modesetting: vendor=“X.Org Foundation”
[ 46.915] compiled for 1.20.4, module version = 1.20.4
[ 46.915] Module class: X.Org Video Driver
[ 46.915] ABI class: X.Org Video Driver, version 24.0
[ 46.915] (II) LoadModule: “fbdev”
[ 46.915] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[ 46.917] (II) Module fbdev: vendor=“X.Org Foundation”
[ 46.917] compiled for 1.20.3, module version = 0.5.0
[ 46.917] Module class: X.Org Video Driver
[ 46.917] ABI class: X.Org Video Driver, version 24.0
[ 46.917] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[ 46.917] (II) FBDEV: driver for framebuffer: fbdev
[ 46.921] (WW) Falling back to old probe method for modesetting
[ 46.921] (EE) open /dev/dri/card0: No such file or directory
[ 46.921] (WW) Falling back to old probe method for fbdev
[ 46.921] (II) Loading sub module “fbdevhw”
[ 46.921] (II) LoadModule: “fbdevhw”
[ 46.922] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[ 46.923] (II) Module fbdevhw: vendor=“X.Org Foundation”
[ 46.923] compiled for 1.20.4, module version = 0.0.2
[ 46.923] ABI class: X.Org Video Driver, version 24.0
[ 46.924] (II) FBDEV(0): using default device
[ 46.924] (II) FBDEV(0): Creating default Display subsection in Screen section
“Default Screen Section” for depth/fbbpp 24/32
[ 46.924] (==) FBDEV(0): Depth 24, (==) framebuffer bpp 32
[ 46.924] (==) FBDEV(0): RGB weight 888
[ 46.924] (==) FBDEV(0): Default visual is TrueColor
[ 46.924] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
[ 46.924] (II) FBDEV(0): hardware: BCM2708 FB (video memory: 2000kB)
[ 46.924] (DB) xf86MergeOutputClassOptions unsupported bus type 0
[ 46.924] (II) FBDEV(0): checking modes against framebuffer device…
[ 46.924] (II) FBDEV(0): checking modes against monitor…
[ 46.924] (II) FBDEV(0): Virtual size is 1280x400 (pitch 1280)
[ 46.924] () FBDEV(0): Built-in mode “current”
[ 46.924] (==) FBDEV(0): DPI set to (96, 96)
[ 46.924] (II) Loading sub module “fb”
[ 46.924] (II) LoadModule: “fb”
[ 46.924] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 46.929] (II) Module fb: vendor=“X.Org Foundation”
[ 46.929] compiled for 1.20.4, module version = 1.0.0
[ 46.929] ABI class: X.Org ANSI C Emulation, version 0.4
[ 46.929] (
) FBDEV(0): using shadow framebuffer
[ 46.929] (II) Loading sub module “shadow”
[ 46.929] (II) LoadModule: “shadow”
[ 46.929] (II) Loading /usr/lib/xorg/modules/libshadow.so
[ 46.931] (II) Module shadow: vendor=“X.Org Foundation”
[ 46.931] compiled for 1.20.4, module version = 1.1.0
[ 46.931] ABI class: X.Org ANSI C Emulation, version 0.4
[ 46.931] (II) UnloadModule: “modesetting”
[ 46.931] (II) Unloading modesetting
[ 46.945] (==) FBDEV(0): Backing store enabled
[ 46.949] (==) FBDEV(0): DPMS enabled
[ 46.950] (II) Initializing extension Generic Event Extension
[ 46.951] (II) Initializing extension SHAPE
[ 46.951] (II) Initializing extension MIT-SHM
[ 46.952] (II) Initializing extension XInputExtension
[ 46.955] (II) Initializing extension XTEST
[ 46.956] (II) Initializing extension BIG-REQUESTS
[ 46.956] (II) Initializing extension SYNC
[ 46.957] (II) Initializing extension XKEYBOARD
[ 46.957] (II) Initializing extension XC-MISC
[ 46.958] (II) Initializing extension SECURITY
[ 46.959] (II) Initializing extension XFIXES
[ 46.959] (II) Initializing extension RENDER
[ 46.960] (II) Initializing extension RANDR
[ 46.962] (II) Initializing extension COMPOSITE
[ 46.963] (II) Initializing extension DAMAGE
[ 46.964] (II) Initializing extension MIT-SCREEN-SAVER
[ 46.964] (II) Initializing extension DOUBLE-BUFFER
[ 46.965] (II) Initializing extension RECORD
[ 46.966] (II) Initializing extension DPMS
[ 46.967] (II) Initializing extension Present
[ 46.967] (II) Initializing extension DRI3
[ 46.968] (II) Initializing extension X-Resource
[ 46.968] (II) Initializing extension XVideo
[ 46.969] (II) Initializing extension XVideo-MotionCompensation
[ 46.969] (II) Initializing extension SELinux
[ 46.969] (II) SELinux: Disabled on system
[ 46.969] (II) Initializing extension GLX
[ 46.970] (II) AIGLX: Screen 0 is not DRI2 capable
[ 47.743] (II) IGLX: Loaded and initialized swrast
[ 47.743] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[ 47.743] (II) Initializing extension XFree86-VidModeExtension
[ 47.744] (II) Initializing extension XFree86-DGA
[ 47.744] (II) Initializing extension XFree86-DRI
[ 47.746] (II) Initializing extension DRI2
[ 47.926] (II) config/udev: Adding input device WaveShare WaveShare (/dev/input/event0)
[ 47.926] () WaveShare WaveShare: Applying InputClass “libinput touchscreen catchall”
[ 47.926] (
) WaveShare WaveShare: Applying InputClass “Touch rotation”
[ 47.926] (II) LoadModule: “libinput”
[ 47.927] (II) Loading /usr/lib/xorg/modules/input/libinput_drv.so
[ 47.948] (II) Module libinput: vendor=“X.Org Foundation”
[ 47.948] compiled for 1.20.3, module version = 0.28.2
[ 47.948] Module class: X.Org XInput Driver
[ 47.948] ABI class: X.Org XInput driver, version 24.1
[ 47.948] (II) Using input driver ‘libinput’ for ‘WaveShare WaveShare’
[ 47.948] () WaveShare WaveShare: always reports core events
[ 47.948] (
) Option “Device” “/dev/input/event0”
[ 47.948] () Option “_source” “server/udev”
[ 47.977] (II) event0 - WaveShare WaveShare: is tagged by udev as: Touchscreen
[ 47.977] (II) event0 - WaveShare WaveShare: device is a touch device
[ 47.978] (II) event0 - WaveShare WaveShare: device removed
[ 48.030] (
) Option “config_info” “udev:/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2:1.0/0003:0712:000A.0001/input/input6/event0”
[ 48.030] (II) XINPUT: Adding extended input device “WaveShare WaveShare” (type: TOUCHSCREEN, id 6)
[ 48.030] () Option “AccelerationScheme” “none”
[ 48.030] (
) WaveShare WaveShare: (accel) selected scheme none/0
[ 48.030] () WaveShare WaveShare: (accel) acceleration factor: 2.000
[ 48.030] (
) WaveShare WaveShare: (accel) acceleration threshold: 4
[ 48.030] () Option “TransformationMatrix” “0 -1 1 1 0 0 0 0 1”
[ 48.037] (II) event0 - WaveShare WaveShare: is tagged by udev as: Touchscreen
[ 48.037] (II) event0 - WaveShare WaveShare: device is a touch device
[ 48.040] (II) config/udev: Adding input device WaveShare WaveShare (/dev/input/mouse0)
[ 48.040] (II) No input driver specified, ignoring this device.
[ 48.040] (II) This device may have been added with another device file.
[ 48.043] (II) config/udev: Adding input device 2.4G Composite Devic (/dev/input/event1)
[ 48.043] (
) 2.4G Composite Devic: Applying InputClass “libinput keyboard catchall”
[ 48.043] (II) Using input driver ‘libinput’ for ‘2.4G Composite Devic’
[ 48.043] () 2.4G Composite Devic: always reports core events
[ 48.043] (
) Option “Device” “/dev/input/event1”
[ 48.043] () Option “_source” “server/udev”
[ 48.051] (II) event1 - 2.4G Composite Devic: is tagged by udev as: Keyboard
[ 48.051] (II) event1 - 2.4G Composite Devic: device is a keyboard
[ 48.052] (II) event1 - 2.4G Composite Devic: device removed
[ 48.090] (
) Option “config_info” “udev:/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:4037:2804.0002/input/input2/event1”
[ 48.090] (II) XINPUT: Adding extended input device “2.4G Composite Devic” (type: KEYBOARD, id 7)
[ 48.090] () Option “xkb_model” “pc105”
[ 48.090] (
) Option “xkb_layout” “us”
[ 48.097] (II) event1 - 2.4G Composite Devic: is tagged by udev as: Keyboard
[ 48.097] (II) event1 - 2.4G Composite Devic: device is a keyboard
[ 48.100] (II) config/udev: Adding input device 2.4G Composite Devic Mouse (/dev/input/event2)
[ 48.100] () 2.4G Composite Devic Mouse: Applying InputClass “libinput pointer catchall”
[ 48.100] (II) Using input driver ‘libinput’ for ‘2.4G Composite Devic Mouse’
[ 48.100] (
) 2.4G Composite Devic Mouse: always reports core events
[ 48.100] () Option “Device” “/dev/input/event2”
[ 48.100] (
) Option “_source” “server/udev”
[ 48.108] (II) event2 - 2.4G Composite Devic Mouse: is tagged by udev as: Mouse
[ 48.109] (II) event2 - 2.4G Composite Devic Mouse: device is a pointer
[ 48.109] (II) event2 - 2.4G Composite Devic Mouse: device removed
[ 48.150] () Option “config_info” “udev:/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.1/0003:4037:2804.0003/input/input3/event2”
[ 48.150] (II) XINPUT: Adding extended input device “2.4G Composite Devic Mouse” (type: MOUSE, id 8)
[ 48.151] (
) Option “AccelerationScheme” “none”
[ 48.151] () 2.4G Composite Devic Mouse: (accel) selected scheme none/0
[ 48.151] (
) 2.4G Composite Devic Mouse: (accel) acceleration factor: 2.000
[ 48.151] () 2.4G Composite Devic Mouse: (accel) acceleration threshold: 4
[ 48.157] (II) event2 - 2.4G Composite Devic Mouse: is tagged by udev as: Mouse
[ 48.157] (II) event2 - 2.4G Composite Devic Mouse: device is a pointer
[ 48.160] (II) config/udev: Adding input device 2.4G Composite Devic Mouse (/dev/input/mouse1)
[ 48.160] (II) No input driver specified, ignoring this device.
[ 48.160] (II) This device may have been added with another device file.
[ 48.163] (II) config/udev: Adding input device 2.4G Composite Devic Consumer Control (/dev/input/event3)
[ 48.163] (
) 2.4G Composite Devic Consumer Control: Applying InputClass “libinput keyboard catchall”
[ 48.163] (II) Using input driver ‘libinput’ for ‘2.4G Composite Devic Consumer Control’
[ 48.163] () 2.4G Composite Devic Consumer Control: always reports core events
[ 48.163] (
) Option “Device” “/dev/input/event3”
[ 48.163] () Option “_source” “server/udev”
[ 48.171] (II) event3 - 2.4G Composite Devic Consumer Control: is tagged by udev as: Keyboard
[ 48.171] (II) event3 - 2.4G Composite Devic Consumer Control: device is a keyboard
[ 48.171] (II) event3 - 2.4G Composite Devic Consumer Control: device removed
[ 48.210] (II) libinput: 2.4G Composite Devic Consumer Control: needs a virtual subdevice
[ 48.210] (
) Option “config_info” “udev:/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.1/0003:4037:2804.0003/input/input4/event3”
[ 48.210] (II) XINPUT: Adding extended input device “2.4G Composite Devic Consumer Control” (type: MOUSE, id 9)
[ 48.211] () Option “AccelerationScheme” “none”
[ 48.211] (
) 2.4G Composite Devic Consumer Control: (accel) selected scheme none/0
[ 48.211] () 2.4G Composite Devic Consumer Control: (accel) acceleration factor: 2.000
[ 48.211] (
) 2.4G Composite Devic Consumer Control: (accel) acceleration threshold: 4
[ 48.217] (II) event3 - 2.4G Composite Devic Consumer Control: is tagged by udev as: Keyboard
[ 48.217] (II) event3 - 2.4G Composite Devic Consumer Control: device is a keyboard
[ 48.221] (II) config/udev: Adding input device 2.4G Composite Devic System Control (/dev/input/event4)
[ 48.221] () 2.4G Composite Devic System Control: Applying InputClass “libinput keyboard catchall”
[ 48.221] (II) Using input driver ‘libinput’ for ‘2.4G Composite Devic System Control’
[ 48.221] (
) 2.4G Composite Devic System Control: always reports core events
[ 48.221] () Option “Device” “/dev/input/event4”
[ 48.221] (
) Option “_source” “server/udev”
[ 48.229] (II) event4 - 2.4G Composite Devic System Control: is tagged by udev as: Keyboard
[ 48.229] (II) event4 - 2.4G Composite Devic System Control: device is a keyboard
[ 48.229] (II) event4 - 2.4G Composite Devic System Control: device removed
[ 48.270] () Option “config_info” “udev:/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.1/0003:4037:2804.0003/input/input5/event4”
[ 48.270] (II) XINPUT: Adding extended input device “2.4G Composite Devic System Control” (type: KEYBOARD, id 10)
[ 48.270] (
) Option “xkb_model” “pc105”
[ 48.270] () Option “xkb_layout” “us”
[ 48.277] (II) event4 - 2.4G Composite Devic System Control: is tagged by udev as: Keyboard
[ 48.277] (II) event4 - 2.4G Composite Devic System Control: device is a keyboard
[ 48.293] (
) 2.4G Composite Devic Consumer Control: Applying InputClass “libinput keyboard catchall”
[ 48.293] (II) Using input driver ‘libinput’ for ‘2.4G Composite Devic Consumer Control’
[ 48.293] () 2.4G Composite Devic Consumer Control: always reports core events
[ 48.293] (
) Option “Device” “/dev/input/event3”
[ 48.293] () Option “_source” “_driver/libinput”
[ 48.293] (II) libinput: 2.4G Composite Devic Consumer Control: is a virtual subdevice
[ 48.293] (
) Option “config_info” “udev:/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.1/0003:4037:2804.0003/input/input4/event3”
[ 48.293] (II) XINPUT: Adding extended input device “2.4G Composite Devic Consumer Control” (type: KEYBOARD, id 11)
[ 48.293] () Option “xkb_model” “pc105”
[ 48.293] (
) Option “xkb_layout” “us”

let me know if anything else is necessary …

To rotate the touch orientation, did you try the button on the back of your screen?
This will make your live a lot easier than adding all kind of software tricks, that will be gone after a reinstall.

I have the same screen.

will try momentarily

that button doesn’t do anything … is that maybe because of some other setting?

If I recall correct you need to press it for a 5 seconds. Not sure if all SW tweaks broke the functionality.
For me it is still working till V3.614 on both a rPi4 and rPi5.

Rotate by button

In some special systems, when you cannot rotate by modifying the software, you can press and hold the “Rotate Touch” button for 5 seconds to rotate the touch. And you may need to test multi times for the correct orientation.

ah, wasn’t aware of that 5sec thing. I have now turned back to my software config, all working well again. I will play around with that button later again …

any idea who can answer my other 3 questions above regarding the I-Sabre DAC, Amazon Music, and a housing?

  1. Can’t comment much on DAC Hat, I will always choose an USB DAC. The only Hat I am using is an Allo Digone, connected to a DAC.
  2. It’s on the todo list no ETA yet
  3. Housing impossible to answer, every box that fits you screen and width of your music system will do.

Thanks for the log! At first glance, everything looks good as far as the Waveshare touchscreen is concerned… :thinking:

Could you post the results of

ls -al /etc/X11/xorg.conf.d

and

ls -al /usr/share/X11/xorg.conf.d

please?

BTW: Seems you have connected a wireless mouse and / or keyboard, too. Is that correct?

haha - had tried, but was not allowed to post any more replies “for the safety of the community” :slight_smile: today its open again, will try to come to this later …

and, no, I have no mouse or keyboard connected …