1EDT ft5x06 based Polytouch devices 2---------------------------------- 3 4The edt-ft5x06 driver is useful for the EDT "Polytouch" family of capacitive 5touch screens. Note that it is *not* suitable for other devices based on the 6focaltec ft5x06 devices, since they contain vendor-specific firmware. In 7particular this driver is not suitable for the Nook tablet. 8 9It has been tested with the following devices: 10 * EP0350M06 11 * EP0430M06 12 * EP0570M06 13 * EP0700M06 14 15The driver allows configuration of the touch screen via a set of sysfs files: 16 17/sys/class/input/eventX/device/device/threshold: 18 allows setting the "click"-threshold in the range from 0 to 80. 19 20/sys/class/input/eventX/device/device/gain: 21 allows setting the sensitivity in the range from 0 to 31. Note that 22 lower values indicate higher sensitivity. 23 24/sys/class/input/eventX/device/device/offset: 25 allows setting the edge compensation in the range from 0 to 31. 26 27/sys/class/input/eventX/device/device/report_rate: 28 allows setting the report rate in the range from 3 to 14. 29 30 31For debugging purposes the driver provides a few files in the debug 32filesystem (if available in the kernel). They are located in: 33 34 /sys/kernel/debug/i2c/<i2c-bus>/<i2c-device>/ 35 36If you don't know the bus and device numbers, you can look them up with this 37command: 38 39 $ ls -l /sys/bus/i2c/drivers/edt_ft5x06 40 41The dereference of the symlink will contain the needed information. You will 42need the last two elements of its path: 43 44 0-0038 -> ../../../../devices/platform/soc/fcfee800.i2c/i2c-0/0-0038 45 46So in this case, the location for the debug files is: 47 48 /sys/kernel/debug/i2c/i2c-0/0-0038/ 49 50There, you'll find the following files: 51 52num_x, num_y: 53 (readonly) contains the number of sensor fields in X- and 54 Y-direction. 55 56mode: 57 allows switching the sensor between "factory mode" and "operation 58 mode" by writing "1" or "0" to it. In factory mode (1) it is 59 possible to get the raw data from the sensor. Note that in factory 60 mode regular events don't get delivered and the options described 61 above are unavailable. 62 63raw_data: 64 contains num_x * num_y big endian 16 bit values describing the raw 65 values for each sensor field. Note that each read() call on this 66 files triggers a new readout. It is recommended to provide a buffer 67 big enough to contain num_x * num_y * 2 bytes. 68 69Note that reading raw_data gives a I/O error when the device is not in factory 70mode. The same happens when reading/writing to the parameter files when the 71device is not in regular operation mode. 72