|  | CHANGES | 
|  |  | 
|  | - 0.3 - Created based off of scanner & INSTALL from the original touchscreen | 
|  | driver on freecode (http://freecode.com/projects/3mtouchscreendriver) | 
|  | - Amended for linux-2.4.18, then 2.4.19 | 
|  |  | 
|  | - 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 successful tests with an EXII-5010UC | 
|  |  | 
|  | SUPPORTED HARDWARE: | 
|  |  | 
|  | All controllers have the Vendor: 0x0596 & Product: 0x0001 | 
|  |  | 
|  |  | 
|  | Controller Description          Part Number | 
|  | ------------------------------------------------------ | 
|  |  | 
|  | USB Capacitive - Pearl Case     14-205  (Discontinued) | 
|  | USB Capacitive - Black Case     14-124  (Discontinued) | 
|  | USB Capacitive - No Case        14-206  (Discontinued) | 
|  |  | 
|  | 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 | 
|  | 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 Input. | 
|  |  | 
|  | 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). | 
|  |  | 
|  | TODO: | 
|  |  | 
|  | Implement a control urb again to handle requests to and from the device | 
|  | such as calibration, etc once/if it becomes available. | 
|  |  | 
|  | DISCLAIMER: | 
|  |  | 
|  | I am not a MicroTouch/3M employee, nor have I ever been.  3M does not support | 
|  | this driver!  If you want touch drivers only supported within X, please go to: | 
|  |  | 
|  | http://www.3m.com/3MTouchSystems/ | 
|  |  | 
|  | THANKS: | 
|  |  | 
|  | A huge thank you to 3M Touch Systems for the EXII-5010UC controllers for | 
|  | testing! |