Multi Device Trackpad

broken image


Browse touchpad on sale, by desired features, or by customer ratings. This website is intended for personal use by US residents only. Type with this multi-device Logitech wireless keyboard. The built-in rubber cradle supports devices vertically, making small screens easily viewable, and 128-bit AES encryption keeps information private.

(Redirected from Multi touch pad)
Closeup of a touchpad on an Acer CB5-311 laptop.
Closeup of a touchpad on a MacBook 2015 laptop.

A touchpad or trackpad is a pointing device featuring a tactile sensor, a specialized surface that can translate the motion and position of a user's fingers to a relative position on the operating system that is made output to the screen. Touchpads are a common feature of laptop computers as opposed to using a mouse on a desktop, and are also used as a substitute for a mouse where desk space is scarce. Because they vary in size, they can also be found on personal digital assistants (PDAs) and some portable media players. Wireless touchpads are also available as detached accessories.

Operation and function[edit]

Touchpads operate in one of several ways, including capacitive sensing and resistive touchscreen. The most common technology used in the 2010s senses the change of capacitance where a finger touches the pad. Capacitance-based touchpads will not sense the tip of a pencil or other similar ungrounded or non-conducting implements. Fingers insulated by a glove may also be problematic.

While touchpads, like touchscreens, are able to sense absolute position, resolution is limited by their size. For common use as a pointer device, the dragging motion of a finger is translated into a finer, relative motion of the cursor on the output to the display on the operating system, analogous to the handling of a mouse that is lifted and put back on a surface. Hardware buttons equivalent to a standard mouse's left and right buttons are positioned adjacent to the touchpad.

Onvif supported cameras. Some touchpads and associated device driver software may interpret tapping the pad as a mouse click, and a tap followed by a continuous pointing motion (a 'click-and-a-half') can indicate dragging.[1] Tactile touchpads allow for clicking and dragging by incorporating button functionality into the surface of the touchpad itself.[2][3] To select, one presses down on the touchpad instead of a physical button. To drag, instead of performing the 'click-and-a-half' technique, the user presses down while on the object, drags without releasing pressure, and lets go when done. Touchpad drivers can also allow the use of multiple fingers to emulate the other mouse buttons (commonly two-finger tapping for the center button).

Touchpads are called clickpads if it does not have physical buttons, but instead relies on 'software buttons'. Physically the whole clickpad formed a button, logically the driver interprets a click as a left or right button click depending on the placement of fingers.[4]

Some touchpads have 'hotspots', locations on the touchpad used for functionality beyond a mouse. For example, on certain touchpads, moving the finger along an edge of the touch pad will act as a scroll wheel, controlling the scrollbar and scrolling the window that has the focus, vertically or horizontally. Many touchpads use two-finger dragging for scrolling. Also, some touchpad drivers support tap zones, regions where a tap will execute a function, for example, pausing a media player or launching an application. All of these functions are implemented in the touchpad device driver software, and can be disabled.

History[edit]

By 1982, Apollo desktop computers were equipped with a touchpad on the right side of the keyboard.[5] Introduced a year later, in 1983, the first battery powered clamshell laptop, the Gavilan SC included a touchpad, which was mounted above its keyboard, rather than below, which became the norm.

In 1989 a touchpad was developed for Psion's MC 200/400/600/WORD Series .[6] Laptops with touchpads were then launched by Olivetti and Triumph-Adler in 1992.[7]Cirque introduced the first widely available touchpad, branded as GlidePoint, in 1994.[8]Apple introduced touchpads to the modern laptop in the PowerBook series in 1994, using Cirque's GlidePoint technology;[9] later PowerBooks and MacBooks would use Apple-developed trackpads. Another early adopter of the GlidePoint pointing device was Sharp.[8] Later, Synaptics introduced their touchpad into the marketplace, branded the TouchPad. Epson was an early adopter of this product.[8]

A touchpad on an early-2000s-era Sony Vaio laptop, an early example of a modern laptop touchpad.

As touchpads began to be introduced in laptops in the 1990s, there was often confusion as to what the product should be called. No consistent term was used, and references varied, such as: glidepoint, touch sensitive input device, touchpad, trackpad, and pointing device.[10][11][12]

Users were often presented the option to purchase a pointing stick, touchpad, or trackball. Combinations of the devices were common, though touchpads and trackballs were rarely included together.[13] Since the early 2000s, touchpads have become the dominant laptop pointing device as most laptops produced during this period beyond include only touchpads, displacing the pointing stick.

