1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
<meta NAME="allow-search" content="YES">
<meta NAME="searchtitle" content="Conan's Homepage/X touchscreen
driver">
<meta NAME="keywords" CONTENT="conan touchscreen driver Xorg XFree">
<meta NAME="description" CONTENT="Xorg/XFree touchscreen driver">
<meta NAME="page-type" CONTENT=""><meta NAME="revisit-after" CONTENT="14 days">
<meta NAME="ROBOTS" CONTENT="ALL">
<meta NAME="audience" CONTENT="All">
<meta NAME="content-language" CONTENT="en">
<meta NAME="author" content="kenan.esau@conan.de">
<link rel="StyleSheet" type="text/css" href="../style.css">
<title>Xorg Touchscreen Driver</title>
</head>
<body>
<div class="header">
Last updated: 09.06.2007
</div>
<h1>Linux-Touchscreen Driver for X</h1>
<div>
Evtouch is a Touchscreen-Driver for X. This site contains the <a
href=#config">configuration and installation</a> description as well as the
possibility to <a href="#download">download</a> the driver.
</div>
<h2><a name="config">Installation/Configuration</a></h2>
<ol><li>
<div>
<a href="#download">Download</a> the tarball and extract it to some
temporary directory.
</div>
<div class="shell">tar xzvf evtouch-xx.yy.tar.gz</div>
<div>
Copy the file "evtouch_drv.so" to the appropriate location
(Some distributions use "/usr/X11R6/lib/modules/input" or
"/usr/lib/xorg/modules/input/" (for Ubuntu)).
</div>
<div>
Insert the lines below to the file "/etc/X11/XF86Config-4" or
"/etc/X11/xorg.conf".
</div>
<div class="code">
<a name="config"></a>
Section "InputDevice"<br>
Identifier "touchscreen"<br>
Driver "evtouch"<br>
Option "Device" "/dev/input/event1"<br>
Option "DeviceName" "touchscreen"<br>
Option "MinX" "98"<br>
Option "MinY" "43"<br>
Option "MaxX" "940"<br>
Option "MaxY" "925"<br>
Option "ReportingMode" "Raw"<br>
Option "Emulate3Buttons"<br>
Option "Emulate3Timeout" "50"<br>
Option "SendCoreEvents" "On"<br>
EndSection<br>
</div>
<li>Beware that some distributions use other names for the device. Some use
"/dev/input/evdevX" and others use "/dev/input/eventX". </li>
<li>Add the line below to the file "/etc/X11/XF86Config-4" or
"/etc/X11/xorg.conf" to the section "ServerLayout".<br>
<div class="code">InputDevice "touchscreen" "CorePointer"</div>
</li>
<li>
If your Y-axis is interchanged you might have used the wrong
event-device. Maybe you should try the next few event-devices
(/dev/event[1-9]).
</li>
</ol>
<div class="warning">Since Xorg 7.2 there is always a default-mouse-pointer which will run simultaneously with evtouch if you do not prevent it from loading. It is extremely important that you add the following to your configuration. Otherwise you will get double click events and all kind of strange things.</div>
<ol>
<li>
<div>Add the following new input-device to your xorg.conf:</div>
<div class="code">
Section "InputDevice"<br>
Identifier "dummy"<br>
Driver "void"<br>
Option "Device" "/dev/input/mice"<br>
EndSection<br>
</div>
</li>
<li>
<div>Add the following line your your "ServerLayout"-section:</div>
<div class="code">InputDevice "dummy"</div>
</li>
</ol>
<div>
Calibration is also supported since V0.6.0. You can also reuse your
settings from the old driver for the 2.6 driver. Actually you only
have to exchange the driver name in the "Inputdevice"-section from
"lbtouch" to "evtouch" and change the "Device".
</div>
<h2>Button-Events</h2>
<div>
With the state-machine based code you can have the three types of button actions (button up, down, click) which are issued in different states of the state-machine. So the complete behaviour is configurable.
</div>
<div>
Have a look at <a href="libtouch.html">Libtouch</a> to see which default-actions are hard-coded in the driver and what you have to do to change the default-behaviour.
</div>
<br>
<h2><a name="advanced">Advanced Configuration</a></h2>
<h3>Changing Timers</h3>
<div>
If you are not confident with the default behaviour of your touchpanel you
can configure certain timers which change its behaviour.
</div>
<table class="options" align="center" cellpadding="5" cellspacing="0">
<tr>
<th class="even"> Option </th>
<th class="even"> Description </th>
<th class="even"> Default-Value </td>
</tr>
<tr>
<td class="odd"> TapTimer </td>
<td class="odd"> This timer starts when the state MAYBETAPPED is
entered. When this timer expires a tap-event is issued and the state
changes to UNTOUCHED.</td>
<td class="odd"> 200 ms </td>
</tr>
<tr>
<td class="even"> LongTouchTimer </td>
<td class="even"> This timer is always started when the state TOUCHED
is entered. When the timer expires before you untouch the screen again the
state moves to LONGTOUCHED and on entering that state a longtouch-event is
issued.</td>
<td class="even"> 400 ms </td>
</tr>
<tr>
<td class="odd"> Emulate3Buttons </td>
<td class="odd"> Enable emulation of three button support </td>
<td class="odd"> true -- enabled </td>
<tr>
<td class="even"> Emulate3Timeout </td>
<td class="even"> If both buttons are pressed/released before this timer
expires a
"middle press/release"-event is generated. This timer starts to run as soon as
a button is pressed. </td>
<td class="even"> 50 ms </td>
</tr>
<tr>
<td class="odd"> MoveLimit </td>
<td class="odd"> If the pen moves out of this radius a "mouse-press"-event
becomes impossible. </td>
<td class="odd"> 30 Pixels </td>
</tr>
<tr>
<td class="even"> Rotate </td>
<td class="even"> There are two valid values:<br>
<code class="even">CW</code> -- Rotate the screen clockwise<br>
<code class="even">CCW</code> -- Rotate the screen counter-clockwise<br>
Everything else will be treated as "no rotation".
</td>
<td class="even"> no rotation </td>
</tr>
<tr>
<td class="odd"> SwapX </td>
<td class="odd"> This option is in the driver since V0.61. When set to 1
the X-axis is
swapped. This option is applied BEFORE the rotation-option.
</td>
<td class="odd"> false -- no swapping </td>
</tr>
<tr>
<td class="even"> SwapY</td>
<td class="even"> This option is in the driver since V0.61. When set to 1
the Y-axis is
swapped. This option is applied BEFORE the rotation-option.
</td>
<td class="even"> false -- no swapping </td>
</tr>
</table>
<br>
If you find bugs or if you have comment/wishes please send mail to <a
href="mailto:lifebook@conan.de" target="Inhalt">lifebook@conan.de</a><br>
<h2>Download<a name="download"></a></h2>
<div align="center"><h3>Touchscreen-Driver for X</h3></div>
This driver should work for XFree 4.x and Xorg 6.8.x.<br>
Have a look at the <a href="CHANGELOG.evtouch">CHANGELOG</a>.<br>
V0.8.2 was removed since it was broken -- sorry for the inconvenience.<br><br>
V0.8.4 contains udev-rules for dynamically creating a softlink to the "correct" device. Please feel free to add your rules to this file and send the patches to me.<br>
<table align="center">
<tr>
<td>Precompiled driver for X V0.8.6</td>
<td><a href="evtouch-0.8.6.tar.gz">evtouch-0.8.6.tar.gz</a></td>
</tr>
<tr>
<td>Precompiled driver for X V0.8.5</td>
<td><a href="evtouch-0.8.5.tar.gz">evtouch-0.8.5.tar.gz</a></td>
</tr>
<tr>
<td>Precompiled driver for X V0.8.4</td>
<td><a href="evtouch-0.8.4.tar.gz">evtouch-0.8.4.tar.gz</a></td>
</tr>
<tr>
<td>Precompiled driver for X V0.8.3</td>
<td><a href="evtouch-0.8.3.tar.gz">evtouch-0.8.3.tar.gz</a></td>
</tr>
<tr>
<td>Precompiled driver for X V0.8.1</td>
<td><a href="evtouch-0.8.1.tar.gz">evtouch-0.8.1.tar.gz</a></td>
</tr>
<tr>
<td>Precompiled driver for X V0.8.0</td>
<td><a href="evtouch-0.8.0.tar.gz">evtouch-0.8.0.tar.gz</a></td>
</tr>
<tr>
<td>X driver sources V0.8.6</td>
<td><a href="xf86-input-evtouch-0.8.6.tar.bz2">xf86-input-evtouch-0.8.6.tar.bz2</a></td>
</tr>
<tr>
<td>X driver sources V0.8.5</td>
<td><a href="xf86-input-evtouch-0.8.5.tar.bz2">xf86-input-evtouch-0.8.5.tar.bz2</a></td>
</tr>
<tr>
<td>X driver sources V0.8.4</td>
<td><a href="xf86-input-evtouch-0.8.4.tar.bz2">xf86-input-evtouch-0.8.4.tar.bz2</a></td>
</tr>
<tr>
<td>X driver sources V0.8.3</td>
<td><a href="xf86-input-evtouch-0.8.3.tar.bz2">xf86-input-evtouch-0.8.3.tar.bz2</a></td>
</tr>
<tr>
<td>X driver sources V0.8.1</td>
<td><a href="xf86-input-evtouch-0.8.1.tar.bz2">xf86-input-evtouch-0.8.1.tar.bz2</a></td>
</tr>
<tr>
<td>X driver sources V0.8.0</td>
<td><a href="evtouch-0.8.0-src.tar.gz">evtouch-0.8.0-src.tar.gz</a></td>
</tr>
</table>
<a href="evtouch_old.html">Older (obsolete) versions</a> of the evtouch-driver
can be downloaded <a href="./evtouch_old.html#download">here</a>
</body>
</html>
|