LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   USB Touchscreen in linux / MDK 10.2 (https://www.linuxquestions.org/questions/linux-hardware-18/usb-touchscreen-in-linux-mdk-10-2-a-320319/)

mrado 01-12-2006 07:54 PM

Use the SwapAxes option (option "SwapAxes "1") if your cursor is moving in the wrong direction. Hey ZX_SA do you have a copy of that driver without the device detection part, already compiled? My Elo 2700 controller seems to swap the Z and Y axes. Thanks Much

ZX_SA 01-12-2006 11:57 PM

Quote:

Originally Posted by mrado
Hey ZX_SA do you have a copy of that driver without the device detection part, already compiled? My Elo 2700 controller seems to swap the Z and Y axes. Thanks Much

Nope, there's just the binary that's in the tarball on my website (http://www.softcoded.net/eduard/elousb) which already includes the device detection and I can also give you a newer binary compiled under Ubuntu Breezy with gcc 4.0.

You can just download the tarball, rip out the device detection code and recompile. It's not that difficult to do.

ZX_SA 06-22-2006 02:36 AM

Xorg 7.0
 
Xorg 7 and higher are now using a new modular design for the source tree. Because of this, the hack used to get my original version of the driver compiled no longer worked.

Therefore, I've now made a few modifications and packaged the driver in an autoconf package similar to the xorg driver packages. The new source tarball and a new binary for Ubuntu Dapper is available for download on my website.

bitmaster 08-01-2006 04:29 AM

Hi Eduard,

Thank you very much for your time and effort. Your driver worked perfectly on my Elo touchscreen. The old one that is... I replaced it with your new 7.x driver after upgrading to Dapper with Xorg 7, but the cursor won't move. I didn't change any of the previously working xorg.conf settings. What could be wrong?

Regards,
Albert
The Netherlands

GweeDo767 07-25-2007 11:25 AM

Has anyone tried this driver in Ubuntu 7.04? I am getting the following after installing all the needed pre-req's:

In file included from /usr/include/xorg/xisb.h:32,
from elousb.c:53:
/usr/include/unistd.h:418: error: conflicting types for 'xf86usleep'
/usr/include/xorg/xf86_ansic.h:320: error: previous declaration of 'xf86usleep' was here
In file included from /usr/include/xorg/xisb.h:32,
from elousb.c:53:
/usr/include/unistd.h:936:29: error: macro "getpagesize" passed 1 arguments, but takes just 0
elousb.c: In function 'EloPreInit':
elousb.c:275: error: 'TS_Raw' undeclared (first use in this function)
elousb.c:275: error: (Each undeclared identifier is reported only once
elousb.c:275: error: for each function it appears in.)
elousb.c :277: error: 'TS_Scaled' undeclared (first use in this function)
elousb.c: In function 'ReadInput':
elousb.c:603: error: 'TS_Scaled' undeclared (first use in this function)
elousb.c: In function 'ControlProc':
elousb.c:672: error: 'xDeviceTSCalibrationCtl' undeclared (first use in this function)
elousb.c:672: error: 'c' undeclared (first use in this function)
elousb.c:672: error: expected expression before ')' token
elousb.c: In function 'SwitchMode':
elousb.c:700: error: 'TS_Raw' undeclared (first use in this function)
elousb.c:700: error: 'TS_Scaled' undeclared (first use in this function)
elousb.c :705: error: 'SendCoreEvents' undeclared (first use in this function)
elousb.c:705: error: 'DontSendCoreEvents' undeclared (first use in this function)
elousb.c: In function 'ConvertProc':
elousb.c:734: error: 'TS_Raw' undeclared (first use in this function)
make[2]: *** [elousb.lo] Error 1
make[2]: Leaving directory `/home/touch/Desktop/xf86-input-elousb-X11R7.0-1.0.0.5/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/touch/Desktop/xf86-input-elousb-X11R7.0-1.0.0.5'
make: *** [all] Error 2

rough 09-01-2007 02:24 PM

ELO Public Driver compilation problems
 
I am having the exact same problem while trying to compile the
ELO public driver (i.e. elousb-package). Did anyone come up with a
solution? Please email me: ronrough@verizon.net


Quote:

Originally Posted by GweeDo767 (Post 2836328)
Has anyone tried this driver in Ubuntu 7.04? I am getting the following after installing all the needed pre-req's:

In file included from /usr/include/xorg/xisb.h:32,
from elousb.c:53:
/usr/include/unistd.h:418: error: conflicting types for 'xf86usleep'
/usr/include/xorg/xf86_ansic.h:320: error: previous declaration of 'xf86usleep' was here
In file included from /usr/include/xorg/xisb.h:32,
from elousb.c:53:
/usr/include/unistd.h:936:29: error: macro "getpagesize" passed 1 arguments, but takes just 0
elousb.c: In function 'EloPreInit':
elousb.c:275: error: 'TS_Raw' undeclared (first use in this function)
elousb.c:275: error: (Each undeclared identifier is reported only once
elousb.c:275: error: for each function it appears in.)
elousb.c :277: error: 'TS_Scaled' undeclared (first use in this function)
elousb.c: In function 'ReadInput':
elousb.c:603: error: 'TS_Scaled' undeclared (first use in this function)
elousb.c: In function 'ControlProc':
elousb.c:672: error: 'xDeviceTSCalibrationCtl' undeclared (first use in this function)
elousb.c:672: error: 'c' undeclared (first use in this function)
elousb.c:672: error: expected expression before ')' token
elousb.c: In function 'SwitchMode':
elousb.c:700: error: 'TS_Raw' undeclared (first use in this function)
elousb.c:700: error: 'TS_Scaled' undeclared (first use in this function)
elousb.c :705: error: 'SendCoreEvents' undeclared (first use in this function)
elousb.c:705: error: 'DontSendCoreEvents' undeclared (first use in this function)
elousb.c: In function 'ConvertProc':
elousb.c:734: error: 'TS_Raw' undeclared (first use in this function)
make[2]: *** [elousb.lo] Error 1
make[2]: Leaving directory `/home/touch/Desktop/xf86-input-elousb-X11R7.0-1.0.0.5/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/touch/Desktop/xf86-input-elousb-X11R7.0-1.0.0.5'
make: *** [all] Error 2


Nanners 09-05-2007 03:31 PM

I'm having the same problem under Fedora Core 7. As soon as I run make I also get:


Quote:

In file included from /usr/include/xorg/xisb.h:32,
from elousb.c:53:
/usr/include/unistd.h:420: error: conflicting types for 'xf86usleep'
/usr/include/xorg/xf86_ansic.h:320: error: previous declaration of 'xf86usleep' was here
In file included from /usr/include/xorg/xisb.h:32,
from elousb.c:53:
/usr/include/unistd.h:938:29: error: macro "getpagesize" passed 1 arguments, but takes just 0
elousb.c: In function 'EloPreInit':
elousb.c:275: error: 'TS_Raw' undeclared (first use in this function)
elousb.c:275: error: (Each undeclared identifier is reported only once
elousb.c:275: error: for each function it appears in.)
elousb.c:277: error: 'TS_Scaled' undeclared (first use in this function)
elousb.c: In function 'ReadInput':
elousb.c:603: error: 'TS_Scaled' undeclared (first use in this function)
elousb.c: In function 'ControlProc':
elousb.c:672: error: 'xDeviceTSCalibrationCtl' undeclared (first use in this function)
elousb.c:672: error: 'c' undeclared (first use in this function)
elousb.c:672: error: expected expression before ')' token
elousb.c: In function 'SwitchMode':
elousb.c:700: error: 'TS_Raw' undeclared (first use in this function)
elousb.c:700: error: 'TS_Scaled' undeclared (first use in this function)
elousb.c:705: error: 'SendCoreEvents' undeclared (first use in this function)
elousb.c:705: error: 'DontSendCoreEvents' undeclared (first use in this function)
elousb.c: In function 'ConvertProc':
elousb.c:734: error: 'TS_Raw' undeclared (first use in this function)
make: *** [elousb.lo] Error 1

Nanners 09-07-2007 08:15 AM

Ok, this is a pretty arbitrary and sloppy work around, but it at least gets it to compile.

As a warning please note I'm trying this on a test system which I have very limited needs for, so this probably does break something, I just haven't figure out what yet.

In advance, yes, I know how bad an idea it is to change xorg files without understanding what problems that would cause. At the moment thought I need to get the driver working, and don't have the time to edit the driver directly, so this was the quickest method.

For this you need to change three files.

/usr/include/xorg/xf86_ansic.h
/usr/source/unistd.h
and the elousb.c file that came with the driver.

Add these to the top of elousb.c:

Code:

#define TS_Raw 57
#define TS_Scaled 58
#define SendCoreEvents 59
#define DontSendCoreEvents 60

At line 678 change both entries of xDeviceTSCalibrationCtl to xDeviceAbsCalibCtl.


In /usr/include/xorg/xf86_ansic.h at lines 325/325:

Code:

//#undef usleep
//#define usleep(ul)                xf86usleep(ul)

In /usr/source/unistd.h at line 939:

Changed:

Code:

extern int getpagesize (void)  __THROW __attribute__ ((__const__));
to

Code:

extern int getpagesize ()  __THROW __attribute__ ((__const__));
This allows the driver to compile, and install, at least I think it does. After I reboot after adding the elo touch information I'm now getting an error saying xorg can't find the input driver elousb.

The files elousb_drv.lo and elousb_drv.so where both added to /usr/lib/xorg/modules/input so I've assumed this worked, but I'm not sure since xorg can't seem to find the driver. I'm going to keep working on it, and try to figure out what I potentially broke in xorg with my changes, and look at trying to fix everything in the driver rather than by modifying xorg files.

Nanners 09-10-2007 12:52 PM

I'm currently stuck. I'm getting the following in my Xorg log:

(II) LoadModule: "elousb"
(II) Loading /usr/lib/xorg/modules/input//elousb_drv.so
(EE) LoadModule: Module elousb does not have a elousbModuleData data object.
(II) UnloadModule: "elousb"
(II) Unloading /usr/lib/xorg/modules/input//elousb_drv.so
(EE) Failed to load module "elousb" (invalid module, 0)


Since my experience with Xorg is limited I'm not sure what that means, can anyone provide any suggestions?


All times are GMT -5. The time now is 04:34 AM.