Use in devices[edit]

Trackpad of the BlackBerry Curve 8520 in the red circle.
A Microsoft Surface tablet. The touchpad is the rectangle near the bottom of the gray keyboard.

Touchpads are primarily used in self-contained portable laptop computers and do not require a flat surface near the machine. The touchpad is close to the keyboard, and only very short finger movements are required to move the cursor across the display screen; while advantageous, this also makes it possible for a user's palm or wrist to move the mouse cursor accidentally while typing. Touchpads also exist for desktop computers as an external peripheral, albeit rarely seen. Touchpads are sometimes integrated in some desktop computer keyboards, particularly keyboards oriented for HTPC use.

One-dimensional touchpads are the primary control interface for menu navigation on iPod Classic portable music players and additional input metod on some Wacom digitizer tablets, where they are referred to as 'click wheels', since they only sense motion along one axis, which is wrapped around like a wheel. Creative Labs also uses a touchpad for their Zen line of MP3 players, beginning with the Zen Touch. The second-generation MicrosoftZune product line (the Zune 80/120 and Zune 4/8) uses touch for the Zune Pad.

Apple's PowerBook 500 series was its first laptop to carry such a device,[14] which Apple refers to as a 'trackpad'. When introduced in May 1994, it replaced the trackball of previous PowerBook models. In late 2008 Apple's revisions of the MacBook and MacBook Pro incorporated a 'Tactile Touchpad' design with button functionality incorporated into the tracking surface.[2][3][15] Beginning in the second generation of MacBook Pro, the entire touchpad surface acts as a clickable button.[16]

Laptops today feature multitouch touchpads that can sense in some cases up to five fingers simultaneously, providing more options for input, such as the ability to bring up the context menu by tapping two fingers, dragging two fingers for scrolling, or gestures for zoom in/out or rotate. The touchpads with physical buttons now are only hi-end businessprofessional laptops option.

Infinity ward modern warfare. Psion's MC 200/400/600/WORD Series,[6] introduced in 1989, came with a new mouse-replacing input device similar to a touchpad,[17] although more closely resembling a graphics tablet, as the cursor was positioned by clicking on a specific point on the pad, instead of moving it in the direction of a stroke.

Theory of operation[edit]

There are two principal means by which touchpads work.[citation needed] In the matrix approach, a series of conductors are arranged in an array of parallel lines in two layers, separated by an insulator and crossing each other at right angles to form a grid. A high frequency signal is applied sequentially between pairs in this two-dimensional grid array. The current that passes between the nodes is proportional to the capacitance. When a virtual ground, such as a finger, is placed over one of the intersections between the conductive layer some of the electrical field is shunted to this ground point, resulting in a change in the apparent capacitance at that location. This method received U.S. Patent 5,305,017 awarded to George Gerpheide in April 1994.

The capacitive shunt method, described in an application note by Analog Devices (not to be confused with analog devices),[18] senses the change in capacitance between a transmitter and receiver that are on opposite sides of the sensor. The transmitter creates an electric field which oscillates at 200–300 kHz. If a ground point, such as the finger, is placed between the transmitter and receiver, some of the field lines are shunted away, decreasing the apparent capacitance. Trackpads such as those found in some Blackberry smartphones work optically, like an optical computer mouse.

Manufacturing[edit]

Major manufacturers include:

  • Elan Microelectronics

See also[edit]

Wikimedia Commons has media related to Touchpads.

