I am trying to make two touch displays work as a separate displays (but touch working on both respectively). I managed first to setup two screen working with one ServerLayout (but the touch worked only on one screen in that). I read that you need to bind input devices to the ServerLayout
, and in my case that would mean I need to have two ServerLayouts setup like here: How to lock one mouse/keyboard pair to each screen?
For some reason when I do so my other screen goes black and does not seem to work. Only Screen0
is working which is attached to ServerLayout0
. I myself already blind and do not see any errors in my xorg.conf
:
Section "ServerLayout"
Identifier "ServerLayout0"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "touchscreen0" "CorePointer"
Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0
EndSection
Section "ServerLayout"
Identifier "ServerLayout1"
Screen 1 "Screen1" 0 0
InputDevice "touchscreen1" "CorePointer"
Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0
EndSection
Section "Files"
ModulePath "/usr/lib/xorg/modules"
FontPath "/usr/share/fonts/X11/misc"
FontPath "/usr/share/fonts/X11/cyrillic"
FontPath "/usr/share/fonts/X11/100dpi/:unscaled"
FontPath "/usr/share/fonts/X11/75dpi/:unscaled"
FontPath "/usr/share/fonts/X11/Type1"
FontPath "/usr/share/fonts/X11/100dpi"
FontPath "/usr/share/fonts/X11/75dpi"
FontPath "built-ins"
EndSection
Section "Module"
Load "glx"
EndSection
Section "InputDevice"
Driver "evdev"
Identifier "touchscreen0"
Option "Name" "Elo touch screen0"
Option "InvertY" "true"
Option "Calibration 0 1280 0 1024"
Option "Emulate3Buttons" "true"
Option "Emulate3Timeout" "50"
Option "TransformationMatrix" "0 -1 1 1 0 0 0 0 1"
EndSection
Section "InputDevice"
Driver "evdev"
Identifier "touchscreen1"
Option "Name" "Elo touch screen1"
Option "InvertY" "true"
Option "Calibration 0 1280 0 1024"
Option "Emulate3Buttons" "true"
Option "Emulate3Timeout" "50"
Option "TransformationMatrix" "0 -1 1 1 0 0 0 0 1"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
Option "RightOf" "Monitor0"
EndSection
Section "Device"
Option "AccellMethod" "SNA"
Option "ZaphodHeads" "HDMI1"
Option "TearFree" "true"
Identifier "Device0"
Driver "intel"
BusID "PCI:0:2:0"
Screen 0
EndSection
Section "Device"
Option "AccellMethod" "SNA"
Option "ZaphodHeads" "HDMI2"
Option "TearFree" "true"
Identifier "Device1"
Driver "intel"
BusID "PCI:0:2:0"
Screen 1
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
SubSection "Display"
Viewport 0 0
Depth 1
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 4
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 8
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 15
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Edit:
To clarify my question better: my use case is that there will be two separate users using the device at the same time. They should have their own sessions. In both monitors same software is run, but separate instances of it. I want touch input to register input in their respective screen areas. As if they are run in same ServerLayer the touch from Screen1 is forwarded to the Screen0. Which is something I do not want.