I-Appliance BBS
The Official Source for Internet Appliance Upgrades and Mods
Amazon Honor System Click Here to Pay Learn More
BBS Main List | Sign In | Sign Up | Search | Help | Linux-Hacker.netReply to Thread | Printer |

Home / Other I-Appliances / Gateway/AOL Connected Touch Pad
Touchscreen Configuration in Linux
Touchscreen Configuration

New MessageTouchscreen Configuration in Linux (modified 0 times) Spanqboy
Profile
Hi All,

I just completed an install of RH 8.0 on my GCT (ethernet model).

Surprisingly, nearly everything is working!! The only thing left (besides my Orinoco USB wireless adapter...) is to get the touchscreen working.

Has anyone gotten their touchscreen to work in Linux?

Thanks in advance for your help.

spanqboy sends...

03-24-2003 22:41:12

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) drun
Profile
Can you get the driver from the Midori Build by chaezewhiz?

Just guessing,
-Drun

03-25-2003 14:11:39

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) chaezewhiz
Profile | Email
Spanqboy-
  You will have to patch and recompile the kernel (this enables the mk712 character device).
  Once that is done, you will have to patch and recompile X. I've gotten X4.3.0 working,
  but I haven't posted the package yet. You'll also need the xtouch (from midori) daemon
  to get everything talking.

-chaeze


Miracle in a Can
03-25-2003 19:02:49

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) Spanqboy
Profile
Chaeze,

Thanks for the feedback, although I have to admit it may be beyond what I have time to invest in doing.

Since this operation will require recompiling the kernal, aren't there some performance/optimization for the transmeta chip that can also be enabled? I recall seeing some discussion about some transmeta-specific optimizations that take advantage of the Crusoe chip.

Cuz' right now this sucker is running like molasses (i.e 40 seconds to launch Mozilla)!

spanqboy sends...

03-25-2003 21:11:14

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) chaezewhiz
Profile | Email
Spanqboy-
  Well you can set the kernel arch type to CRUSOE during the kernel config. Thats about the only
  optimization that I know of. Oddly enough, running mozilla/phoenix from the CF probably beats
  your time (barely).

-chaeze


Miracle in a Can
03-26-2003 19:45:27

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) dcarr
Profile
I'm trying to make this work with RH 6.2 -- it seems to be faster than 8.x or 7.x in my experience. I'll do a console only install and then recompile the kernel 2.4.19-20? (I think the MK712 patches are now part of the main tree. Correct me if I'm wrong.) Can I then just compile the source and patches used in chaeze's X mlz package? Chaeze, which patches (Kernel/midori) am I going to need?

Also a slightly related note compiling all this stuff is going to take ALL day on the GCT, is it thermally stable for that long? (the heatsink on mine gets pretty hot.) What would happen if I compiled this on my XP2000 machine (in 6.2) and copied the binarys over?

Sorry for the long post; if I make this work I'll put together a basic tutorial or something,
-David

03-31-2003 15:26:12

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) chaezewhiz
Profile | Email
dcarr -
  Alright, you'll need the 2.4.20 kernel. The mk712 device is in the source tree, but I submitted a patch
  that corrected a bug in earlier kernel releases (self kudos). You should not need any other patch for
  the kernel. Although, since your compiling the kernel anyway, you might want to check out the kernel
  preemptive patch. I've been running it under my midori builds and it seems a bit perkier.

  To get Xfree working you will need to grab the Xfree mlz from transmeta and use their patches. You
  should only be interested in the calibration and mk712 patches. If you give me a few days, I'll upload
  my X-4.3.0 mlz and you can grab the updated patches from there.

  You will also need the xtouch program. It handles the calibration routines.

  For the compiling process, you should definitely compile it on your desktop machine. Then you have two
  options on how to install. Either install it to a local directory (ie. make DESTDIR=/gct install) and
  tar it up from there or after you can compile it, mount the build directory over to the GCT and run
  install from there.

  If you make a howto for this, I will definitely mirror it for you.

-chaeze


Miracle in a Can
03-31-2003 22:20:55

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) dcarr
Profile
An update,
I've sucessfully compiled a preemptable 2.4.20 with chaeze's kernel config posted on his site (strangely it did not appear the mk712 was enabled by default.) I also downloaded an compiled X 4.0.3 with the mk712 and calibration patches. I tarballed the compiled install and plan to mount it on the GCT before issuing a "make install." I'm going to use RULE to create a small (no X) RH 7.2 install and then install X and the new kernel. I'll keep you guys posted on my progress. Will "make World" in X create the necessary x libs?
-DC
04-03-2003 15:44:32

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) n1gp
Profile
I took a "onetouch" touchscreen driver and modified it to run
with the MK712 controller. You may find this to work a bit
better than the xtouch app. I didn't update the documentation
for the driver, although most of it applies to the MK712, I did
add some extra functionality (like swipe functions) that you'll
see if you view the patch.

