X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=Documentation%2Fusb%2Fmtouchusb.txt;h=cd806bfc8b81a42301be0130a741bb5b47f6343b;hb=d939d46ba7caa14e960be18e18f5c07be8806d7a;hp=f27200050ce9b97d774b233226539cbd2ba27344;hpb=86090fcac5e27b630656fe3d963a6b80e26dac44;p=linux-2.6.git diff --git a/Documentation/usb/mtouchusb.txt b/Documentation/usb/mtouchusb.txt index f27200050..cd806bfc8 100644 --- a/Documentation/usb/mtouchusb.txt +++ b/Documentation/usb/mtouchusb.txt @@ -1,26 +1,38 @@ CHANGES -- Created based off of scanner & INSTALL from the original touchscreen +- 0.3 - Created based off of scanner & INSTALL from the original touchscreen driver on freshmeat (http://freshmeat.net/projects/3mtouchscreendriver) - Amended for linux-2.4.18, then 2.4.19 -- Complete rewrite using Linux Input in 2.6.3 +- 0.5 - Complete rewrite using Linux Input in 2.6.3 Unfortunately no calibration support at this time +- 1.4 - Multiple changes to support the EXII 5000UC and house cleaning + Changed reset from standard USB dev reset to vendor reset + Changed data sent to host from compensated to raw coordinates + Eliminated vendor/product module params + Performed multiple successfull tests with an EXII-5010UC -DRIVER NOTES: +SUPPORTED HARDWARE: + + All controllers have the Vendor: 0x0596 & Product: 0x0001 -Installation is simple, you only need to add Linux Input, Linux USB, and the -driver to the kernel. The driver can also be optionally built as a module. -If you have another MicroTouch device that you wish to experiment with -or try using this driver with, but the Vendor and Product ID's are not -coded in, don't despair. If the driver was compiled as a module, you can -pass options to the driver. Simply try: + Controller Description Part Number + ------------------------------------------------------ - /sbin/modprobe mtouchusb vendor=0x#### product=0x**** + USB Capacitive - Pearl Case 14-205 (Discontinued) + USB Capacitive - Black Case 14-124 (Discontinued) + USB Capacitive - No Case 14-206 (Discontinued) -If it works, send me the iVendor & iProduct (or a patch) and I will add... + USB Capacitive - Pearl Case EXII-5010UC + USB Capacitive - Black Case EXII-5030UC + USB Capacitive - No Case EXII-5050UC + +DRIVER NOTES: + +Installation is simple, you only need to add Linux Input, Linux USB, and the +driver to the kernel. The driver can also be optionally built as a module. This driver appears to be one of possible 2 Linux USB Input Touchscreen drivers. Although 3M produces a binary only driver available for @@ -28,53 +40,28 @@ download, I persist in updating this driver since I would like to use the touchscreen for embedded apps using QTEmbedded, DirectFB, etc. So I feel the logical choice is to use Linux Imput. -A little info about the MicroTouch USB controller (14-206): - -Y is inverted, and the device has a total possible resolution of 0 - 65535. - -Y is inverted by the driver by: - - input.absmin[ABS_Y] = MTOUCHUSB_MAX_YC; - input.absmax[ABS_Y] = MTOUCHUSB_MIN_YC; - -absmin & absmax are also used to scale the data, sine it is rather high -resolution. - - ---------------touch screen area----------------- - I MicroTouch (xmax,ymax) @I - I X I - I ########visible monitor area############## I - I #@ (xmin,ymin) # I - I # # I - I # # I - I # # I - I # # I - I # # I - I Y # # I - I # # I - I # # I - I # # I - I # # I - I # # I - I # (xmax,ymax) @# I - I ########################################## I - I I - I@ MicroTouch (xmin,ymin) I - ------------------------------------------------- - -Currently there is no way to calibrate the device via this driver. Perhaps -at some point an abstract function will be placed into evdev so generic -functions like calibrations, resets, and vendor information can be requested -(And the drivers would handle the vendor specific tasks). - -ADDITIONAL INFORMATION/UPDATES: +Currently there is no way to calibrate the device via this driver. Even if +the device could be calibrated, the driver pulls to raw coordinate data from +the controller. This means calibration must be performed within the +userspace. + +The controller screen resolution is now 0 to 16384 for both X and Y reporting +the raw touch data. This is the same for the old and new capacitive USB +controllers. + +Perhaps at some point an abstract function will be placed into evdev so +generic functions like calibrations, resets, and vendor information can be +requested from the userspace (And the drivers would handle the vendor specific +tasks). + +ADDITIONAL INFORMATION/UPDATES/X CONFIGURATION EXAMPLE: http://groomlakelabs.com/grandamp/code/microtouch/ TODO: Implement a control urb again to handle requests to and from the device -such as calibration, etc. +such as calibration, etc once/if it becomes available. DISCLAMER: @@ -83,3 +70,7 @@ this driver! If you want touch drivers only supported within X, please go to: http://www.3m.com/3MTouchSystems/downloads/ +THANKS: + +A huge thank you to 3M Touch Systems for the EXII-5010UC controllers for +testing!