How to install eGalax touchscreen driver?

Booting, installing, newbie
Post Reply
Message
Author
cojogrizli
Posts: 23
Joined: Wed 18 Feb 2009, 15:02

How to install eGalax touchscreen driver?

#1 Post by cojogrizli »

Hello,

I have a problem with the eGalax touchscreen driver.
The default driver usbtouchscreen doesn't work good. The axes are switched and the pointer isn't calibrated. I tried to fix this driver but i didn't handled.

So i have to try with the eGalax driver.
To make this working i've installed the driver. This worked.
But to running it is necessary to install the "tkusb" module.

When i tried to install this one using the eGalax documentation I received this error when i use the comand "make all":
"/lib/modules/2.6.21.7/build: No such file or directory. Stop"

Do you have any ideas how to solve this??

aragon
Posts: 1698
Joined: Mon 15 Oct 2007, 12:18
Location: Germany

#2 Post by aragon »

i would assume, that you need the kernel-sources for your kernel, as you're trying to compile a kernel-module.

as make looks for 2.6.21.7 it looks like if you're running something like 4.X-retro. If so, look here
http://distro.ibiblio.org/pub/linux/dis ... modules-4/

for

kernel-src-2.6.21.7-patched-puppy4.1retro.sfs

aragon

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#3 Post by tempestuous »

I suggest you stick with the usbtouchscreen driver.
Did you install the necessary touchscreen dotpets from here?
http://www.murga-linux.com/puppy/viewtopic.php?t=41286
and also follow all setup instructions?

You should always reveal the Puppy version you are using when asking for help. I see you have kernel version 2.6.21.7 - hopefully this means you have either Puppy v3.x or v4.0 because there are touchscreen dotpets available for these. If you are using v4.1-retro then you're out of luck.
cojogrizli wrote:The axes are switched
Open /etc/xorg.conf in geany, and in this section -
"Section "InputDevice"
Identifier "touchscreen"
add these two lines -

Code: Select all

Option "SwapX" "false"
Option "SwapY" "true"
Restart X for the changes to take effect.

cojogrizli
Posts: 23
Joined: Wed 18 Feb 2009, 15:02

Still doesn't work

#4 Post by cojogrizli »

Thanks for your answers.

I've tried again with your method Tempestuous but it doesn't work.
I followed all the steps from that thread and still i have the same problems with the touchscreen.
Even if I change the xorg.conf adding that 2 lines for reverse axes, it doesn't happening nothing new.

I thing that the touchscreen still using the "usbtouchscreen" driver instead of "evdev".
How can I be sure that the touchscreen is using the "evdev" driver?

Because the single modification in the touchscreen actions is when I change the usbtouchscreen options. I've used the command "rmmod usbtouchscreen" and after that "modprobe usbtouchscreen swap_xy=1". But this just make good just the X axe. The Y axe is still reverse.

I've tried to make this working I thing for ten times but I've still not handled with it.

If you have other suggestion please tell me.

My Puppy version is 4.12

Thanks again for your answers.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#5 Post by tempestuous »

cojogrizli wrote:I thing that the touchscreen still using the "usbtouchscreen" driver instead of "evdev".
How can I be sure that the touchscreen is using the "evdev" driver?
Be careful cojogrizli, touchscreen setup is a complex subject, and you need to be VERY CLEAR.

When you are talking about DRIVERS, there are two distinctly different types of drivers we are dealing with:
kernel modules, and Xorg input plugins.

Regarding kernel modules, my instructions clearly explain that you should be loading BOTH usbtouchscreen AND evdev.
These will be loaded from /etc/rc.d/rc.local

Regarding Xorg input plugins, you should be using EITHER evtouch OR evdev. I would expect for an eGalax unit you should be using evtouch, but if you think it should be evdev, then your /etc/X11/xorg.conf should have this -

Code: Select all

Section "InputDevice"
    Identifier "touchscreen"
    Driver "evdev"
    ...

cojogrizli
Posts: 23
Joined: Wed 18 Feb 2009, 15:02

#6 Post by cojogrizli »

I've followed your topic step by step.

I've used in xorg.conf your example from the thread which you give me and i've set
Driver "evtouch"

When i restart the system both of the module "usbtouchscreen" and "evdev" are loded.

But the touchscreen action is working in the same mode how it work's without to install the evdev driver. The touchscreen has the same action.

I've used the cat /proc/bus/input/devices to see the event of the touchscreen and it is "event5".

My Input Device from xorg.conf for touchscreen is:

Section "InputDevice"
Identifier "touchscreen"
Option "evtouch"
Option "Device" "/dev/input/event5"
Option "DeviceName" "touchscreen"
Option "MinX" "98"
Option "MinY" "43"
Option "MaxX" "940"
Option "MaxY" "925"
Option "ReportingMode" "Raw"
Option "Emulate3Buttons"
Option "Emulate3Timeout" "50"
Option "SendCoreEvents" "On"
EndSection