1st you'll need the 1.2 onetouch tarball located at:
ftp://ftp.gnudd.com/pub/onetouch/onetouch-1.2.tar.gz

Then my patch:
http://home.comcast.net/~n1gp/gct/onetouch-1.2_MK712.diff.gz

Also my example XF86Config:
http://home.comcast.net/~n1gp/gct/XF86Config.gz

This init.d file shows how I handle calibrating the screen
one first use (I'm using cheazewhiz's Midiori):
http://home.comcast.net/~n1gp/gct/Onetouch.gz

Make sure you have the MK712 support in your kernel.

I believe cheazewhiz is planning to put this in his next
Midori release but you should be able to use this with any
XFree86 4.x setup

07-18-2003 13:35:42

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) Sciallo
Profile
I'm getting to really like Debian and the whole apt-get system although I'm fairly new at it.

My goal: A Debian HD install on the GCT with X and touch. Wireless mini-PCI described here:
http://www.linux-hacker.net/cgi-bin/UltraBoard/UltraBoard.pl?Action=ShowPost&Board=aolgw&Post=453&Idle=0&Sort=0&Order=Descend&Page=0&Session=sciallo.106557229792459


I recompiled the kernel (used 2.4.22) with preempt patch and using chaezewhiz config file with "make oldconfig". Then whent back at it again with "make menuconfig" to change and add a few things such as USB radio etc.


I didn't patch the kernel for the mk712 that's been submitted and comes with post 2.4.20 kernels right?


It's the first time I get to compile the kernel on first shot without any problem. Thanks for a good start with the configure file chaezewhiz!


I'm a little confused about compiling X and keeping apt-get happy with dependencies. Should I use "apt-get source" to get the already "debianized" source, patch that and make a .deb file? if so which source package? xfree86-common, x-window-system, xserver-xfree86 ??


I would shoot for whatever is easiest, but If I end up making my first .deb package (might need some help there) I'll upload it somewere for others to enjoy.


something else I'm confused about:
n1gp, wrote:


I took a "onetouch" touchscreen driver and modified it to run with the MK712 controller. You may find this to work a bit
better than the xtouch app.


That just replaces the xtouch application right? It doesn't get me out of recompiling X is that correct?
"Your mouse has moved. You must now restart windows for the changes to take effect. [OK]"
10-07-2003 19:28:10

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) Sciallo
Profile
COMPLETELY FRUSTRATED!

I managed to create .deb files by:
Getting the source with apt-get source, patching them and recompiling to custom .deb files.

