You are not logged in.
This is a how-to for linux beginners, like me. For installation options, there are many on this forum.
Warning: when you go into superuser mode, you can really mess things up and even disable your computer, so, be VERY careful not to mistype anything. And, get out of superuser mode as soon as you are finished changing files (type exit on command line).
If you really mess up your system files, you may end up restoring from the DVD, as described by others.
1. buy a Xandros compatible controller with the touchscreen. So far, I have only seen fido-dido999 in Taiwan selling one that is known to work easily (I have no financial or other connections with the seller. He’s been pleasant and responsive by emails).
When I ordered it on ebay, I added $5 for the Xandros upgrade and $1 for a short length of ribbon cable, since I needed some fine wire to work with. I added these on the paypal invoice and put a note to Jeff that I had added in for the “extras”. Shipping only took 3 days from Taiwan to SF bay area, California
2. download the driver at the following link. Use the 32 bit driver, for Kernel 2.6
http://210.64.17.162/web20/TouchKitDriv … Driver.htm
3. after the driver is extracted (it comes compressed to save space), copy the folder called TouchKit to the folder /home/user
to do this under the file manager, you need to go under ‘View’ and select ‘Tree’ and select ‘Show All File Systems’. This will give a 2 column file manager that makes it easy to drag and drop the file to the right place.
(you can use command line cp command, too, if you are comfortable with this)
4. press Ctrl + Alt + t to open a terminal window
5. type su at the command prompt (this puts you in super user mode)
6. enter your password (preset is asus?)
notice the red text on the command line? This means you are in powerful, dangerous superuser mode.
7. I usually drop into the folder that I’m copying from, so I don’t mess up my commands too much
cd /home/user/TouchKit change to subdirectory TouchKit
cp egalax_drv.so /usr/lib/xorg/modules/input copies driver file to system
8. modify the xorg.conf file as follows
sudo nano /etc/X11/xorg.conf
(this opens up the xorg.conf file in an editor called nano)
find the Section “ServerLayout”. See the 3 InputDevice lines? Add a line that says
InputDevice “EETI” “SendCoreEvents”
(this tells the system about a new device named EETI (the touchscreen))
there should still be an EndSection to close this Section. Looks like this when you’re done:
Section “ServerLayout”
Identifier “Xandros”
Screen 0 “Screen1”
InputDevice “keyboard”
InputDevice “mouse”
InputDevice “synaptics”
InputDevice “EETI” “SendCoreEvents”
EndSection
9. use the down arrow and scroll down to the part of the file that has
Section “InputDevice”
Identifier “mouse”
Driver “mouse”
and so on…..
add the following section to define the driver for the EETI touchscreen
Section “InputDevice”
Identifier “EETI”
Driver “egalax”
Option “Device” “/dev/input/event6”
Option “Parameters” “/var/lib/egalax.cal”
Option “ScreenNo” “0” (that’s a zero, not a letter oh)
EndSection
10. save your changes by typing Ctrl + o (the letter o), then hit enter to finish
11. reboot the eee
12. open a terminal window again, enter super user mode, change to directory /home/user/Touchkit (as we did above) and type ./TouchKit
/home/user/TouchKit> ./TouchKit
this opens the calibration program. under the "tools" tab, I used the 4 point option. follow the moving cross hairs. more accurate is 25 point option.
quit the calibration program. exit the console window. hopefully, your screen works like mine did.
let me know if this could be clearer, or if there are typos. thanks.
Last edited by chewy (2008-05-13 3:04:53 pm)
Offline
excellent guide, thanks a lot!
Offline
you make it sound like a piece of cake
thanks!
Offline
Good guide Chewy, thanks a lot. Now we have some idea of what is expected of us for a Xandros touch screen. Glad to see somebody finally got one working.![]()
JDtucson
Offline
@ chewy ...Great job..Thank you..excellent
Offline
Thanks chewy. I followed your instructions and calibration ran well. After that it still doesn't work. The touchscreen I got is also from fido and worked perfectly under Windows. Got any idea?
Offline
@digiguy
fortunately, mine worked. try emailing jeff (fido-dido999). he's been very quick with responses to my questions.
p.s. did you buy the upgraded controller (extra $5). it's supposed to have something altered in the chip's programming to make it work with xandros. I know that people with the earlier controller had problems.
Offline
Chewy, no I did not upgrade the controller. It's not an option on the eBay auction item that I bid. Maybe that's why it didn't work for me.
Offline
from line 7 your loosing me ... ![]()
next one make it like linux for stupid people
like me in linux i dont get it.
how you change to subdirectory ?
it look very simple for you but for window user like me ...
tku
linux look to be a more simple os but programing it or just installing software is complicated.
Offline
make a film and put it on youtube
voila !
it wood be a good idear !
tku
Offline
Trying this on backtrack 3 with changes being saved and it seems to delete the driver and xorg.conf changes on each reboot (possibly by running xconf?
any ideas?
Offline
chewy wrote:
p.s. did you buy the upgraded controller (extra $5). it's supposed to have something altered in the chip's programming to make it work with xandros. I know that people with the earlier controller had problems.
Does anyone know what he had to change in the controller firmware? I didn't realise he was altering it for Xandros, so I've got one that doesn't work properly now.
I've been playing around with it though. It's causing installation of the usbtouchscreen kernel module, creating a /dev/input/event6 device (which matches chewy's instructions). The data stream it sends seems to consist of 16-byte packets - a 4-byte timestamp in seconds, a 4-byte sub-second time value (wraps at around 900,000), then data, in which you can clearly identify press/release events and coordinate changes. It seems to only support one touch point, but at least the x/y coordinates are clearly coming through. In practice, though, it looks like the X driver isn't receiving position data, so it just puts the cursor in the bottom left corner when you tap the panel.
Curiously, even after removing all drivers from my Xorg conf file, even for "mouse" and "synaptics", my touchpad still works, and the touch panel still manages to click. I think it's reporting itself also as a standard HID device. The documentation for the drivers does state that you need to choose one or the other - perhaps this is part of the problem. I'll keep playing with it anyway - but it would be good to hear if anyone else has had any success, without fidodido's custom firmware.
I think in the worst case, we should be able to make this work using a custom X driver, but I really think we should be able to get it to work without. I've also seen references online to getting these things to work under EEExubuntu, without using the vendor's drivers, just using standard kernel functionality, so that's another fall-back - I'd like to get the vendor drivers to work though, as the calibration thing looks useful.
When I get this sorted out, if I get time I'll upload an installation program that sets everything up for you.
Offline
gfoot, ive been playing around too, found event4 as the touchscreen, when i tap it it doesnt reposition the mouse it does click though...
Even with all the xorg.conf settings as per pdf guide the Touchpad program still reports that the module is not installed correctly...
Would be really nice to get it working.
Offline
no1knows wrote:
Even with all the xorg.conf settings as per pdf guide the Touchpad program still reports that the module is not installed correctly...
I found setting the driver to either usbauto or /dev/input/event6 worked - maybe you'd find event4 would work too. I don't have any hiddevs, although the usbhid module is loaded. I also don't have /dev/tkpanel0, but I haven't build the tkusb module, so that's expected.
There are a few things I don't understand yet. I wish we had source code for the X driver!
Offline
yeh source would be nice. When you say it worked, u mean the touchscreen program works (i.e. gave u the option to calibrate)?
I tried both usb auto, /dev/input/event4 and "events" (which apparently works w/ only 1 controller), but the program still complained.
Offline
Yes, the "Touchkit" program worked and let me run the calibration. It could tell when I pressed on the panel, but it looks like it couldn't tell *where* I pressed.
I asked fidodido about the changes they make for Xandros compatibility, and he said it's a firmware patch, and he's trying to find out some details. Fingers crossed!
It would be really helpful if somebody who does have the modified firmware could run a test. If you're willing, disable your touch panel in your xorg.conf file and restart X (Ctrl-Alt-Backspace is enough), and then run this at a console:
xxd -g1 /dev/input/event6 > touchpanel_output.txt
Change the event number if it's wrong for your system. Now if you tap on the panel it should print a lot of hex numbers to that file. Please tap each corner in turn, releasing straight away, and waiting 2 seconds between corners. Press Ctrl-C when you're done, and post or PM me the output. I'm hoping to see whether the patched firmware is sending a significantly different data stream.
If the xxd command is not found, just use cat instead... it won't be human-readable, but I can run xxd on my end if necessary.
Offline
gfoot wrote:
I've also seen references online to getting these things to work under EEExubuntu, without using the vendor's drivers, just using standard kernel functionality, so that's another fall-back
Just an additional update on this tack - the binary version of this alternate X module doesn't work on Xandros, due to a library version mismatch - it needs recompiling. It's not a show-stopper, but it means setting up a cross-compilation environment, and getting and unpacking the full Xorg sources, which I don't have time for right now.
Offline
gfoot, sounds like you know what you're doing, i cant even get past the module not installed error when i run Touchkit... despite trying all those "Device" settings and confirming that event4 is the controller.
I'll wait and see on your pogress, i'm running Backtrack 3 by the way (a modified slack distro)
Offline
gfoot
I can run the test on my controller board in the next day or so, when the replacement board comes.
How do I disable in the xorg.conf file? Just remove the added lines? Can I just comment out the lines?
Offline
chewy:
I think you just need to comment out the line in the ServerLayout section. You'll know if you got it right because if you didn't, the output file will be empty. Thanks for trying it.
Another way to check is to run "fuser /dev/input/event6". It will list the PIDs of any processes which are using that device. Hopefully you'll see none.
no1knows:
It's possible that the Xorg module isn't compatible with your distro - you could check the log output of the X server (probably in /var/log) to check it didn't fail to load the module. I'm not sure how to check whether a module is loaded by querying the server, but there must be a way - maybe someone else knows. As you're running a different distro, it might be worth you trying this driver: http://www.conan.de/touchscreen/evtouch.html It's the one that was suggested for EEExubuntu, which I've found doesn't quite work on Xandros due to a library version error.
Offline
thanks gfoot. I'm running backtrack, ill try that other driver when i get a chance and check the logs.
Offline
I can now confirm that jeff's (fido-dido) modded controller also works under eeeXubuntu.
Offline
forsaken, can you post the instructions tht come with his modified controller?
Thanks
Offline
They are the same as these instructions in this thread, only they have a few random things that show up as $!# and whatnot.... But yeah, same as this thread.
the only thing i did different was: cat /proc/bus/input/devices/ to find the actual event# of my screen. My screen was event4. then after fallowing the guide and rebooting (not just restarting X) it worked. The calibration program is reallllly nice. has a 4 point or 25 point and numerous other options.
Really worth the extra 5$
Offline
I've had some success now! I built the tkusb kernel module, which came with the eGalax driver, against Asus's kernel sources. Aside from screwing up my modules directory a few times (unionfs came to the rescue, for a change), I've now got a tkusb module which seems to basically work - both axes are inverted at the moment, but I get cursor movement as well as mouse clicks.
I blacklisted the usbtouchscreen module, forced tkusb to get loaded on startup, and changed my xorg.conf to point at /dev/tkpanel0. Aside from that, and the myriad of other things I've got lying in my xorg.conf now from other attempts to get this to work, the instructions are largely as above.
However, the Touchkit program isn't working properly at the moment. It hangs for ages on startup, and eventually came up saying "module version 0.00". Then when I press the 4-points calibration button, it's got stuck again. I'm not sure why, I need to investigate more.
Until I get that sorted out, this isn't much use unless you mounted the touch panel upside down, so I won't post the module binary yet.
Regarding other options, I was going to compile evtouch against the libraries on the default Xandros. The X server reports its version as 1.3, which is unhelpful, but I think it's really version 7.1. It's not very clear how best to get the bits of the X sources you need to compile external modules - I gave up on that in the end. It should be possible, but it's tedious and doesn't seem to be something the developers expect people to do (build 3rd party modules but keep using distribution-supplied binaries of the server itself).
Offline