LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Debian
User Name
Password
Debian This forum is for the discussion of Debian Linux.

Notices

Reply
 
Search this Thread
Old 04-10-2008, 11:57 AM   #1
knobby67
Member
 
Registered: Mar 2006
Posts: 531

Rep: Reputation: 42
touch screen


I all, I've been trying to set up a touch screen but am having a few prolems, he's what I do

1. modprobe usbtouchscreen
2. modprobe evdev
3. cat /proc/bus/input/devices

No touch pad is detected, however if I disconnect the screen USB and reconnect it appears.

I: Bus=0003 Vendor=0596 Product=0001 Version=0410
N: Name="3M 3M USB Touchscreen - EX II"
P: Phys=/input0
S: Sysfs=/class/input/input3
H: Handlers=mouse1 event3 ts1
B: EV=b
B: KEY=400 0 0 0 0 0 0 0 0 0 0
B: ABS=3

However the screen touch positions are are off (eg touch bottom and it mouse is at to ect). Can anyone help me out? First why do I need to dis and re connect the screen for it to be detected. Second how can I calibrate it.
I've seen internet notes on using xorg.conf, but when I try it just crashes xorg.

I'm running on etch.

Thanks
 
Old 10-22-2008, 09:46 AM   #2
damko
LQ Newbie
 
Registered: Oct 2008
Location: Como - Italy
Distribution: mint
Posts: 4

Rep: Reputation: 6
Hi
I'm working on a Micro Touch usb (17") too right now.

Code:
cat /proc/bus/input/devices 

I: Bus=0003 Vendor=0596 Product=0001 Version=0410
N: Name="3M 3M USB Touchscreen - EX II"
P: Phys=usb-0000:00:10.0-1/input0
S: Sysfs=/class/input/input2
U: Uniq=
H: Handlers=mouse0 event2 
B: EV=b
B: KEY=400 0 0 0 0 0 0 0 0 0 0
B: ABS=3
I'm on a debian Lenny 32bit installed few days ago and kernel 2.6.26-1-686.

Loaded kernel modules:
evdev
usbtouchscreen

Code:
Xorg -version

X.Org X Server 1.4.2
Release Date: 11 June 2008
X Protocol Version 11, Revision 0
Build Operating System: Linux Debian (xorg-server 2:1.4.2-7)
Current Operating System: Linux videostation 2.6.26-1-686 #1 SMP Thu Oct 9 15:18:09 UTC 2008 i686
Build Date: 30 September 2008  01:48:58AM
 
	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
Module Loader present
This is my xorg.conf:
Code:
Section "InputDevice"
        Identifier "TouchScreen"
        Driver "mutouch"
        Option "Type" "finger"
        Option "Device" "/dev/input/touchscreen"
        Option "ScreenNo" "0"
#       Option "SwapXY" "1"
#       Option "SwapX" "1"
#       Option "SwapY" "1"
EndSection
My monitor is recognized every time without plugging and unplugging the usb cable.

When I run X I can move the mouse but X and Y axes are switched. To solve this I did
Code:
echo Y >  /sys/module/usbtouchscreen/parameters/swap_xy
Unfortunatly X and Y are inverted, i.e. if I move my finger to the left the cursor moves to the right. The same for top and bottom.

Unfortunately these options are not working:
# Option "SwapXY" "1"
# Option "SwapX" "1"
# Option "SwapY" "1"
Uncommenting them gives no results.

Did you find a way to solve the issues?
Any help is really much appreciated
 
Old 10-23-2008, 12:13 PM   #3
knobby67
Member
 
Registered: Mar 2006
Posts: 531

Original Poster
Rep: Reputation: 42
Yes changed to ELO
 
Old 11-03-2008, 07:26 AM   #4
damko
LQ Newbie
 
Registered: Oct 2008
Location: Como - Italy
Distribution: mint
Posts: 4

Rep: Reputation: 6
yes

Quote:
Originally Posted by knobby67 View Post
Yes changed to ELO
yes elo driver ("evtouch" in Xorg) works for me too also if this monitor is 3m
 
Old 09-09-2009, 12:20 PM   #5
windsword
LQ Newbie
 
Registered: Sep 2009
Posts: 2

Rep: Reputation: 0
MicroTouch, 3M, Fedora 9