If I add the lines for switch the axes nothing is changing.

So I thing the touchscreen ignore this setup from xorg.conf. I don't know what is happening.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#7 Post by tempestuous »

cojogrizli wrote:My Input Device from xorg.conf for touchscreen is:

Section "InputDevice"
Identifier "touchscreen"
Option "evtouch"
...
That's wrong. It should be

Code: Select all

Section "InputDevice"
    Identifier "touchscreen"
    Driver "evtouch"
...
Check /var/log/Xorg.0.log to see whether the evtouch plugin is loading.

cojogrizli
Posts: 23
Joined: Wed 18 Feb 2009, 15:02

#8 Post by cojogrizli »

Sorry for this error.
I don't have internet on the computer with puppy so i have to copy the content of the xorg.conf on another one and when I copied i make this error.

In reality the xorg.conf has the correct line:

Section "InputDevice"
Identifier "touchscreen"
Driver "evtouch"
......

So is not this the problem :( .

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#9 Post by tempestuous »

Then check /var/log/Xorg.0.log

cojogrizli
Posts: 23
Joined: Wed 18 Feb 2009, 15:02

#10 Post by cojogrizli »

I thing the problem is that the system doesn't recognise
This is what my Xorg.0.log contain:

X Window System Version 1.3.0
Release Date: 19 April 2007
X Protocol Version 11, Revision 0, Release 1.3
Build Operating System: UNKNOWN
Current Operating System: Linux puppypc 2.6.25.16 #1 Tue Aug 26 10:45:53 GMT-8 2008 i686
Build Date: 28 November 2007
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Module Loader present
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri Apr 24 10:36:57 2009
(==) Using config file: "/etc/X11/xorg.conf"
(==) ServerLayout "X.org Configured"
(**) |-->Screen "Screen0" (0)
(**) | |-->Monitor "Monitor0"
(**) | |-->Device "Card0"
(**) |-->Input Device "Mouse0"
(**) |-->Input Device "touchscreen"
(**) |-->Input Device "dummy"
(**) |-->Input Device "Keyboard0"
(WW) Duplicate core pointer devices. Removing core pointer attribute from "touchscreen"
(**) FontPath set to:
/usr/X11R7/lib/X11/fonts/misc/,
/usr/X11R7/lib/X11/fonts/Type1/,
/usr/X11R7/lib/X11/fonts/TTF/
(**) RgbPath set to "/usr/X11R7/lib/X11/rgb"
(==) ModulePath set to "/usr/X11R7/lib/xorg/modules"
(**) Option "RandR" "on"
(WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
(II) No APM support in BIOS or kernel
(II) Loader magic: 0x81d4520
(II) Module ABI versions:
X.Org ANSI C Emulation: 0.3
X.Org Video Driver: 1.2
X.Org XInput driver : 0.7
X.Org Server Extension : 0.3
X.Org Font Renderer : 0.5
(II) Loader running on linux
(II) LoadModule: "pcidata"
(II) Loading /usr/X11R7/lib/xorg/mo
..............................................

(WW) Warning, couldn't open module glx
(II) UnloadModule: "glx"
(EE) Failed to load module "glx" (module does not exist, 0)
(II) LoadModule: "dri"
(WW) Warning, couldn't open module dri
(II) UnloadModule: "dri"
(EE) Failed to load module "dri" (module does not exist, 0)
(II) LoadModule: "via"
(II) Loading /usr/X11R7/lib/xorg/modules/drivers//via_drv.so
(II) Module via: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 0.2.1
Module class: X.Org Video Driver
ABI class: X.Org Video Driver, version 1.2
(II) LoadModule: "mouse"
(II) Loading /usr/X11R7/lib/xorg/modules/input//mouse_drv.so
(II) Module mouse: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.2.3
Module class: X.Org XInput Driver
ABI class: X.Org XInput driver, version 0.7
(II) LoadModule: "evtouch"
(II) Loading /usr/X11R7/lib/xorg/modules/input//evtouch_drv.so
(II) Module evtouch: vendor="Kenan Esau"
compiled for 4.3.99.902, module version = 0.8.8
Module class: X.Org XInput Driver
ABI class: X.Org XInput driver, version 0.7
(II) LoadModule: "void"
(II) Loading /usr/X11R7/lib/xorg/modules/input//void_drv.so
(II) Module void: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.1.1
Module class: X.Org XInput Driver
ABI class: X.Org XInput driver, version 0.7
(II) LoadModule: "kbd"
(II) Loading /usr/X11R7/lib/xorg/modules/input//kbd_drv.so
(II) Module kbd: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.2.2
Module class: X.Org XInput Driver
ABI class: X.Org XInput driver, version 0.7
(II) VIA: driver for VIA chipsets: CLE266, KM400/KN400, K8M800,
PM800/PM880/CN400
.........................................................


(II) XINPUT: Adding extended input device "Keyboard0" (type: KEYBOARD)
(II) XINPUT: Adding extended input device "dummy" (type: Void)
(II) XINPUT: Adding extended input device "touchscreen" (type: TOUCHSCREEN)
(II) XINPUT: Adding extended input device "Mouse0" (type: MOUSE)
(II) Mouse0: ps2EnableDataReporting: succeeded
(**) Option "Device" "/dev/input/event5"
(EE) xf86OpenSerial: Cannot open device /dev/input/event5
No such file or directory.
(WW) touchscreen: cannot open input device



In the last line he said that cannot be open device event5
I've tried with Option "Device" "usbauto" and i received the same message.

Where can it be the problem?

cojogrizli
Posts: 23
Joined: Wed 18 Feb 2009, 15:02

#11 Post by cojogrizli »

I've used the comand cat /proc/bus/input/devices to see the event of the touchscreen.
In my case is event5.

In my /dev/input folder i have event0, event1, event2, event3, js0, js1, keyboard, mice, mouse, mouse0, mouse1, ttyACM0and ttyACM1.

My touchscreen has a USB connection.
I've put event the line "alias char-major-13-67 evdev" in /etc/modules.conf

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#12 Post by tempestuous »

cojogrizli wrote:(**) Option "Device" "/dev/input/event5"
(EE) xf86OpenSerial: Cannot open device /dev/input/event5
No such file or directory.
(WW) touchscreen: cannot open input device
Yep, there's the problem.

Some good old-fashioned trial and error is in order. I would change the event number to 1 in xorg.conf, and work my way through to 4.

It's not necessary to reboot in between, just restart the X server with Ctrl<Alt>Backspace.

cojogrizli
Posts: 23
Joined: Wed 18 Feb 2009, 15:02

#13 Post by cojogrizli »

I've tired all the options from 1 to 5 but it doesn't works.
After that i've tried with the egalax driver but i have the same problem.

I don't know what i have to do for make this working under Puppy.
This is a CarMedia touchscreen witch has 2 years old.

I make this touchscreen to works under ubuntu 8.04 using the egalax driver with usbtouchscreen. I tried the same method but it doesn't work.
I have to make a java application to work with puppy and this touchscreen. It seems that the time to make this touchscreen working on puppy is longer then the time to make the java application :(

If you have another suggestion for me, I'll be happy to try it.

Thanks for your replies "tempestuous".

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#14 Post by tempestuous »

Forum member tpmoney just reported that the evtouch plugin requires the full Xorg libraries to be installed before the plugin will work properly. So obviously you can try this, but the Xorg package is very large at 20MB compressed -
http://distro.ibiblio.org/pub/linux/dis ... ri-7.3.pet

This made me remember that I recently updated the evtouch plugin to the latest version ... so a possible solution might be to go back to the earlier version. The older version is now attached. If it works, this will be an easier solution than installing the full Xorg libraries.
Attachments
touchscreen-test-Pup4.1.pet
(58.21 KiB) Downloaded 659 times

cojogrizli
Posts: 23
Joined: Wed 18 Feb 2009, 15:02

#15 Post by cojogrizli »

I tried with the both solutions, your net pet and the full Xorg libraries but the problem with the input device:
(**) Option "Device" "/dev/input/event5"
(EE) xf86OpenSerial: Cannot open device /dev/input/event5

still remains.

So I've tied to make a little debug and I seen that the event of the touchscreen is not event5, it is mouse1.
If I plug and unplug the usb touchscreen cable and make ls /dev/input/ appear and disappear "mouse1".

The event associated with my touchscreen is:
H: Handlers=mouse1 event5

I changed the touchscreen device line from xorg.conf to :
Option "Device" "/input/dev/mouse1"
but it doesn't recognize event this option.
(**) Option "Device" "/dev/input/mouse1"
(EE) xf86OpenSerial: Cannot open device /dev/input/mouse1


I thing the toushscreen use the mouse driver when it can load the correct device.


Thanks for your replies.

cojogrizli
Posts: 23
Joined: Wed 18 Feb 2009, 15:02

#16 Post by cojogrizli »

I was my mistake when I change the path to mouse1 because I forgot one "/".
After I correct this and I've restart the Xorg server I have a touchscreen which action more strange.
I tried the option of switching the axes but doesn't work.
Even the calibration is more strange.
I think it is a conflict between the mouse and touchscreen.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#17 Post by tempestuous »

cojogrizli wrote:If I plug and unplug the usb touchscreen cable and make ls /dev/input/ appear and disappear "mouse1".
Sure, your touchscreen is mouse1, but I don't believe this means the correct Option "Device" value should be /dev/input/mouse1. It should be the event number which corresponds to mouse1.
cojogrizli wrote:I think it is a conflict between the mouse and touchscreen.
Yes, possibly. Are you using a USB mouse? Maybe you would have a better result if you use a PS/2 mouse?

Or it might be worth seeing if the touchscreen works in the absence of a mouse - try booting the computer with NO mouse attached.

Post Reply