I had to go to debian "unstable" to be able to use them, it all works ok BUT still no touchscreen. X starts and seem to work fine otherwhise but when I stop X (and in it's logs) I see:

/var/log/XFree86.1.log:(II) LoadModule: "mk712"
/var/log/XFree86.1.log:(WW) Warning, couldn't open module mk712
/var/log/XFree86.1.log:(II) UnloadModule: "mk712"
/var/log/XFree86.1.log:(EE) Failed to load module "mk712" (module does not exist, 0)
/var/log/XFree86.1.log:(EE) No Input driver matching `mk712'

I tried to find the xtouch program and couldn't find it anywhere other than in the midori distro. That will not compile unless I got the whole midori beast installed. Is that the only way to get that?

The other one (the one suggested by n1gp) just does not want to compile with 4.3.0

I do have the mk712 enabled in my kernel .config. Does it work? No clue, how do I find out? what's the /dev/ supposed to be? I have no /dev/touchscreen or tscreen or t-anything for that matter!

Did anyone actually ever succeed with the touchscreen and a non midori distro as described here?

PLEASE HELP. I'm ready to rip the F%^& touchscreen off of it and go buy a ELO replacement.


"Your mouse has moved. You must now restart windows for the changes to take effect. [OK]"
10-17-2003 23:42:01

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) Sciallo
Profile
Ok, calmed down, I need some sleep.

I didn't have the libs installed :)

I got xtouch compiled. Now my problem is that I don't have the touchscreen anywhere in the /dev/. I had the mk712 set to Y in the kernel .config when compiled. (used chaeze's config as a start)

Did it not compile right? Do I need to create the device with MAKEDEV? if so how?

Of course, I'll continue the monologue once I figure it out :)


"Your mouse has moved. You must now restart windows for the changes to take effect. [OK]"
10-18-2003 01:03:33

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) dcarr
Profile
I've done it. Well it works but not automagically yet (I have to manually start xtouch). Umm lets see...

1. You do need to create the /dev/ device -- it should have major 10 and minor 15
The command I used: (device name may be different) mknod --mode=644 /dev/tscreen c 10 15

2. My GCT is currently running a hacked PXES thin client distro
I have a GCT-tscreen enabled binary (compiled on RH 7.3) X tarball laying around that I can dig up if it would be helpful
-DC

10-19-2003 21:22:24

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) Sciallo
Profile
dcarr,

Thanks for the reply, I was on IRC asking about how to make a device in /dev as you were typing that

I've been microsoft free for about a year and a half now and it was the first time I had to make one. In my head it was much more complicated ad a bigger deal than it really is!

Having done that, I confirmed that my kernel complile is fine and the touchscreen works, I ran ./dump-mouse (compile that with 'make dump-mouse') and it works.

I did recompile xfree86 from debian sources and ended up with binary debs (a whole bunch of them). If I startx and run the calibration script - it works fine, I guess I need to tune/choose the right window manager as different ones have different weird behaviours and instances where the touch just stops working. What would be a startup script to get the xtouch to run when starting X? Especially If I start x with X -query 192.168.1.11 I then don't really have an option to run the xtouch locally.

Even though for the most part it works, I still get:
(EE) Failed to load module "MK712" (module does not exist, 0)
and
(EE) No Input driver matching `mk712'
In the logs. Is this normal or am I missing some module from my xfree recompile?

Next I'll try to get the onetouch compiled. (need to fill some dependencies still)

For future readers, here is a couple of things:

- Don't try compiling stuff at 4 am with squinty eyes I figured out the next day that the "real" sources for xtouch are in the src/ folder of that tarball doh!

- xtouch.c has '#define SAVE_FILE "/tmp/config/xtouch"' near the top of it. Makes sense for the midori since that's in a writeable partition and it gets saved. In normal linux use I would change that to something more meaningful and permanent like /etc/xtouch. I'm guessing to recalibrate you'd delete that file and start xtouch again, could make a script that does that.

More later


"Your mouse has moved. You must now restart windows for the changes to take effect. [OK]"
10-20-2003 08:13:52

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) Sciallo
Profile
Well, the onetouch is a no-go for me.

I even tried recompiling x without the patches from chaezewiz. I'll have to stop guessing with that and hope that n1gp comes back around with maybe a little more detail on how to get it going.

The compile of it went ok once I reunpacked the sources and fed them to make as per instructions. I was missing a lot of the packages needed for the docs to compile so I satisfied that. Still the 'make install' gave me errors and exited on some docs stuff. :/

It did however install the programs in /usr/bin and made the module onetouch_drv.o that I moved to the proper location. Xfree finds and uses this. Only complain is 'Symbol sqrt is unresolved' wich I don't think should be a problem.

At first the pointer responds to touch by shooting to the left side of the screen. It works but needs calibration? Well, the calibration program comes up and tells me to touch targets, but does not respond to any touch at all. The onetouch_control seems to work (at least on off parts) and I tried on and off before calibrating. onetouch_to_ascii doesn't do anything other than hang 'till ctrl+c. No response to touch.

I give up on that for now and I'm back to xtouch.

Would be nice to get a _drv.o out of that too (or am I supposed to get it out of recompiling the patched X?


"Your mouse has moved. You must now restart windows for the changes to take effect. [OK]"
10-20-2003 23:04:47

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) dcarr
Profile
Glad you got the device created.

About starting xtouch when connecting to a remote XDMCP server (X -query blah ),
I'm doing this from memory but I'll try to check it out later. What you want to do is add the -ac option to the X command line. This disable access control (could be bad but probably not) so that xtouch can connect to the local display. Then export DISPLAY=":0.0" and then run xtouch from another console on the GCT. Touchscreen should now work at the login screen. After you've logged in to the remote host you'll discover that the touchsceen does not work. To fix this (at the expense of the local mouse stick thing) you need to use xsetpointer. Run this command in an xterm or similar after you've logged in, "xsetpointer -l" should list the pointing devices. You should see something that sounds like your touch screen. Then run "xsetpointer [pointername from the list]". You should now be able to use the touch screen. You can re-enable the mouse-stick on the keyboard with xsetpointer. I haven't found any way around this "one or the other" approach when using XDMCP. There might be a solution though that I don't know of.