I have a 15" touchscreen display and have some problems getting it working.
I installed the drivers, but I still have some basic problems, for example when I type:
Code:
cat /proc/bus/input/devices | grep Name

N: Name="Power Button (FF)"
N: Name="Power Button (CM)"
N: Name="Macintosh mouse button emulation"
N: Name="HID 0566:3107"
N: Name="HID 0566:3107"
N: Name="USB Optical Mouse"
N: Name="PC Speaker"
I don't see the "3M USB Touchscreen" under "N: Name=" When I check dmesg, I get the following:
Code:
usb 8-1: new full speed USB device using uhci_hcd and address 3
usb 8-1: configuration #1 chosen from 1 choice
pl2303 8-1:1.0: pl2303 converter detected
usb 8-1: pl2303 converter now attached to ttyUSB0
usb 8-1: New USB device found, idVendor=1453, idProduct=4026
usb 8-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 8-1: Product: USB-Serial Controller
usb 8-1: Manufacturer: Prolific Technology Inc.
This is the RaidoShack usb-to-RS232 serial converter cable. This makes me wonder if I'm using the wrong usb-rs232 cable?
 
Old 09-18-2009, 01:16 PM   #6
davea0511
LQ Newbie
 
Registered: Nov 2004
Posts: 11

Rep: Reputation: 1
Quote:
Originally Posted by damko View Post
...

Unfortunately these options are not working:
# Option "SwapXY" "1"
# Option "SwapX" "1"
# Option "SwapY" "1"
Uncommenting them gives no results.

Did you find a way to solve the issues?
Any help is really much appreciated
I hear that simply switching the MinX value with the MaxX value will invert the axis. Gonna try this myself ... maybe I'll remember to post the results.
 
Old 09-20-2009, 06:33 PM   #7
davea0511
LQ Newbie
 
Registered: Nov 2004
Posts: 11

Rep: Reputation: 1
Quote:
Originally Posted by davea0511 View Post
I hear that simply switching the MinX value with the MaxX value will invert the axis. Gonna try this myself ... maybe I'll remember to post the results.
Nope, didn't help.

In fact, it seems no matter what I put into xorg.conf the touchscreen doesn't change. Calibration is way off, and even drifts as I'm using it ... like it's not evey trying ... and x-axis is reversed. "Option "SwapX" "1" does nothing. I checked Dmesg and get this:
Code:
input: 3M 3M USB Touchscreen - EX II as /devices/pci0000:00/0000:00:10.1/usb2/2-1/2-1:1.0/input/input4
and cat /proc/bus/input/devices gives me this:
Code:
I: Bus=0003 Vendor=0596 Product=0001 Version=0410
N: Name="3M 3M USB Touchscreen - EX II"
P: Phys=usb-0000:00:10.1-1/input0
S: Sysfs=/devices/pci0000:00/0000:00:10.1/usb2/2-1/2-1:1.0/input/input4
U: Uniq=
H: Handlers=mouse1 event4
B: EV=b
B: KEY=400 0 0 0 0 0 0 0 0 0 0
B: ABS=3
So that all looks good. I set up xorg.conf like this:
Code:
Under ServerLayout:
        InputDevice "touchscreen" "CorePointer"

later added ...
Section "InputDevice"
    Identifier "touchscreen"
    Driver "evtouch"
    Option "Device" "/dev/input/event4"
    Option "DeviceName" "touchscreen"
    Option "MinX" "2500"
    Option "MinY" "2500"
    Option "MaxX" "13500"
    Option "MaxY" "13500"
    Option "ReportingMode" "Raw"
    Option "Emulate3Buttons"
    Option "Emulate3Timeout" "50"
#    Option "Calibrate" "1"
    Option "SwapX" "1"
    Option "SendCoreEvents" "On"
EndSection
Also changed "CorePointer" to "SendCoreEvents" since my mouse was already "CorePointer", but no effect. Changed the mouse to "SendCoreEvents" and made the touchscreen "CorePointer", then X wouldn't start because it said I hadn't defined a "CorePointer", but I really had because "touchscreen" was defined as the "CorePointer". In otherwords it looks like xorg.conf is ignoring my touchscreen.

Of course, I have evtouch_drv.so in the /usr/lib/xorg/modules/input/ directory.

I've also added modprobe usbtouchscreen and modprobe evdev to /etc/init.d/rc.local (incidentally I get no feedback when I do this at the prompt, even with -v (verbose) switch - but I don't knwo if this means anything).

