Provided by: libts0t64_1.22-1.1build1_amd64 bug

NAME

       ts.conf - Configuration file for tslib, controlling touch screens for embedded devices.

DESCRIPTION

       The  idea  of  tslib  is  to have a core library that provides standard services, and a set of plugins to
       manage the conversion and filtering as needed.

       The plugins for a particular touchscreen are loaded automatically by the library under the control  of  a
       static configuration file, /etc/ts.conf.  /etc/ts.conf gives the library basic configuration information.
       Each line specifies one module, and the parameters for that module. The modules are loaded in order, with
       the first one processing the touchscreen data first. For example:

             module_raw input
             module variance delta=30
             module dejitter delta=100
             module linear

ENVIRONMENT VARIABLES

       Latest  versions  of  the  Xorg  tslib  input  driver  use  hal to configure the touchscreen within Xorg.
       Environment variables are only needed for the tslib commands.

       TSLIB_TSDEVICE
           If the default touchscreen device cannot be found, set the TSLIB_TSDEVICE environment variable to the
           touchscreen device to use.

           Default  when  using  ts_setup():  We  try  to   open   /dev/input/ts,   /dev/input/touchscreen   and
           /dev/touchscreen/ucb1x00  and  on  Linux,  we  then  scan /dev/input/event* for the first device with
           property INPUT_PROP_DIRECT.

       TSLIB_CONSOLEDEVICE
           Tslib default console device.

           Default: /dev/tty

       TSLIB_CALIBFILE
           Stores calibration data obtained using ts_calibrate.

           Default: /etc/pointercal

       TSLIB_CONFFILE
           Set a different location for the ts.conf configuration file itself.

           Default; /etc/ts.conf.

       TSLIB_FBDEVICE
           Framebuffer device to use for the touchscreen support.

           Default: /dev/fb0.

       TSLIB_PLUGINDIR
           Plugin directory for tslib.

           Default: /usr/lib/$triplet/ts0/ where triplet is the MultiArch path, e.g. arm-linux-gnueabi.