Note Ctrl+Alt+1, Ctrl+Alt+2... enable you to switch consoles even if X is running (my X display is on 7 but yours may differ)

So basically:
On GCT console 1:
X -ac -query 192.168.123.3

On GCT console 2:
export DISPLAY=":0.0" This assumes that your local display is :0.0 (it could be :1.0, :2.0 or simply :1, etc)
xtouch

[log into the remote host using X]
open xterm
xsetpointer -l
xsetpointer [touchscreen name from above command]

Try that
-DC

10-21-2003 11:09:43

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) dcarr
Profile
One more question...
I use the xtouch with the bestfit patch. The default midori calibration is pretty good for me but when I recalibrate using xtouch I often sit there for 20min doing the "tap this X" thing trying to calibrate (it doesn't accept the inputed values--so it makes you try again) and even when it works its often off by a lot (1/8"+). Do you use the xtouch bestfit patch? Have you had any calibration issues and is your pointer accurate relative to where you touch the screen? Thanks,
-DC
If so perhaps you could post your values, I would appreciate it. Even if my hardware isn't exactly the same it might be useful.
10-21-2003 11:14:51

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) Sciallo
Profile
Hmm, the X -query solution makes perfect sense but seems like a lot to do every time you connect to a x server, In that case of use for the gct, I would almost want it to connect straight to the remote X from startup. I'm sure some of that if not all can be streamlined into shell script, but still, it's not how it is supposed to work. (Please confirm: do You get a
'Failed to load module "mk712" (module does not exist, 0)' in the log? and are you using the chazewiz example config file?).
The mk712 is supposed to be a xfree86 module. the patches from the X-4.3.0 midori add that in the xfree source. I went back into the source tree and realized that not only the module doesn't get created but it doesn't even create a Makefile in that subdirectory. That patch is as good as not applying it (unless I'm as good as a windows user and am totally missing something.) If that created the mk712_drv.o our troubles would stop there and there would be absolutely no need to run xtouch manually at all (other than maybe to calibrate at first.

The onetouch does exactly that: it compiles a _drv.o and works without having to manually run anything. Too bad the calibration prog. doesn't work for me. (maybe I should go back to Windoze: click here click there, reboot twenty times and when it crashes I get to click "OK" before I have to actually pull the plug :)

I really AM bummed about not being able to get the onetouch rolling. It looks like it has some really neat features such as a little panel that let's you choose center or right click on the next tap on the fly.


...and even when it works its often off by a lot (1/8"+). Do you use the xtouch bestfit patch? Have you had any calibration issues and is your pointer accurate relative to where you touch the screen?

One eight of an inch? doesn't sound that incredibly bad to me. Mine seems to be pretty precise, but I'm not sure it beats the 1/8".

The bestfit patch... ?? dunno, I guess not. is it mentioned in this or other threads?

A few times got me to touch the "X" twice around, but never 20 minutes, at the most three times around. Precision seems ok to me once it works.

If by values you mean my calibration values, (/etc/xtouch) here they are.

3963 3836 138 341

I'm pretty sure every gct is different.


"Your mouse has moved. You must now restart windows for the changes to take effect. [OK]"
10-21-2003 21:01:39

New MessageRE:Touchscreen Configuration in Linux (modified 0 times) Sciallo
Profile
Holy Cow,

n1gp mentioned that you can tell things from reading the diff file. He ment it!

The onetouch_calib file is worthless for the gct. You calibrate with 'onetouch_control calibrate' Took me long enough. Works good! Now to test the onetouch_panel (cross my fingers...) hmm Nope. It works at first but then it hangs and doesn't change state anymore... I'll see If I can figure that one out too.

Also other functions he added in the onetouch_control are:

dragtog
and
swipetog

Nice that those can be toggled, (Could be two more buttons for the panel if I got good at it :)

I'm happier now :)

Drawback, you'll need the XF86 filetree as you compiled it to compile this one and you'll need to feed it to the make when making the _drv.o.


"Your mouse has moved. You must now restart windows for the changes to take effect. [OK]"
10-21-2003 23:24:40

Reply to Thread | Printer |
All times are PSTPowered by UltraBoard v1.62



Copyright © 2000, Netmake Inc. All Rights Reserved.
See Terms and Conditions for more information.




i-opener opener laptop notebook computer help drivers dll free windows dos repair fix linux mac macintosh 2000 95 98 nt pc configure hardware software sound video netscape explorer network networking lan wan software cmos fat bios printer card mouse modem ide scsi cd rom controllers scanner tape hard drive cgi scripts source code mp3