Tslib: Difference between revisions

From ArmadeusWiki
Line 21: Line 21:
   [*] Build/install a shared libgcc?
   [*] Build/install a shared libgcc?


==Usage==
==Configuration==


* To work, Tslib needs a valid config file:
===Config file===
* To work, Tslib needs a valid config file ''/etc/ts.conf'':
  # cat /etc/ts.conf
  # cat /etc/ts.conf
   
   
# Uncomment if you wish to use the linux input layer event interface
  module_raw input
  module_raw input
  module pthres pmin=1
  module pthres pmin=1
Line 33: Line 33:
  module linear
  module linear


* and to define some ENVT variables:
===Envt variables===
* You should define some ENVT variables too:
  export TSLIB_TSDEVICE=/dev/input/event0
  export TSLIB_TSDEVICE=/dev/input/event0
  export TSLIB_TSEVENTTYPE=INPUT
  export TSLIB_TSEVENTTYPE=INPUT
  export TSLIB_CONFFILE=/etc/ts.conf
  export TSLIB_CONFFILE=/etc/ts.conf
  export TSLIB_CALIBFILE=/etc/pointercal
  export TSLIB_CALIBFILE=/etc/pointercal
 
* to create /dev/input/event0 from the infos got from:
===Device file===
* ''/dev/input/event0'' is created from the infos got from:
  # cat /sys/class/input/event0/dev
  # cat /sys/class/input/event0/dev
  13:64
  13:64
Line 50: Line 52:
  crw-r--r--    1 root    root      13,  64 Jan  1 00:39 event0
  crw-r--r--    1 root    root      13,  64 Jan  1 00:39 event0
  #
  #
===Calibration===
* ''/etc/pointercal'' is created when running Tslib calibration tool:
# /usr/bin/ts_calibrate
==Testing it==
# /usr/bin/ts_test
[[Image:Tslib_calibrate.jpg]]


==Links==
==Links==

Revision as of 00:26, 5 July 2007

Library to provide a common interface to touchscreen and allow touchscreen events filtering or calibrating...

Compiling

  • Be sure to have libtool package installed (tested with 1.5.22-4 version). Otherwise you will have following errors:
configure.ac:25: error: possibly undefined macro: AC_DISABLE_STATIC
     If this token and others are legitimate, please use m4_pattern_allow.
     See the Autoconf documentation.
configure.ac:26: error: possibly undefined macro: AC_ENABLE_SHARED
configure.ac:27: error: possibly undefined macro: AC_LIBTOOL_DLOPEN
configure.ac:28: error: possibly undefined macro: AC_PROG_LIBTOOL
  • Be sure to have automake-1.6 or higher package installed (tested with 1.7 version -> working and 1.9.6 -> not working !). After automake package installation don't forget to update your /etc/alternatives/automake and /etc/alternatives/aclocal symlinks (tested on Ubuntu).
lrwxrwxrwx 1 root root 20 2007-06-27 21:43 /etc/alternatives/aclocal -> /usr/bin/aclocal-1.7
lrwxrwxrwx 1 root root 21 2007-06-27 21:39 /etc/alternatives/automake -> /usr/bin/automake-1.7
  • In Buildroot, if you don't have configured the C++ cross-compiler yet, then:
$ make menuconfig
Toolchain Options  --->
 [*] Build/install c++ compiler and libstdc++?
 [*] Build/install a shared libgcc?

Configuration

Config file

  • To work, Tslib needs a valid config file /etc/ts.conf:
# cat /etc/ts.conf

module_raw input
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear

Envt variables

  • You should define some ENVT variables too:
export TSLIB_TSDEVICE=/dev/input/event0
export TSLIB_TSEVENTTYPE=INPUT
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_CALIBFILE=/etc/pointercal

Device file

  • /dev/input/event0 is created from the infos got from:
# cat /sys/class/input/event0/dev
13:64
# mkdir /dev/input
# cd /dev/input/
# mknod event0 c 13 64
# ls -al
drwxr-xr-x    2 root     root            0 Jan  1 00:39 .
drwxr-xr-x    5 root     root            0 Jan  1 00:39 ..
crw-r--r--    1 root     root      13,  64 Jan  1 00:39 event0
#

Calibration

  • /etc/pointercal is created when running Tslib calibration tool:
# /usr/bin/ts_calibrate

Testing it

# /usr/bin/ts_test

File:Tslib calibrate.jpg

Links