Please note that User Registration has been temporarily disabled due to a recent increase in automated registrations. If anyone needs an account, please request one here: RequestAccount. Thanks for your patience!--Wmat (talk)
Please email User:Wmat if you experience any issues with the Request Account form.

Xenarc USB touchscreen for Beagleboard/OMAP3 EVM

From eLinux.org
Revision as of 09:59, 21 April 2009 by Pratheeshg (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

(1) Enabled EVDEV support in linux kernel

(2) Build the evtouch driver – if you are using OE just copy attached xf86-input-evtouch_0.8.8.bbfile to openembedded\packages\xorg-driver folder and do a bitbake –b xf86-input-evtouch_0.8.8

(3) Copy the generated binary evdev_drv.so to /usr/lib/xorg/modules/input/

(4) Copy attached 69-touchscreen.rules to /etc/udev/rules.d/ folder, this will make sure that touchscreen is always mapped to /dev/input/evtouch_event and even if you detach USB cable during a session, it will get mapped to unique event as this event is required by xorg.conf

(5) Time to calibrate. calibrator.c is patched version of http://www.harbaum.org/till/cnc/cx-t100/calibrator.c. I had to make changes because ABS_X and ABS_Y key values are different for our touchscreen. Use make_calibrate.sh to build. Then do ./calibrator /dev/input/evtouch_event from Xterm and follow the instructions to click four points in the corners. This program will printout Max/Min X/Y values which we need to copy to xorg.conf. Please note that you need to disable evtouch driver from xorg.conf during calibration , comment touchscreen section from ServerLayout in xorg.conf (#InputDevice "touchscreen" "SendCoreEvents").

(5) Copy paste the values output by calibrator to xorg.conf

Section "InputDevice"

           Identifier "touchscreen"
           Driver "evtouch"
           Option "Device" "/dev/input/evtouch_event"
           Option "DeviceName" "touchscreen"
           Option "MinX" "274"
           Option "MinY" "281"
           Option "MaxX" "3839"
           Option "MaxY" "3883"
           Option "ReportingMode" "Raw"
           Option "Emulate3Buttons"
           Option "Emulate3Timeout" "50"
           Option "SendCoreEvents" "On"
           Option "Rotate" "CCW"
           Option "SwapY" "1"

EndSection


Section "ServerLayout"

       Identifier      "Builtin Default Layout"                                     
       Screen  "Builtin Default fbdev Screen 0" 
       InputDevice "touchscreen" "SendCoreEvents"       

EndSection


(6) Restart X and that’s about it.