References[edit]

  1. ^'Tap and drag'. Apple.com.
  2. ^ ab'The Tactile Touchpad'. sigchi.com.
  3. ^ ab'A Comparison of Three Selection Techniques for Touchpads'(PDF). yorku.ca.
  4. ^'Libinput documentation, Clickpad software button behavior'. wayland.freedesktop.org.
  5. ^Getting Started With Your DOMAIN System. Apollo Computer. 1983.
  6. ^ ab'GUIdebook Psion MC Series brochure'. guidebookgallery.org.
  7. ^Olivetti S20, D33 and identically Triumph-Adler Walkstation 386, Walkstation 386SX
  8. ^ abcDiehl, Stanford; Lennon, Anthony J.; McDonough, John (Oct 1995). 'Touchpads to Navigate By'. Byte. No. October 1995. Green Publishing. p. 150. ISSN0360-5280.
  9. ^Thryft, Ann R. 'More Than a Mouse,' Computer Product Development, EBN Extra, November 14, 1994, pp. E16 – E20
  10. ^'A WinBook for the Fussy'. Windows Magazine. No. Dec 95. 1995. p. 105.
  11. ^'Sharp Unveils Line of Notebooks'. Westchester County Business Journal. Westchester County Business Journal (November 20, 1995). 1995.
  12. ^Malloy, Rich; Crabb, Don (October 1995). 'Power Packed Power Books'. Mobile Office. New York, NY (October 1995): 44–52.
  13. ^Jerome, Marty (1995). 'Lightweight, Low-Cost Challenger'. PC Computing. PC Computing (December 1995): 96.
  14. ^'Blackbird: The PowerBook 500 Series'. Low End Mac. 1994-05-16. Retrieved 2017-07-09.
  15. ^'MacBook design'. Apple.com.
  16. ^Ackerman, Dan (June 10, 2009). 'Apple MacBook Pro Summer 2009 (Core 2 Duo 2.26 GHz, 2GB RAM, 160GB HDD, Nvidia GeForce 9400M, 13-inch)'. CNET. Retrieved April 11, 2010.
  17. ^'GUIdebook Psion MC Series brochure, page 4'. guidebookgallery.org.
  18. ^'Analog Devices' Capacitive Shunt Method'(PDF). analog.com.

External links[edit]

Look up touchpad, trackpad, or touchscreen in Wiktionary, the free dictionary.
  • Notes on the History of Pen-based Computing on YouTube
Retrieved from 'https://en.wikipedia.org/w/index.php?title=Touchpad&oldid=1008474164#Multi-touch_TrackPad'
-->

A Windows Precision Touchpad device shall expose 3 mandatory top-level collections; Windows Precision Touchpad, Mouse and Configuration. An optional (recommended) collection for firmware update can also be implemented.

Figure 1 Windows Precision Touchpad HID Collections

Mouse collection

Using the HID protocol, a Windows Precision Touchpad shall provide a top-level collection that appears as generic desktop/mouse (Page 0x01, Usage 0x02).

The mouse collection of a Windows Precision Touchpad provides HID compliant mouse reporting to the host. This is especially important for hosts that are not capable of consuming input by using the Windows Precision Touchpad collection. The mouse collection shall support an input report such that relative position (x,y), and left and right buttons are reported at a minimum. There are no mandatory feature reports associated with this collection. Please see the sample descriptor for reference.

By default, Windows Precision Touchpads shall report data via the mouse collection as this is the most compatible reporting mode as mentioned above.

Configuration collection

Using the HID protocol in Windows 8.1, a Windows Precision Touchpad shall provide a top-level collection that appears as digitizer/configuration (Page 0x0D, Usage 0x0E).

The configuration collection of a Windows Precision Touchpad enables the host to configure two different aspects of the device. The collection shall support two feature reports: one that allows the host to select input mode, and the other to allow the host to be selective in what is reported. No mandatory input reports are associated with this collection.

Input mode feature report

The input mode feature report is communicated by the host to the Windows Precision Touchpad to indicate which top-level collection should be used for input reporting. There are two collections which may be used for input reporting: the mouse collection and the Windows Precision Touchpad collection.

By default, upon cold-boot/power cycle, Windows Precision Touchpads shall report input by using the mouse collection. A Windows Precision Touchpad shall only report data by using one given collection at any time and shall only report from a different collection after the corresponding feature report has been received from the host that indicates the desired input mode.

The value that is specified by the host for input mode (Usage 0x52) determines the collection that should be used to report input.

Table 1 Input Mode Usage Values

Input Mode ValueInput Reporting
0Mouse Collection
3Windows Precision Touchpad Collection

The host may issue the input mode feature report to a Windows Precision Touchpad at any time after reading the report descriptor, including the time that data is potentially being reported through the active collection. In the event that a mode switch occurs while data is being reported, all contacts and button state should be reported as up and all reporting should cease by using that collection. Reporting by using the newly specified collection can occur after all contacts are physically up. The input mode shall not be persisted by a Windows Precision Touchpad across power cycles or host initiated resets (USB reset, HID I²C HIR); however the input mode may be persisted across any device initiated reset (for example, HID I²C DIR, etc.).

Note A non-PTP capable host can send a value other than those listed in Table 1 Input Mode Usage Values. Is it recommended that the device interpret that value as 0 and switch to mouse mode because only a PTP-capable operating system will issue mode 3.

