1 .. SPDX-License-Identifier: GFDL-1.1-no-invari 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2 2 3 .. _touch: 3 .. _touch: 4 4 5 ************* 5 ************* 6 Touch Devices 6 Touch Devices 7 ************* 7 ************* 8 8 9 Touch devices are accessed through character d 9 Touch devices are accessed through character device special files named 10 ``/dev/v4l-touch0`` to ``/dev/v4l-touch255`` w 10 ``/dev/v4l-touch0`` to ``/dev/v4l-touch255`` with major number 81 and 11 dynamically allocated minor numbers 0 to 255. 11 dynamically allocated minor numbers 0 to 255. 12 12 13 Overview 13 Overview 14 ======== 14 ======== 15 15 16 Sensors may be Optical, or Projected Capacitiv 16 Sensors may be Optical, or Projected Capacitive touch (PCT). 17 17 18 Processing is required to analyse the raw data 18 Processing is required to analyse the raw data and produce input events. In 19 some systems, this may be performed on the ASI 19 some systems, this may be performed on the ASIC and the raw data is purely a 20 side-channel for diagnostics or tuning. In oth 20 side-channel for diagnostics or tuning. In other systems, the ASIC is a simple 21 analogue front end device which delivers touch 21 analogue front end device which delivers touch data at high rate, and any touch 22 processing must be done on the host. 22 processing must be done on the host. 23 23 24 For capacitive touch sensing, the touchscreen 24 For capacitive touch sensing, the touchscreen is composed of an array of 25 horizontal and vertical conductors (alternativ 25 horizontal and vertical conductors (alternatively called rows/columns, X/Y 26 lines, or tx/rx). Mutual Capacitance measured 26 lines, or tx/rx). Mutual Capacitance measured is at the nodes where the 27 conductors cross. Alternatively, Self Capacita 27 conductors cross. Alternatively, Self Capacitance measures the signal from each 28 column and row independently. 28 column and row independently. 29 29 30 A touch input may be determined by comparing t 30 A touch input may be determined by comparing the raw capacitance measurement to 31 a no-touch reference (or "baseline") measureme 31 a no-touch reference (or "baseline") measurement: 32 32 33 Delta = Raw - Reference 33 Delta = Raw - Reference 34 34 35 The reference measurement takes account of var 35 The reference measurement takes account of variations in the capacitance across 36 the touch sensor matrix, for example manufactu 36 the touch sensor matrix, for example manufacturing irregularities, 37 environmental or edge effects. 37 environmental or edge effects. 38 38 39 Querying Capabilities 39 Querying Capabilities 40 ===================== 40 ===================== 41 41 42 Devices supporting the touch interface set the 42 Devices supporting the touch interface set the ``V4L2_CAP_VIDEO_CAPTURE`` flag 43 and the ``V4L2_CAP_TOUCH`` flag in the ``capab 43 and the ``V4L2_CAP_TOUCH`` flag in the ``capabilities`` field of 44 :c:type:`v4l2_capability` returned by the 44 :c:type:`v4l2_capability` returned by the 45 :ref:`VIDIOC_QUERYCAP` ioctl. 45 :ref:`VIDIOC_QUERYCAP` ioctl. 46 46 47 At least one of the read/write or streaming I/ 47 At least one of the read/write or streaming I/O methods must be 48 supported. 48 supported. 49 49 50 The formats supported by touch devices are doc 50 The formats supported by touch devices are documented in 51 :ref:`Touch Formats <tch-formats>`. 51 :ref:`Touch Formats <tch-formats>`. 52 52 53 Data Format Negotiation 53 Data Format Negotiation 54 ======================= 54 ======================= 55 55 56 A touch device may support any I/O method. 56 A touch device may support any I/O method.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.