Difference between revisions of "ELO touchscreen"

From LinuxMCE
Jump to: navigation, search
m (category added)
Line 1: Line 1:
 +
[[Category:Displays]]
 
available starting with: LinuxMCE beta 4
 
available starting with: LinuxMCE beta 4
 
only for the USB version of the touchscreen
 
only for the USB version of the touchscreen

Revision as of 20:45, 12 June 2009

available starting with: LinuxMCE beta 4 only for the USB version of the touchscreen

The ELO touchscreen drivers only run on the 32 bit architecture (i386), not the 64-bit. You can install them on a media director that is 32 bit even if the core is 64 bit. Just be sure the architecture for the media director is i386 and not amd64.

To install the ELO touchscreen drivers in LinuxMCE 0710, run this command:

apt-get install elo-touchscreen

and reboot the computer.

The commands for running the calibration utility are:

cd /elo
./elova -u

These must the run under X.

   THE ABOVE SOLUTION ON MY 7.10 RC1 DID NOT WORK... SO i had to reinstall the MD, and use this solution 
   (taken from: http://ubuntuforums.org/showthread.php?t=579155 (thanks Chuy_Max!)
Elo Touch Screen Intelli Touch (USB)

First of all, this should work for touch screen monitors with IntelliTouch (Surface Acoustic Wave) technology, and hopefully other monitors.

www.elotouch.com offers you precompiled binaries for their monitors, unfortunately they just work for kernels <= 2.6.17. If you want them to compile for a special kernel/distro for you, they will charge you just a few $1,500 bucks (Hell no!, monitors I bought were expensive enough). I've found an open source driver called evtouch that works great in my PC (I'm using USB), so, let's begin.

1.-Sources, and an incomplete tutorial can be found here: http://stz-softwaretechnik.com/~ke/t...n/evtouch.html

Basic installation is copied from the website, but added my monitor's right values for xorg.conf, and udev-rules so the right events are triggered. 2.-The specs of the monitor I used, plus my PC specs:

   * Elo Touch Screen monitor with IntelliTouch (Surface Acoustic Wave). Model 1939L, I used USB although monitor also has Serial interface.
   * Linux ubuntu 2.6.20-16-generic #2 SMP Sun Sep 23 19:50:39 UTC 2007 i686 GNU/Linux
   * Ubuntu 7.04 Feisty Fawn
   * CPU: Intel P4 3Ghz with HT


3.-Why this guide? This guide is meant to help people install touch screen monitors that use IntelliTouch technology (Surface Acoustic Wave), hopefully, other technologies will also work, although I don't have the hardware to test it. This guide was also meant to complement the source's website, as it lacked right values for Elo Touch monitor, and tutorial didn't mention udev-rules, which are needed to set the right handlers for the linux kernel. 4.-Things you need: I used the precompiled binaries, you can find them in the website I mentioned in the first point. The latest at the time I'm writing this is:

Precompiled driver for X V0.8.7

Also, you will need to copy udev-rules, the file you need can be found also in the same website, inside a sources tarball:

X driver sources V0.8.4

5.-Installation Download precompiled binaries.

Code:


   tar -zxvf evtouch-0.8.7.tar.gz
   cd evtouch-0.8.7
   sudo cp evtouch_drv.so /usr/lib/xorg/modules/input/

Open /etc/X11/xorg.conf and add this lines:

Code:


   Section "InputDevice"
    Identifier "touchscreen"
    Driver "evtouch"
    Option "Device" "/dev/input/evtouch_event"
    Option "DeviceName" "touchscreen"
    Option "MinX" "4095"
    Option "MinY" "4095"
    Option "MaxX" "0"
    Option "MaxY" "0"
    Option "ReportingMode" "Raw"
    Option "Emulate3Buttons"
    Option "Emulate3Timeout" "50"
    Option "SendCoreEvents" "On"
   EndSection


   Section "InputDevice"
    Identifier "dummy"
    Driver "void"
    Option "Device" "/dev/input/mice"
   EndSection

If Min/Max values don't work correctly for you, you'll have to adjust that values manually (calibration application doesn't work, the author of the sources himself has stated that, at least at the writing of this how to).

Now search for "ServerLayout" section in the same file, and add this lines just before EndSection

Code:

   InputDevice     "touchscreen"   "CorePointer"
   InputDevice     "dummy"

Note that Section "InputDevice" with Identifier "dummy" and InputDevice "dummy" are only needed if you use xorg > 7.2.

Next, you have to find your monitors name:

Code:

   cat /proc/bus/input/devices

you'll get something like this:

Code:


   I: Bus=0003 Vendor=04e7 Product=0020 Version=0100
   N: Name="Elo TouchSystems, Inc. Elo TouchSystems 2700 IntelliTouch(r) USB Touchmonitor Interface"
   P: Phys=usb-0000:00:10.1-1/input0
   S: Sysfs=/class/input/input2
   H: Handlers=js0 event2
   B: EV=b
   B: KEY=10000 0 0 0 0 0 0 0 0
   B: ABS=100 3

Next, you have to add udev-rules to your system, download and extract "X driver sources V0.8.4":

Code:

   tar -jxvf xf86-input-evtouch-0.8.4.tar.bz2
   cd xf86-input-evtouch-0.8.4

Modify 69-touchscreen.rules file for your monitor, check the bold letters (or if you are using the same monitor as me, I will paste my file for you):

Code:


   # Evtouch udev.rules
   #
   # Because Evtouch can't autoprobe devices we assume that we only
   # Have one device so we can make it like this :P
   #
   # List here your touchscreen, check if it works  and send it to rpms_AT_ilmi_DOT_fi
   # Name can be found in /proc/bus/input/devices (In console make command 'cat /proc/bus/input/devices')
   #
   # Tested on Telepeak  Model 800-Y-Y-V (http://www.telepeak.com). Should work on most eGalax based stuff!
   KERNEL=="event*", SUBSYSTEM=="input", ATTRS{name}=="Elo TouchSystems, Inc. Elo TouchSystems 2700 IntelliTouch(r) USB 
   Touchmonitor Interface", SYMLINK+="input/evtouch_event"
   #
   # This could be also like this (eGalax Inc. USB TouchController)
   # KERNEL=="event*", SUBSYSTEM=="input", ATTRS{idVendor}=="0eef", ATTRS{idProduct}=="0001", SYMLINK+="input/evtouch_event"
   #

Now, copy the file to /etc/udev/rules.d/

That should be it, restart your system, and it should work.