Selective reporting feature report

The input mode feature report is communicated by the host to the Windows Precision Touchpad to indicate which types of input should be reported. There are two types of input that can be reported: surface contacts and button state.

By default, upon cold-boot/power cycle, Windows Precision Touchpads shall report both surface contacts and button state. A Windows Precision Touchpad shall only report input that was previously selected by the host per the corresponding feature report.

The values that are specified by the host for surface switch (Usage 0x57) and button switch (Usage 0x58) determines the types of input that shall be reported.

Table 2 Surface and Button Switch Usage Values

Surface SwitchButton SwitchInput to be Reported
00No input is to be reported
01Only button state is to be reported
10Only surface contacts are to be reported
11Both surface contacts and button state are to be reported

The host can issue the selective reporting feature report to a Windows Precision Touchpad at any time after reading the report descriptor. The selective reporting state shall not be persisted by a Windows Precision Touchpad across power cycles.

When a USB-connected Windows Precision Touchpad is suspended, it shall only signal a remote wake based on the input the host has selected via this feature report.

An I²C connected Windows Precision Touchpad shall only generate interrupts that are based on the input that the host has selected by using this feature report.

Windows Precision Touchpad collection

Using the HID protocol in Windows 8.1, a Windows Precision Touchpad shall provide a top-level collection that appears as a digitizer/touchpad (Page 0x0D, Usage 0x05).

The Windows Precision Touchpad collection provides rich multi-contact and button reporting to the host as well as device information that pertains to those reports. The collection shall support two feature reports: one that allows the host to obtain device capabilities, and the other to obtain the device's certification status. The mandatory input report is specified in detail in the following section. An optional (highly recommended) feature report can be implemented to obtain latency mode hints from the host to achieve required power consumption on USB devices in sleep mode.

Device capabilities feature report

The device capabilities feature report is requested by the host of the Windows Precision Touchpad to elicit the device's contact reporting capabilities and device button type.

The device's contact reporting capability is defined by the maximum number of concurrent surface contacts it may report. A Windows Precision Touchpad shall support a minimum of three concurrent contacts and a maximum of five concurrent contacts and shall report this value by using the specification of the contact count maximum (Page 0x0D, Usage 0x55) in the device capabilities feature report. While reporting data, a device must not report more contacts than the contact count maximum. Any new contact information reported after the contact count maximum has been reached will be ignored by the host.

The device's button type is defined as either a depressable implementation (also referred to as click-pad type) or a non-depressable implementation (also referred to as pressure-pad). Either implementation is acceptable for a Windows Precision Touchpad.

The implementation type shall be specified via the value for button type (Page 0x0D, Usage 0x59) in the device capabilities feature report.

Table 3 Button Type Usage Values

Button Type ValueImplementation
0Depressible (Click-pad)
1Non-Depressible (Pressure-pad)

The host can request the device capabilities feature report of a Windows Precision Touchpad at any time after reading the report descriptor.

Device certification status feature report

The device certification status feature report is requested by the host of the Windows Precision Touchpad to elicit the device's 256-byte blob.

The 256-bytes shall be specified via the vendor specific usage in a vendor defined usage page (Page 0xFF, Usage 0xC5) in the device certification status feature report.

Prior to a device receiving a 256-byte blob attesting to its certification status, it shall implement a default blob as follows:

