About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / usb / mtouchusb.txt


Based on kernel version 4.16.1. Page generated on 2018-04-09 11:53 EST.

1	CHANGES
2	
3	- 0.3 - Created based off of scanner & INSTALL from the original touchscreen
4	  driver on freecode (http://freecode.com/projects/3mtouchscreendriver)
5	- Amended for linux-2.4.18, then 2.4.19
6	
7	- 0.5 - Complete rewrite using Linux Input in 2.6.3
8	   Unfortunately no calibration support at this time
9	
10	- 1.4 - Multiple changes to support the EXII 5000UC and house cleaning
11	   Changed reset from standard USB dev reset to vendor reset
12	   Changed data sent to host from compensated to raw coordinates
13	   Eliminated vendor/product module params
14	   Performed multiple successful tests with an EXII-5010UC
15	
16	SUPPORTED HARDWARE:
17	
18	        All controllers have the Vendor: 0x0596 & Product: 0x0001
19	
20	
21	        Controller Description          Part Number
22	        ------------------------------------------------------
23	
24	        USB Capacitive - Pearl Case     14-205  (Discontinued)
25	        USB Capacitive - Black Case     14-124  (Discontinued)
26	        USB Capacitive - No Case        14-206  (Discontinued)
27	
28	        USB Capacitive - Pearl Case     EXII-5010UC
29	        USB Capacitive - Black Case     EXII-5030UC
30	        USB Capacitive - No Case        EXII-5050UC
31	
32	DRIVER NOTES:
33	
34	Installation is simple, you only need to add Linux Input, Linux USB, and the 
35	driver to the kernel.  The driver can also be optionally built as a module.
36	
37	This driver appears to be one of possible 2 Linux USB Input Touchscreen
38	drivers.  Although 3M produces a binary only driver available for
39	download, I persist in updating this driver since I would like to use the
40	touchscreen for embedded apps using QTEmbedded, DirectFB, etc. So I feel the
41	logical choice is to use Linux Input.
42	
43	Currently there is no way to calibrate the device via this driver.  Even if
44	the device could be calibrated, the driver pulls to raw coordinate data from
45	the controller.  This means calibration must be performed within the
46	userspace.
47	
48	The controller screen resolution is now 0 to 16384 for both X and Y reporting
49	the raw touch data.  This is the same for the old and new capacitive USB
50	controllers.
51	
52	Perhaps at some point an abstract function will be placed into evdev so 
53	generic functions like calibrations, resets, and vendor information can be 
54	requested from the userspace (And the drivers would handle the vendor specific
55	tasks).
56	
57	TODO:
58	
59	Implement a control urb again to handle requests to and from the device
60	such as calibration, etc once/if it becomes available.
61	
62	DISCLAIMER:
63	
64	I am not a MicroTouch/3M employee, nor have I ever been.  3M does not support 
65	this driver!  If you want touch drivers only supported within X, please go to:
66	
67	http://www.3m.com/3MTouchSystems/
68	
69	THANKS:
70	
71	A huge thank you to 3M Touch Systems for the EXII-5010UC controllers for
72	testing!
Hide Line Numbers


About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog