Re: Touch screen with X multi monitor setup

From: Dennis Clarke <dclarke_at_blastwave.org>
Date: Thu, 09 Nov 2023 15:47:56 UTC
On 11/9/23 03:10, Milan Obuch wrote:
> Hi,
> 
> after some years using Acer T231H1 monitor for its monitor role, I
> decided now to try its touch screen interface. It uses USB interface,
> plugging it into my workstation shows just
> 

     I also brought home a large touch screen back in 2014 or so. It is
actually an HP branded "digital display" :

         LD4220tm LCD Interactive Display  model XH216AA

     I think it was intended to be used as some sort of touch interface
installed in airports. At least that is my best guess because it has a
backlit lamp that can light up a whole hallwall if one is not careful.
However setting the lamp down to 5% brightness and le voilĂ  the thing is
a really large and beautiful monitor. Complete with some sort of very
scratch resistent glass. Sadly the thing weighs a lot ( 26Kg ) and so it
needs its own rolling stand in order to mount it and maybe move it as
a display in other rooms. It also drags 110 watts of power all the time.
Not really an economy solution for power. In any case the touch screen
function is also available via a USB port on the bottom where yes indeed
I tried to use that feature. It baffled me also. The entire touch screen
coordinates are mapped to the entire display size which may be multiple
monitors.

s$
s$ uname -a
Linux sedna 6.5.7-genunix #1 SMP PREEMPT_DYNAMIC Mon Oct 16 07:59:00 GMT 
2023 x86_64 GNU/Linux
s$
s$ xrandr
Screen 0: minimum 320 x 200, current 5760 x 1080, maximum 16384 x 16384
DisplayPort-0 connected primary 1920x1080+0+0 (normal left inverted 
right x axis y axis) 930mm x 523mm
    1920x1080     60.00*+  50.00    59.94
    1680x1050     59.88
    1280x1024     60.02
    1440x900      60.00
    1280x800      60.00
    1280x720      60.00    50.00    59.94
    1024x768      60.00
    800x600       60.32
    720x576       50.00
    720x480       60.00    59.94
    640x480       60.00    59.94
    720x400       70.08
DisplayPort-1 connected 1920x1080+1920+0 (normal left inverted right x 
axis y axis) 521mm x 293mm
    1920x1080     60.00*+  50.00    59.94
    1680x1050     59.88
    1280x1024     75.02    60.02
    1440x900      59.90
    1280x960      60.00
    1280x800      59.91
    1152x864      75.00
    1280x720      60.00    50.00    59.94
    1440x576      50.00
    1024x768      75.03    70.07    60.00
    1440x480      60.00    59.94
    832x624       74.55
    800x600       72.19    75.00    60.32    56.25
    720x576       50.00
    720x480       60.00    59.94
    640x480       75.00    66.67    60.00    59.94
    720x400       70.08
DisplayPort-2 connected 1920x1080+3840+0 (normal left inverted right x 
axis y axis) 521mm x 293mm
    1920x1080     60.00*+  50.00    59.94
    1680x1050     59.88
    1280x1024     75.02    60.02
    1440x900      59.90
    1280x960      60.00
    1280x800      59.91
    1152x864      75.00
    1280x720      60.00    50.00    59.94
    1440x576      50.00
    1024x768      75.03    70.07    60.00
    1440x480      60.00    59.94
    832x624       74.55
    800x600       72.19    75.00    60.32    56.25
    720x576       50.00
    720x480       60.00    59.94
    640x480       75.00    66.67    60.00    59.94
    720x400       70.08
DisplayPort-3 disconnected (normal left inverted right x axis y axis)
s$

So there you see Screen 0 on DisplayPort-0 where the resolution is
reported as 5760 x 1080.  If I try to use the touch screen feature it
just maps the single monitor over that entire 5760 pixel wide stuff.

> Acer monitor with touch screen is connected via DVI-D-1 connector in
> this case. Problem is absolute location of touch being not correct,
> coordinate Y (up/down) is OK, but coordinate X (left/right) is not.

Yep.

That is what I see also.

> Could I describe it better? 

Nope!  Perfect.

> ... As it was not necessary for some time, I am using just what's
> autoconfigured and changing setup with xrandr in multi monitor case.
>

I have not figured it out either but am willing to experiment a bit and
see what happens. Maybe we can sort out whatever magic is required and
here I do see :

     https://wiki.archlinux.org/title/Touchscreen


> I found graphics/tslib could be used for various touch screen
> processing, I just have no understanding now where it would fit into
> the whole thing...
>

I don't know either.  Yet.


> And, one more idea, how could I use multiple touch screen monitors? At
> present, I have no such setup, but there are various small computers
> with multiple video connectors, often dual HDMI, so I can imagine it
> could be usefull. And how about rotated screen? For tablets and touch
> screen notebooks, it could be often the case (my GPD small notebook, not
> touch screen, has 1280x720 resolution, but it is actually rotated
> 720x1280 screen).


Exactly the right questions. I am thinking that all my monitors can be
touch screen but then we need to sort out the mapping of the input. Here
I did find about something called libinput-tools in Debian Linux.

I will do some experiments and see if I can get anything better than a
crazy wide touch mapping across three monitors.

-- 
--
Dennis Clarke
RISC-V/SPARC/PPC/ARM/CISC
UNIX and Linux spoken