MagicTouch Touchscreens w/DSL


Forum: DSL Tips and Tricks
Topic: MagicTouch Touchscreens w/DSL
started by: IzzySmith

Posted by IzzySmith on Feb. 18 2006,01:12
----------------------------------------------------------------------
MagicTouch Touchscreen for DSL Linux F.A.Q.
----------------------------------------------------------------------

NOTICE: This is not official documentation from KeyTec™ these are
       just notes I as an individual have come up with and taken from
       the official driver help that comes with the MagicTouch CD.

       Basically I thought the readme docs sucked and this should be
       more helpful. Particularly if you're using D.S.L (Damn Small
       Linux)


This FAQ is for users of D.S.L. (Damn Small Linux) although,
this could technically be applied to just about any Debian distro
easily and others somewhat.

I believe D.S.L. works well with getting MagicTouch. It uses kernel
2.4 to support legacy devices for one thing, a 2.6 kernel might not
load the MagicTouch drivers (I could be wrong about that)

Also the hid and usb-uhci which are used by usbcore make the USB-X
easy to get working right off the bat.

You should know I haven't really tried this with the ProE-X. Also I
have successfully done this in RAMDISK/toram mode, however, its easier
if you only modify the user "dsl" as opposed to trying to get it
working with root, if only because default setting files (such as BASHRC)
havent been created.

-------------------
STEP ONE - XFree86:
-------------------

The drivers included by KeyTec are made for Xfree86 and not for
Xvesa or other derivitives unfortunately without what I believe to
be massive tweaking, altho I have seen a X.org experimental deb
package available for magictouch screens.

Anyways...

Basically download the XFree86.dsl package from the System DSL
packages and follow those directions.  You will change your .xserverrc
file and you will also use the XF86Config-4 file below.

--------------------------------
STEP TWO - Directories and Files
--------------------------------

mkdir /etc/etandt
mkdir /touchscreen

touch /etc/etandt/ts.ini
touch /etc/etandt/s_ts.ini

FOR USB-X:
==========
    mkdir /dev/usb/hid

    mknod /dev/usb/hiddev0 c 180 96
    mknod /dev/usb/hiddev1 c 180 97
    mknod /dev/usb/hiddev2 c 180 98
    mknod /dev/usb/hiddev3 c 180 99

    cp /cdrom/Linux/USB/* /touchscreen

    NOTE: In TORAM/ramdisk mode, create the nodes in /touchscreen and
          modify the entry in XF86Config-4 accordingly.

FOR PROE-X:
==========
    cp /cdrom/Linux/PROE/* /touchscreen

-------------------------------------------
STEP THREE: The XF86Config-4 File
-------------------------------------------
<BEGIN>


Section "ServerLayout"
       Identifier      "VESA device"
       Screen          0               "Screen0" 0 0
       InputDevice     "Mouse[1]"      "CorePointer"
       InputDevice     "Keyboard0"     "CoreKeyboard"
       InputDevice     "etouch"        "SendCoreEvents"
EndSection


Section "ServerFlags"
 DontZap
 AllowMouseOpenFail
EndSection

Section "Files"
       FontPath        "unix/:7100"                    # local font server
       FontPath        "/usr/lib/X11/fonts/misc"
       FontPath        "/usr/lib/X11/fonts/75dpi/:unscaled"
       FontPath        "/usr/lib/X11/fonts/75dpi"
EndSection

Section "Module"
       Load  "dbe"
       Load  "extmod"
       Load  "dri"
       Load  "glx"
       Load  "record"
       Load  "freetype"
       Load  "type1"
EndSection

Section "InputDevice"
       Identifier  "Keyboard0"
       Driver      "keyboard"
       Option      "XkbRules" "xfree86"
       Option      "XkbModel" "pc105"
       Option      "XkbLayout" "us"    #Option "XkbVariant"    ""
EndSection

Section "InputDevice"
       Identifier    "etouch"
       Driver        "etouch_usb"
       Option        "Device"                "/dev/usb/hid/hiddev0"
EndSection

Section "InputDevice"
       Identifier    "Mouse[1]"
       Driver        "mouse"
       Option        "CorePointer"
       Option        "Device"                "/dev/psaux"
       Option        "Protocol"              "imPS/2"
       Option        "Emulate3Buttons"       "true"
       Option        "ZAxisMapping"          "4 5"
EndSection

Section "Device"
       Identifier      "vesa"
       driver          "vesa"
       VendorName      "x"
       BoardName       "y"
EndSection


Section "Monitor"
       Identifier      "Monitor0"
       VendorName      "x"
       ModelName       "y"
EndSection


Section "Screen"
       Identifier      "Screen0"
       Device          "vesa"
       Monitor         "Monitor0"
       DefaultDepth     24
       SubSection "Display"
               Depth     24
               Modes    "1024x768" "800x600" "640x480"
       EndSubSection
EndSection


Section "DRI"
       Mode         0666
EndSection


<END>

-------------------------------------
STEP FOUR: Module Installation
-------------------------------------

 cd /touchscreen

 FOR USB-X:
 ===========

 cp etouch_usb_drv.o /usr/X11R6/lib/modules/input/

 FOR PROE-X:
 ===========

 cp magictouch_drv.o /usr/X11R6/lib/modules/input/


----------------------
STEP FIVE: Calibration
----------------------

 Restart X-Windows

 In X-Windows Run tscpl_usb or tscpl for usb and proe devices
respectively to calibrate the screen.

--------------------------
STEP FIVE: Troubleshooting
--------------------------

- DO NOT use Virtual Desktop  (calibration will not be accurate)
- DO make notice of upper/lower cases

- Check the /var/log/XFree86.0.log
- Also run "dmesg" and check the last couple lines when un/plugging
  in the MagicTouch Device to see if the USB driver is being loaded
  correctly.

FOR USB-X:
----------
- If you think that the device is not sending data, just make sure
  everythings connected and run 'cat /dev/usb/hiddev0' and then
  run your fingers over the screen to see if data shows on the
  screen.
- In dmesg check to see if its hiddev0 being used and not hiddev1 or
  2, in which case you'll have to change the device location in
  /etc/X11/XF86Config-4


You can contact tech@magictouch.com for troubleshooting.

You can also contact me at falthonas@comcast.net although I'm not too sure how much I'll be able to help out.

Posted by doobit on Feb. 18 2006,01:42
Very nice. Worth putting in the documentation.
Powered by Ikonboard 3.1.2a
Ikonboard © 2001 Jarvis Entertainment Group, Inc.