0xfc, 0x28, 0xfe, 0x84, 0x40, 0xcb, 0x9a, 0x87, 0x0d, 0xbe, 0x57, 0x3c, 0xb6, 0x70, 0x09, 0x88, 0x07, 0x97, 0x2d, 0x2b, 0xe3, 0x38, 0x34, 0xb6, 0x6c, 0xed, 0xb0, 0xf7, 0xe5, 0x9c, 0xf6, 0xc2, 0x2e, 0x84, 0x1b, 0xe8, 0xb4, 0x51, 0x78, 0x43, 0x1f, 0x28, 0x4b, 0x7c, 0x2d, 0x53, 0xaf, 0xfc, 0x47, 0x70, 0x1b, 0x59, 0x6f, 0x74, 0x43, 0xc4, 0xf3, 0x47, 0x18, 0x53, 0x1a, 0xa2, 0xa1, 0x71, 0xc7, 0x95, 0x0e, 0x31, 0x55, 0x21, 0xd3, 0xb5, 0x1e, 0xe9, 0x0c, 0xba, 0xec, 0xb8, 0x89, 0x19, 0x3e, 0xb3, 0xaf, 0x75, 0x81, 0x9d, 0x53, 0xb9, 0x41, 0x57, 0xf4, 0x6d, 0x39, 0x25, 0x29, 0x7c, 0x87, 0xd9, 0xb4, 0x98, 0x45, 0x7d, 0xa7, 0x26, 0x9c, 0x65, 0x3b, 0x85, 0x68, 0x89, 0xd7, 0x3b, 0xbd, 0xff, 0x14, 0x67, 0xf2, 0x2b, 0xf0, 0x2a, 0x41, 0x54, 0xf0, 0xfd, 0x2c, 0x66, 0x7c, 0xf8, 0xc0, 0x8f, 0x33, 0x13, 0x03, 0xf1, 0xd3, 0xc1, 0x0b, 0x89, 0xd9, 0x1b, 0x62, 0xcd, 0x51, 0xb7, 0x80, 0xb8, 0xaf, 0x3a, 0x10, 0xc1, 0x8a, 0x5b, 0xe8, 0x8a, 0x56, 0xf0, 0x8c, 0xaa, 0xfa, 0x35, 0xe9, 0x42, 0xc4, 0xd8, 0x55, 0xc3, 0x38, 0xcc, 0x2b, 0x53, 0x5c, 0x69, 0x52, 0xd5, 0xc8, 0x73, 0x02, 0x38, 0x7c, 0x73, 0xb6, 0x41, 0xe7, 0xff, 0x05, 0xd8, 0x2b, 0x79, 0x9a, 0xe2, 0x34, 0x60, 0x8f, 0xa3, 0x32, 0x1f, 0x09, 0x78, 0x62, 0xbc, 0x80, 0xe3, 0x0f, 0xbd, 0x65, 0x20, 0x08, 0x13, 0xc1, 0xe2, 0xee, 0x53, 0x2d, 0x86, 0x7e, 0xa7, 0x5a, 0xc5, 0xd3, 0x7d, 0x98, 0xbe, 0x31, 0x48, 0x1f, 0xfb, 0xda, 0xaf, 0xa2, 0xa8, 0x6a, 0x89, 0xd6, 0xbf, 0xf2, 0xd3, 0x32, 0x2a, 0x9a, 0xe4, 0xcf, 0x17, 0xb7, 0xb8, 0xf4, 0xe1, 0x33, 0x08, 0x24, 0x8b, 0xc4, 0x43, 0xa5, 0xe5, 0x24, 0xc2

The host can request the device certification status feature report of a Windows Precision Touchpad at any time after reading the report descriptor.

Latency mode feature report

The latency mode feature report is sent by the host to a Windows Precision Touchpad to indicate when high latency is desirable for power savings and, conversely, when normal latency is desired for operation. For USB-connected Windows Precision Touchpads, this enables the device to disambiguate between being suspended for inactivity (runtime IDLE) and being suspended because the system is entering S3 or Connected Standby.

The latency mode shall be indicated by using the value for the latency mode usage (Page 0x0D, Usage 0x60) in the latency mode feature report.

Table 4 Latency Mode Usage Values

Latency Mode ValueLatency Mode
0Normal Latency
1High Latency

Windows Precision Touchpad input reports

The host makes use of the following usages when extracting contact data from an input report by using the Windows Precision Touchpad collection.

Table 5 Contact Level Usages includes all mandatory usages and supported optional usages that pertain to each unique digitizer contact reported.

Table 5 Contact Level Usages

MemberDescriptionPageIDMandatory/Optional
Contact IDUniquely identifies the contact within a given frame0x0D0x51Mandatory
XX coordinate of contact position0x010x30Mandatory for T Optional for C
YY coordinate of contact position0x010x31Mandatory for T Optional for C
TipSet if the contact is on the surface of the digitizer0x0D0x42Mandatory
ConfidenceSet when a contact is too large to be a finger0x0D0x47Mandatory
WidthWidth of contact0x0D0x48Optional
HeightHeight of contact0x0D0x49Optional

Table 6 Report Level Usages includes all the mandatory usages that shall be present in all Windows Precision Touchpad input reports.

Table 6 Report Level Usages