I changed xorg.conf to look at Option "Device" "/dev/input/event5" (as apparently it sometimes gets incremented after X restarts). No joy so I changed back to event4.

From another discussion someone had success making it work by creating a udev rule to force the touchscreen to behave properly so xorg.conf would recognize it.

So I also made a udev rule (created: /etc/udev/rules.d/010-local.rules) to force the touchscreen to /dev/input/touchscreen instead of /dev/input/event4 since it seems like xorg.conf isn't setting up the screen at all, and then changed xorg.conf to look for /dev/input/touchscreen instead of /dev/input/event4. The rule looked like this:
Code:
new file: /etc/udev/rules.d/010-local.rules
====
SUBSYSTEMS=="usb", DRIVERS=="usbtouchscreen", KERNEL=="event*", SYMLINK+="input/touchscreen"
Unfortunately after restarting X it looks like /dev/input/touchscreen is NOT getting created and when I do a cat /proc/bus/input/devices it shows the touchscreen still on event4. Argh! Why isn't udev working ... is there something wrong with my code there? It seems to be doing nothing.

I've been pulling my hair out on this for a week, even trying with 3 different distros (SamLinux - like mandriva, knoppix - debian derivative which I learned on, and kanotix - a more apt-able version of knoppix), with no difference - xorg.conf seems oblivious to what I'm trying to do. I'm running out of ideas. Ideas anyone?

Ultimately, based on the output above it seems to me (and if I'm wrong PLEASE point out where) that the failure is xorg.conf's inability to set it up with any calibration at all. It's like it doesn't even see it. I really could use some help.
 
Old 09-21-2009, 03:39 AM   #8
knobby67
Member
 
Registered: Mar 2006
Posts: 531

Original Poster
Rep: Reputation: 42
I could never get 3M to work elo works like a dream.
 
Old 09-23-2009, 03:58 AM   #9
davea0511
LQ Newbie
 
Registered: Nov 2004
Posts: 11

Rep: Reputation: 1
Fixed with ubuntu

Wow ... talk about easy. I read about doing this in one of my searches and it seems so easy I quickly dismissed it. Anyway, if you're not married to your distro (I'm not) and this doesn't work for you, try ubuntu which "out-of-the-box" does FDI policy instead of X config files. I just installed the evtouch package through their Synaptic Package Manager, created an intrepid fdi policy file, replug in the touchscreen USB cable, and boom! It worked and even seemed perfectly calibrated (though I imagine that was a fluke). I didn't even have to restart X.

Here's the details:
1) install xserver-xorg-input-evtouch (I used synaptic package manager ... universe repository enabled)

2) lshal | grep input.product
make note of the name of your touchscreen when it comes up (mine was "3M 3M Touchscreen - EX II", it could also be "MicroTouch Systems, Inc. MicroTouch USB Touchscreen - EX II" if it's a 3M, and I think this will work with just about any other brand USB touchscreen too. evtouch is the driver to use if you have an USB touchscreen.)

3) Create the file /etc/hal/fdi/policy/touchscreen.fdi containing the following:
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
        <device>
                <match key="input.product" contains="3M 3M Touchscreen - EX II">
                        <merge key="input.x11_driver" type="string">evtouch</merge>
                        <merge key="input.x11_options.MinX" type="string">14200</merge>
                        <merge key="input.x11_options.MaxX" type="string">2160</merge>
                        <merge key="input.x11_options.MinY" type="string">2580</merge>
                        <merge key="input.x11_options.MaxY" type="string">13800</merge>
                </match>
        </device>
</deviceinfo>
Notice the "<match key=" statement contains the value obtained in Step 2.

Step 4: Unplug and plug back in the touchscreen. It should now work, no need to restart X! Didn't even need to recalibrate - it's right on.

Note: After installing evtouch, "System->Administration->Calibrate Touchscreen" appears. Using this tool (at least for this particular chipset) results in an inverted X-axis. Don't touch it.

Last edited by davea0511; 09-23-2009 at 11:45 AM.
 
Old 09-23-2009, 12:41 PM   #10
davea0511
LQ Newbie
 
Registered: Nov 2004
Posts: 11

Rep: Reputation: 1
For more information on the above method check out this link on HAL:

http://www.freedesktop.org/wiki/Software/hal

