Supported usages in multi-touch digitizers

In the context of Windows Pointer Device, multi-touch refers to support for two or more contact points. This topic describes the required and optional usages for a multi-touch digitizer device.

Required HID usages for multi-touch digitizers

The report descriptor for a multi-touch digitizer must specify that the device is a HID touch screen (page 0x0D, usage 0x04).

In addition to the existing HID touch usages, multi-touch digitizers must implement the following usages:

  • Contact identifier
  • Contact count maximum
  • Scan Time

Optional HID usages

The following usages are optional, but multi-touch digitizers should report them if the digitizer hardware supports them.

  • Confidence
  • Pressure
  • Azimuth
  • In-range (optional for touch, required for pen)
  • Width and Height

HID usages for multi-touch digitizers

The HID standard defines the following usages for multi-touch input from digitizers.

Name Description CA usage Page Type ID

Contact identifier

Contact identifier

Touch

Digitizer

Dynamic Value (DV)

0x51

Contact count

Actual contact count

Touch

Digitizer

DV

0x54

Contact count maximum

Maximum number of contacts supported

Touch

Digitizer

DV

0x55

 

Contact identifier

Specifies the identifier of the current contact. An identifier must remain constant while the contact is detected by the device. Each separate concurrent contact must have a unique identifier. Identifiers can be reused if a contact is no longer detected. If the device supports "in-air" packets (the contact is hovering above the surface), the identifier must persist from the time that the contact is detected until the time that it goes out of range.

Contact count

Specifies the number of valid contacts in the current packet. Drivers that use parallel or Hybrid mode should include this usage. A device that cannot provide this value must use NULL for all values in the first position that do not contain valid contact information. However, NULL is an option only for Parallel mode devices. Devices should not use a combination of Contact count and NULL for reporting the actual count. Either one or the other should be used.

Contact count maximum

Specifies the total number of contacts that a multi-touch device supports. This usage must be included in the multi-touch top-level collection and not in any child collection. This usage must be present in a feature report in the touch top-level collection. 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. A device without the Contact count maximum in the descriptor will be considered to be a single-touch device.

 

 

Send comments about this topic to Microsoft