MemberDescriptionPageIDMandatory/Optional
Report IDWindows Precision Touchpad Report ID0x0D0x05Mandatory
Scan TimeRelative scan time0x0D0x56Mandatory
Contact CountTotal number of contacts to be reported in a given report0x0D0x54Mandatory
ButtonIndicates Button State0x090x01Mandatory

Any device that does not report all mandatory usages at either the contact or report level will be non-functional as a Windows Precision Touchpad. Mandatory usages are strictly enforced by the Windows host. Where a logical maximum value has not been restricted, it can be optimized to reduce descriptor size.

Contact ID

Contact ID uniquely identifies a contact in a report for its lifecycle. The contact ID must remain constant while the contact is detected and reported by the device. Each separate concurrent contact must have a unique identifier. Identifiers can be reused after the previously associated contact is no longer detected or reported. There is no expected numeric range and the values that are used are only limited by the specified logical maximum in the descriptor.

X/Y

X and Y report the coordinates of a given contact. A Windows Precision Touchpad can report two points for each contact.

The first point (known as T) is considered the point that the user intended to touch, and is mandatory.

The optional second point (known as C) is considered the location of the center of mass of the contact. To report optional height and width usages, reporting the second point is mandatory (and vice-versa).

Devices that are capable of reporting T and C should have a usage array of two X values and two Y values. The values in the first position in the arrays are interpreted as the coordinates for T and the values in the second position are interpreted as the coordinates for C. For devices that opt to report both T and C, the report count for both X and Y usages shall be 2, to indicate the presence of a usage array.

The following global items shall be specified for both the X and Y usages:

  • Logical minimum & Logical maximum (ensuring >= 300DPI input resolution)Note The entire logical coordinate range shall be reportable across both the X and Y axis.

  • Physical minimum & Physical maximum (see Device Integration - Size)

  • Unit & Unit exponent

Tip

The tip switch is used to indicate when the contact is on the surface or has left the surface of the digitizer. This is indicated by a main item with a report size of 1 bit. When delivering a contact report, the bit should be set when the contact is on the digitizer surface and cleared when the contact has left the surface.

When a contact is being reported with the tip switch clear, the X/Y location that is reported should be the same as the last position that was reported with the tip switch set. Safari set up.

Figure 2 Two Contacts with Separated Lift

With reference to the example in Figure 2 Two Contacts with Separated Lift, two contacts are placed on a Windows Precision Touchpad. Some time later, the first contact is lifted while the second remains on the surface. This would be reported as described in Table 7 Report Sequence for Two Contacts with Separated Lift (Two-Finger Hybrid).

Table 7 Report Sequence for Two Contacts with Separated Lift (Two-Finger Hybrid)

Report1234567891011
Contact Count22222211111
Contact 1 Tip Switch111110NRNRNRNRNR
Contact 1 X,YX₁,Y₁X₂,Y₂X₃,Y₃X₄,Y₄X₅,Y₅X₅,Y₅NRNRNRNRNR
Contact 2 Tip Switch11111111110
Contact 2 X,YX₁,Y₁X₂,Y₂X₃,Y₃X₄,Y₄X₅,Y₅X₆,Y₆X₇,Y₇X₈,Y₈X₉,Y₉X₁₀,Y₁₀X₁₀,Y₁₀

Confidence

Confidence is used to indicate that the contact does not have any dimensions (height or width) > 25mm that implies that it is not an unintended contact. Windows Precision Touchpads should not reject any contacts in firmware processing, but should forward all contacts to the host and indicate the confidence. After a device has deemed a contact to be unintentional, it shall clear the confidence bit for that contact report and all subsequent reports. Until a contact has been deemed unintentional, the device shall set the confidence bit for that contact being reported.

Width/Height (optional)

The Width and Height usages represent the width and height of the bounding box around the center of mass of a given contact. The reported values should never be 0 except when a contact up event is being reported (Tip bit cleared), in which case they shall both be 0. If Height and Width are reported they shall be accurate within +/-2mm of the actual contact dimensions.

The following global items shall be specified for both the Width and Height usages:

  • Logical minimum & Logical maximum (this is relative to the min/max specified for X/Y)

Scan time

Scan Time reports relative digitizer time in 100µs units. It represents the delta from the first frame that was reported after a device starts reporting data subsequent to a period of inactivity. The first scan time received is treated as a base time for subsequent reported times. The deltas between reported scan times should reflect the scanning frequency of the digitizer. It is important to note that unlike other usages, the host does not allow any flexibility for the unit for the scan time usage. It must be in 100µs units. The value is expected to roll over, as only 2 bytes are allocated to the counter.

The scan time value should be the same for all contacts within a frame.

Contact count

Contact count is used to indicate the number of contacts that are being reported in a given frame irrespective of their associated tip switch.

Button

The button bit specifies the up/down state of the Windows Precision Touchpad button. Irrespective of button type implementation, when the button has received the required amount of activation force its down state shall be reported by setting the button bit. When the activation force applied to the button falls below the required threshold, the up state shall be reported by clearing the button bit.

Figure 3 Contact with Button Down and Up

Device

With reference to the example shown in Figure 3 Contact with Button Down and Up, a contact is placed on a Windows Precision Touchpad with sufficient activation force to invoke a button down. Some later time the activation force is reduced so that it invokes a button up, while the contact remains on the surface for some additional time. This would be reported as described in Table 8 Report Sequence for Contact with Button Down and Up.

Table 8 Report Sequence for Contact with Button Down and Up

Report1234567891011
Contact Count11111111111
Button111110NRNRNRNRNR
Contact 2 Tip Switch11111111110
Contact 2 X,YX₁,Y₁X₂,Y₂X₃,Y₃X₄,Y₄X₅,Y₅X₆,Y₆X₇,Y₇X₈,Y₈X₉,Y₉X₁₀,Y₁₀X₁₀,Y₁₀

Figure 4 Button Only Down and Up

With reference to the example shown in Figure 4 Button Only Down and Up, a non-capacitive contact is placed on a Windows Precision Touchpad with sufficient activation force to invoke a button down. Some later time, the activation force is reduced so that it invokes a button up. This would be reported as described below in Table 9 Report Sequence for Button Only Down and Up.

Table 9 Report Sequence for Button Only Down and Up

Report12345
Contact Count00000
Button11110

Packet reporting modes

Parallel mode

In Parallel mode, devices report all contact information in a single packet. Each physical contact is represented by a logical collection that is embedded in the top-level collection. This logical collection contains all the usages that the device supports for each contact. When taking advantage of Parallel mode, each of the logical collections must be identical. Because the device generally reports fewer contacts than the maximum, the number of contacts that are reported in a parallel packet should be communicated by using the Contact Count usage.

For example, consider a device that supports three contacts. If the user has only two fingers on the digitizer, the parallel packet has only two valid contact data in a report that can carry data for three contacts. In this case, the Contact Count should be set to two so that the client application knows that any information about more than two contacts is not valid.

A disadvantage of reporting multiple contacts in one report is that space is wasted per report every time that there are fewer contacts than the maximum number of contacts possible. Devices can use the Hybrid mode to reduce this inefficiency.

Hybrid mode

In Hybrid mode, the number of contacts that can be reported in one report is less than the maximum number of contacts that the device supports. For example, a device that supports a maximum of 4 concurrent physical contacts can set up its top-level collection to deliver a maximum of two contacts in one report. If four contact points are present, the device can break these down into two serial reports that deliver two contacts each.

When a device delivers data in this manner, the contact count usage value in the first report should reflect the total number of contacts that are being delivered in the hybrid reports. The other serial reports should have a contact count of 0.

Single finger hybrid reporting mode

The first input report for a given frame shall indicate the total number of contacts that are to be reported by using the contact count usage and all subsequent input reports for the same frame shall have a value of 0 for the contact count usage to indicate that they are part of the previously reported frame. The scan time for all reports of a given frame shall be identical.

Logitech Multi Device Trackpad

Table 10 Reporting Sequence 2 Contacts (Single-Finger Hybrid)

Report123456
Contact Count202020
Contact ID121212
Contact 1 X,YX₁,Y₁NRX₂,Y₂NRX₃,Y₃NR
Contact 1 Tip Switch1NR1NR1NR
Contact 2 X,YNRX₁,Y₁NRX₂,Y₂NRX₃,Y₃
Contact 2 Tip SwitchNR1NR1NR1
Scan TimeT₁T₁T₂T₂T₃T₃

USB and I²C connected Windows Precision Touchpads can deliver input reports in either single-finger hybrid reporting mode or two-finger hybrid reporting mode.

Firmware update collection (optional)

Using the HID protocol in Windows 8.1, a Windows Precision Touchpad may provide a vendor specific top-level collection for performing device firmware and vendor configuration updates.

Multi device trackpad replacement