You might as well get used to it ... from what I've read it looks like this is the future of Xorg (the the dismay of some who like to hard-code things). No more hard-coding anything into an xorg.conf file. It all works on a "hardware Abstraction Layer", kind of like how "plug-n-play" works in windows I think. HAL takes care of getting the plug-n-play info when a USB device is plugged in (or firewire, I'm sure) and then sets it up in xorg for you. In the above case I still had to create a policy file but I think ultimately the plan is that it would do that for you as well, or maybe xorg would do that part of it but the content seems it would be independent of the hardware so it should be pretty cut-and-paste.

Anyway, in my Ubuntu distro the xorg.conf contains almost nothing and contains this blurb at the top:

# Note that some configuration settings that could be done previously
# in this file, now are automatically configured by the server and settings
# here are ignored.

Very cool if you ask me. Wish I'd have tried it a week ago, before I wasted all that time on hard-coding everything as I did to no avail.
 
Old 10-28-2009, 10:51 AM   #11
davedumas0
LQ Newbie
 
Registered: Oct 2009
Posts: 8

Rep: Reputation: 0
i have the same touch screen but mine is a serial and my mobo does not have a serial port i do have a usb adapter im runing x64 ubuntu with 2.6 kernel but ubuntu does not see the touch screen at all (the monitor works but no touch) im not sure what to do now




any help would be apreciated
 
Old 10-29-2009, 04:27 AM   #12
knobby67
Member
 
Registered: Mar 2006
Posts: 531

Original Poster
Rep: Reputation: 42
Quote:
Originally Posted by davedumas0 View Post
i have the same touch screen but mine is a serial and my mobo does not have a serial port i do have a usb adapter im runing x64 ubuntu with 2.6 kernel but ubuntu does not see the touch screen at all (the monitor works but no touch) im not sure what to do now




any help would be apreciated


Have you made sure the rs-232 is working? If not...
First make sure your usb-rs232 is working, it should be auto detected (at least the ones I've used are) in 2.6. If you haven't got a rs232terminal download one, lots on net or apt-get. You'll need to work out what it's /dev is. You can then start up the terminal and attach a wire across the tx-rx pins on the rs232, you should then see what you type reappear in the rs232 terminal receive window.
 
Old 10-30-2009, 10:31 AM   #13
davedumas0
LQ Newbie
 
Registered: Oct 2009
Posts: 8

Rep: Reputation: 0
here is my lsusb

#Bus 001 Device 005: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC

and here is dmesg
#[ 862.489652] usb 1-7: new full speed USB device using ohci_hcd and address 10
[ 862.707923] usb 1-7: configuration #1 chosen from 1 choice
[ 862.710876] ftdi_sio 1-7:1.0: FTDI USB Serial Device converter detected
[ 862.710897] /build/buildd/linux-2.6.24/drivers/usb/serial/ftdi_sio.c: Detected FT232BM
[ 862.710951] usb 1-7: FTDI USB Serial Device converter now attached to ttyUSB0
i think the usbconverter is working?
im not sure what to do
 
Old 10-30-2009, 10:42 AM   #14
davedumas0
LQ Newbie
 
Registered: Oct 2009
Posts: 8

Rep: Reputation: 0
i can run #cat /dev/ttyUSB0
and touch the screen and i do get output

Last edited by davedumas0; 10-30-2009 at 10:45 AM.
 
Old 10-31-2009, 04:37 AM   #15
knobby67
Member
 
Registered: Mar 2006
Posts: 531

Original Poster
Rep: Reputation: 42
As I don't know what you've done I'll ask, sorry if you have

1 Have you downloaded and installed the correct drivers?
2 Have you made sure you've put the touchscreen into xorg?


3. If you get output from the screen, it must be driver or xorg set up. Have you tried cat /proc/bus/input/devices to see if it's seen as an input devicce
 
  


Reply

Tags
linux, touchscreen, usb


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
3M touch screen CT150 ibmircea Linux - Hardware 0 09-14-2007 11:50 AM
Do you have a touch screen monitor metalx1000 Linux - Hardware 1 02-26-2007 04:13 PM
touch screen Teus Linux - Software 1 12-04-2004 12:19 PM
3M touch screen driver B0ryz Fedora 0 06-16-2004 12:18 PM
TOUCH SCREEN tfrye Linux - General 0 04-25-2001 03:04 PM


All times are GMT -5. The time now is 12:22 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration