Linux settings


There are a number of UPDD Linux specific settings as described below:

Typically to run a Linux command you would run:

/opt/updd/upddenv bash (This creates a bash shell with the correct environment)
Now run the desired UPDD command to change the required setting, e.g.
/opt/updd/upddutils set active_touch_interface uinput or xtouch (to define active touch interface - this is a device level setting)
/opt/updd/upddutils nodevice set uinput.single_touch 0 (to post single touch data as multi-touch event - this is a global setting)
/opt/updd/upddutils nodevice set uinput.multi_touch 1 (to create a multi-touch virtual device - this is a global setting)
following the setting change stop and stop the driver (if required)
sudo systemctl stop updd (stop the driver)
sudo systemctl start updd (start the driver)

Setting Meaning 
 uinput.virtual_input_path

On Linux systems that support touch via the virtual input method this value allows the device path for the uinput device to be set explicitly. If not set and uinput mode is selected then the software will try:

/dev/uinput

/dev/input/uinput

/dev/misc/uinput

A driver restart is required to recognise a change to this value.

 uinput.single_touch

If enabled (1 - this is the default value) the driver sends single touch events to the kernel as a 'standard' single touch event, even if multi-touch is enabled.

It should not normally be necessary to change this setting, but if disabled then single touch data will be posted as a multi-touch event if multi-touch uinput is enabled.

A driver restart is required to recognise a change to this value.

 uinput.multi_touch

If enabled (1) the driver creates a multi-touch virtual device to post touch events to the kernel. This is disabled by default - due to the issues described below.

It should not normally be necessary to change this setting, but it is available for cases where multi touch events interfere with regular touch, especially on older kernels with no or incomplete support for multi touch.

Linux documentation suggests that multi-touch events should be ignored by an older kernels that do not recognise them.

This setting is to cater for cases where this is not the case and causes issues.

A driver restart is required to recognise a change to this value.

 uinput.sleep_us

Some implementations of the Linux touch interface are sensitive to timing and require a short pause between each passed event.

This setting allows the delay to be defined in microseconds. Defaults to 200. A setting of 0 disables this feature.

 ​In various tests we have performed, and without fully understanding out why, we have found that for multi-touch to work correctly via uinput with various distributions and apps you have to post touch data on the 'Single touch data' as well as the multi-touch data on the virtual device. Posting multi-touch data on the virtual device only does not always work.

Search