How to Handle More Than One Touchscreen in IGEL OS 12

If you connect multiple touchscreens to your IGEL OS device, you can configure them either using the configuration options or through script.

If you configure touchscreens using a script, you can map touchscreens to displays by their XInput device name or using USB port path.


Prerequisites

You need IGEL OS Base System version 12.2.2 or higher.

Using the Configuration Options

To configure multiple touchscreens:

  1. Connect only one touchscreen and configure it using the options under User Interface > Input > Touchscreen, section Multimonitor. For details, see Touchscreen Configuration in IGEL OS 12.


  1. If the first touchscreen works, connect the next touchscreen.
    It will get assigned to the next monitor in the monitor order. The order is the numbering shown by screenid or in the display tray app.


  1. If you have more than 2 monitors, continue connecting them this way.
    The touchscreen to monitor assignment can be done through the monitor order.

Using a Script

To configure touchscreens using a script:

  1. Connect the touchscreens.


  1. Check which touchscreens are available with fix_touchscreen_matrix show. It should show you something like this:

    Found Touchscreen: Name: UNITEC USB Touch (Windows 8)
                   XID: 19
                   USB: Bus 1 Port 2 -> HUB Port 2 -> HUB Port 3 (conf entry: usb1-2.2-port3)
                   Configured for screen: dp1 (DisplayPort)
    
    Available connected monitors setup name: dp1 screenid name: DisplayPort X11 name: DP-1
    Available connected monitors setup name: dp2 screenid name: DisplayPort(II) X11 name: DP-2
    
    Starting screenid to identify connected monitors.
    
    Script will exit if screenid is closed
    

The screenid will make it easier to identify the correct monitor.


  1. For configuration (that is, assigning the touchscreens to the monitors), create a /wfs/user/touchconf.ini file with the information from above.
    Depending on the selected touchscreen mapping format, the file must look like in the below examples:

Touchscreen Mapping Format

Description and Examples

Format 1 (USB path):
usbX-Y-portZ->connector

Matches by physical USB port.

  • Recommended for environments with multiple identical monitors (e.g. Elo displays where device names alone cannot uniquely identify each device).

  • The mapping remains stable as long as the touchscreen remains connected to the same physical USB port.

USB path format has priority over name-based configuration when both match the same device.


Example:

# Format usb<bus num>[-[portnum]]-port<portnum>-><conn setup name>
# Use fix_touchscreen_matrix show to get the needed data (conf entry: ... contains the usb... Part
# Setup name: ... is the setup connector name you should use
# a entry could look like this: usb1-2.3.1-port3->dp2
usb1-2.2-port3->dp1
usb1-2.3.1-port3->dp2

Format 2 (device name):
name:Device Name->connector

Matches by XInput device name.

  • As of IGEL OS Base System 12.8.2

  • Recommended for environments where USB port paths change, e.g. when using docking stations.

  • Requires each touchscreen to have a unique XInput device name. The device name must exactly match the name returned by the xinput list command.

Examples:

name:Wacom HID 5415 Pen stylus->edp1


name:Wacom HID 5415 Finger touch->dp1


name:ILITEK ILITEK-2911->dp7