MODULE PARAMETERS

       dejitter
           Removes jitter on the X and Y co-ordinates. This is achieved by applying a weighted smoothing filter.
           The latest samples have most weight; earlier samples have less weight. This allows one to achieve 1:1
           input->output rate.

           •   delta

               Squared distance between two samples ((X2-X1)^2  +  (Y2-Y1)^2)  that  defines  the  quick  motion
               threshold.  If the pen moves quick, it is not feasible to smooth pen motion, besides quick motion
               is not precise anyway; so if quick motion is detected the module just discards  the  backlog  and
               simply copies input to output.

       linear
           Linear  scaling  module,  primarily  used  for  conversion  of  touch  screen  co-ordinates to screen
           co-ordinates.

           •   rot

               Rotation of touch coorinates. 0=no, 1=CW, 2=UD, 3=CCW. Default: the screen-rotation that was used
               with ts_calibrate (-r option).

           •   xyswap

               Interchange the X and Y co-ordinates -- no longer used or needed if the  new  linear  calibration
               utility ts_calibrate is used.

           •   pressure_offset

               Offset applied to the pressure value. Default: 0.

           •   pressure_mul

               Factor to multiply the pressure value with. Default: 1.

           •   pressure_div

               Value to divide the pressure value by. Default: 1.

       iir
           Infinite impulse response filter. Similar to dejitter, this is a smoothing filter to remove low-level
           noise.  There  is  a trade-off between noise removal (smoothing) and responsiveness. The parameters N
           and D specify the level of smoothing in the form of a fraction (N/D).

           •   N

               numerator of the smoothing fraction. Default: 0.

           •   D

               denominator of the smoothing fraction. Default: 1.

       pthres
           Pressure threshold filter. Given a release is always pressure 0 and a press  is  always  >=  1,  this
           discards samples below / above the specified pressure threshold.

           •   pmin

               Minimum pressure value for a sample to be valid. Default: 1.

           •   pmax

               Maximum pressure value for a sample to be valid. Default: INT_MAX.

       debounce
           Simple  debounce  mechanism  that  drops  input  events  for the specified time after a touch gesture
           stopped.

           •   drop_threshold

               drop events up to this number of milliseconds after the last release event. Default: 0.

       skip
           Skip nhead samples after press and ntail samples before release. This should help if for  the  device
           the first or last samples are unreliable.

           •   nhead

               Number of events to drop after pressure. Default: 1.

           •   ntail

               Number of events to drop before release. Default: 1.

       median
           Similar to what the variance filter does, the median filter suppresses spikes in the gesture.

           •   depth

               Number of samples to apply the median filter to. Default: 3.

       invert
           Invert values in X and/or Y direction around a given value.

           •   x0

               X-axis (horizontal) value around which to invert. Default: 0.

           •   y0

               Y-axis (horizontal) value around which to invert. Default: 0.

       lowpass
           simple exponential averaging lowpass filter

           •   factor

               floating point values betwenn 0 and 1. Default: 0.4.

           •   threshold

               x or y minimum distance between two samples to start applying the filter. Default: 2.

       evthres
           Number  of  samples  needed  from  the device after considered a valid touch. This filter will drop a
           tapping when too little samples are between "down" and "up".

           •   N

               Minimum number of events needed between "down" and "up". Default: 5.

       variance
           Tries to do it's best in order to filter out random noise  coming  from  touchscreen  ADCs.  This  is
           achieved  by  limiting  the sample movement speed to some value (e.g. the pen is not supposed to move
           quicker than some threshold).

           This is a greedy filter, e.g. it gives less samples on output than receives on  input.  There  is  no
           multitouch support for this filter.

           •   delta

               Set  the  squared  distance  in touchscreen units between previous and current pen position (e.g.
               (X2-X1)^2 + (Y2-Y1)^2). This defines the criteria for determining whenever two samples  are  near
               or far to each other.

               If  the  distance  between  previous and current sample is far, the sample is marked as potential
               noise. This doesn't mean yet that it will be discarded; if the next reading will be close to  it,
               this  will  be considered just a regular quick motion event, and it will sneak to the next layer.
               Also, if the sample after the potential noise is far from both previously discussed samples, this
               is also considered a quick motion event and the sample sneaks into the output stream.

       hardware support

       On Linux, use the module_raw input if you can. The other raw access modules are device specific userspace
       drivers. If you need one of those, enable it explicitly when building tslib. The list of modules  enabled
       by default might shrink in the future.  module_raw input supports multitouch (MT) too.

       ┌───────────────────┬───────────────────────────────────┬──────────────────────────┬─────────────────────────┬─────┬────────────────────────────┐
       │ module_rawsupported devicesinterfaceplatformsMThow to enable              │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ input             │ all with Linux evdev drivers      │ any (driver) /dev/input/ │ Linux, FreeBSD          │ yes │ enabled by default         │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ arctic2           │ IBM Arctic II                     │ .                        │ Linux, BSD, Hurd, Haiku │ no  │ --enable-arctic2           │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ collie            │ Sharp Zaurus SL-5000d/SL-5500     │ .                        │ Linux, BSD, Hurd, Haiku │ no  │ --enable-collie            │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ corgi             │ Sharp Zaurus SL-C700              │ .                        │ Linux, BSD, Hurd, Haiku │ no  │ --enable-corgi             │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ dmc_dus3000       │ DMC DUS Series (DUS3000, ...)     │ UART                     │ Linux                   │ no  │ --enable-dmc_dus3000       │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ dmc               │ DMC (others)                      │ .                        │ Linux, BSD, Hurd, Haiku │ no  │ --enable-dmc               │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ galax             │ eGalax 100, 112, 210              │ any (driver)             │ Linux, BSD              │ no  │ --enable-galax             │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ h3600             │ Compaq IPAQ                       │ .                        │ Linux, BSD, Hurd, Haiku │ no  │ --enable-h3600             │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ mk712             │ Hitachi Webpad                    │ .                        │ Linux, BSD, Hurd, Haiku │ no  │ --enable-mk712             │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ tatung            │ Tatung Webpad                     │ .                        │ Linux, BSD, Hurd, Haiku │ no  │ --enable-tatung            │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ touchkit          │ Touchkit SAT4000UR                │ RS232                    │ Linux, BSD, Hurd        │ no  │ enabled by default         │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ ucb1x00           │ UCB1x00 Touchscreens              │ .                        │ Linux, BSD, Hurd, Haiku │ no  │ --enable-ucb1x00           │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ waveshare         │ Waveshare Touchscreens            │ /dev/hidrawX             │ Linux                   │ no  │ enabled by default         │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ cy8mrln_palmpre   │ in Palm Pre/Pre Plus/Pre 2        │ .                        │ Linux                   │ no  │ --enable-cy8mrln-palmpre   │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ one_wire_ts_input │ FriendlyARM one-wire touch screen │ .                        │ Linux                   │ no  │ --enable-one-wire-ts-input │
       ├───────────────────┼───────────────────────────────────┼──────────────────────────┼─────────────────────────┼─────┼────────────────────────────┤
       │ input_evdev       │ Linux evdev drivers (libevdev)    │ .                        │ Linux                   │ yes │ --enable-input-evdev       │
       └───────────────────┴───────────────────────────────────┴──────────────────────────┴─────────────────────────┴─────┴────────────────────────────┘

SEE ALSO

       ts_calibrate(1), ts_test(1), ts_test_mt(1)

                                                                                                      TS.CONF(5)