blob: d1111b74bf7590faeed5da996cfe55c596f9e9f3 [file] [log] [blame]
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -03001================
2mtouchusb driver
3================
4
5Changes
6=======
Linus Torvalds1da177e2005-04-16 15:20:36 -07007
8- 0.3 - Created based off of scanner & INSTALL from the original touchscreen
Masanari Iida1f8ee462012-02-13 22:42:58 +09009 driver on freecode (http://freecode.com/projects/3mtouchscreendriver)
Linus Torvalds1da177e2005-04-16 15:20:36 -070010- Amended for linux-2.4.18, then 2.4.19
11
12- 0.5 - Complete rewrite using Linux Input in 2.6.3
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030013 Unfortunately no calibration support at this time
Linus Torvalds1da177e2005-04-16 15:20:36 -070014
15- 1.4 - Multiple changes to support the EXII 5000UC and house cleaning
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030016 Changed reset from standard USB dev reset to vendor reset
17 Changed data sent to host from compensated to raw coordinates
18 Eliminated vendor/product module params
19 Performed multiple successful tests with an EXII-5010UC
Linus Torvalds1da177e2005-04-16 15:20:36 -070020
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030021Supported Hardware
22==================
23
24::
Linus Torvalds1da177e2005-04-16 15:20:36 -070025
26 All controllers have the Vendor: 0x0596 & Product: 0x0001
27
28
29 Controller Description Part Number
30 ------------------------------------------------------
31
32 USB Capacitive - Pearl Case 14-205 (Discontinued)
33 USB Capacitive - Black Case 14-124 (Discontinued)
34 USB Capacitive - No Case 14-206 (Discontinued)
35
36 USB Capacitive - Pearl Case EXII-5010UC
37 USB Capacitive - Black Case EXII-5030UC
38 USB Capacitive - No Case EXII-5050UC
39
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030040Driver Notes
41============
Linus Torvalds1da177e2005-04-16 15:20:36 -070042
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030043Installation is simple, you only need to add Linux Input, Linux USB, and the
Linus Torvalds1da177e2005-04-16 15:20:36 -070044driver to the kernel. The driver can also be optionally built as a module.
45
46This driver appears to be one of possible 2 Linux USB Input Touchscreen
47drivers. Although 3M produces a binary only driver available for
48download, I persist in updating this driver since I would like to use the
49touchscreen for embedded apps using QTEmbedded, DirectFB, etc. So I feel the
Matt LaPlante2fe0ae72006-10-03 22:50:39 +020050logical choice is to use Linux Input.
Linus Torvalds1da177e2005-04-16 15:20:36 -070051
52Currently there is no way to calibrate the device via this driver. Even if
53the device could be calibrated, the driver pulls to raw coordinate data from
54the controller. This means calibration must be performed within the
55userspace.
56
57The controller screen resolution is now 0 to 16384 for both X and Y reporting
58the raw touch data. This is the same for the old and new capacitive USB
59controllers.
60
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030061Perhaps at some point an abstract function will be placed into evdev so
62generic functions like calibrations, resets, and vendor information can be
Linus Torvalds1da177e2005-04-16 15:20:36 -070063requested from the userspace (And the drivers would handle the vendor specific
64tasks).
65
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030066TODO
67====
Linus Torvalds1da177e2005-04-16 15:20:36 -070068
69Implement a control urb again to handle requests to and from the device
70such as calibration, etc once/if it becomes available.
71
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030072Disclaimer
73==========
Linus Torvalds1da177e2005-04-16 15:20:36 -070074
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030075I am not a MicroTouch/3M employee, nor have I ever been. 3M does not support
Linus Torvalds1da177e2005-04-16 15:20:36 -070076this driver! If you want touch drivers only supported within X, please go to:
77
Justin P. Mattock0ea6e612010-07-23 20:51:24 -070078http://www.3m.com/3MTouchSystems/
Linus Torvalds1da177e2005-04-16 15:20:36 -070079
Mauro Carvalho Chehabd80b5002019-04-15 23:56:01 -030080Thanks
81======
Linus Torvalds1da177e2005-04-16 15:20:36 -070082
83A huge thank you to 3M Touch Systems for the EXII-5010UC controllers for
84testing!