With reference to the example shown in Figure 3 Contact with Button Down and Up, a contact is placed on a Windows Precision Touchpad with sufficient activation force to invoke a button down. Some later time the activation force is reduced so that it invokes a button up, while the contact remains on the surface for some additional time. This would be reported as described in Table 8 Report Sequence for Contact with Button Down and Up.

Table 8 Report Sequence for Contact with Button Down and Up

Report1234567891011
Contact Count11111111111
Button111110NRNRNRNRNR
Contact 2 Tip Switch11111111110
Contact 2 X,YX₁,Y₁X₂,Y₂X₃,Y₃X₄,Y₄X₅,Y₅X₆,Y₆X₇,Y₇X₈,Y₈X₉,Y₉X₁₀,Y₁₀X₁₀,Y₁₀

Figure 4 Button Only Down and Up

With reference to the example shown in Figure 4 Button Only Down and Up, a non-capacitive contact is placed on a Windows Precision Touchpad with sufficient activation force to invoke a button down. Some later time, the activation force is reduced so that it invokes a button up. This would be reported as described below in Table 9 Report Sequence for Button Only Down and Up.

Table 9 Report Sequence for Button Only Down and Up

Report12345
Contact Count00000
Button11110

Packet reporting modes

Parallel mode

In Parallel mode, devices report all contact information in a single packet. Each physical contact is represented by a logical collection that is embedded in the top-level collection. This logical collection contains all the usages that the device supports for each contact. When taking advantage of Parallel mode, each of the logical collections must be identical. Because the device generally reports fewer contacts than the maximum, the number of contacts that are reported in a parallel packet should be communicated by using the Contact Count usage.

For example, consider a device that supports three contacts. If the user has only two fingers on the digitizer, the parallel packet has only two valid contact data in a report that can carry data for three contacts. In this case, the Contact Count should be set to two so that the client application knows that any information about more than two contacts is not valid.

A disadvantage of reporting multiple contacts in one report is that space is wasted per report every time that there are fewer contacts than the maximum number of contacts possible. Devices can use the Hybrid mode to reduce this inefficiency.

Hybrid mode

In Hybrid mode, the number of contacts that can be reported in one report is less than the maximum number of contacts that the device supports. For example, a device that supports a maximum of 4 concurrent physical contacts can set up its top-level collection to deliver a maximum of two contacts in one report. If four contact points are present, the device can break these down into two serial reports that deliver two contacts each.

When a device delivers data in this manner, the contact count usage value in the first report should reflect the total number of contacts that are being delivered in the hybrid reports. The other serial reports should have a contact count of 0.

Single finger hybrid reporting mode

The first input report for a given frame shall indicate the total number of contacts that are to be reported by using the contact count usage and all subsequent input reports for the same frame shall have a value of 0 for the contact count usage to indicate that they are part of the previously reported frame. The scan time for all reports of a given frame shall be identical.

Logitech Multi Device Trackpad

Table 10 Reporting Sequence 2 Contacts (Single-Finger Hybrid)

Report123456
Contact Count202020
Contact ID121212
Contact 1 X,YX₁,Y₁NRX₂,Y₂NRX₃,Y₃NR
Contact 1 Tip Switch1NR1NR1NR
Contact 2 X,YNRX₁,Y₁NRX₂,Y₂NRX₃,Y₃
Contact 2 Tip SwitchNR1NR1NR1
Scan TimeT₁T₁T₂T₂T₃T₃

USB and I²C connected Windows Precision Touchpads can deliver input reports in either single-finger hybrid reporting mode or two-finger hybrid reporting mode.

Firmware update collection (optional)

Using the HID protocol in Windows 8.1, a Windows Precision Touchpad may provide a vendor specific top-level collection for performing device firmware and vendor configuration updates.

The vendor-specific firmware update collection can provide an output report for transferring the firmware payload from the host to the device.

This is highly advantageous as it allows for firmware updates to be performed without requiring a driver on the host.

It should be noted that field firmware update capability is a requirement for Windows Precision Touchpads and the above mechanism is recommended for compliance. It is mandatory for the wVersionID to be incremented after a firmware upgrade.

Multi Device Trackpad Keeps

Windows Precision Touchpads shall be able to recover from a failed firmware update, due to power loss or other error, by using a power cycle.

Multi Device Trackpad Replacement

It is highly recommended that basic mouse functionality be available even after a failed firmware update.





broken image