How to Design and Test Multitouch Hardware Solutions for Windows 7 - 1
How to Design and Test Multitouch Hardware Solutions for Windows7
Guidelines for Providing a High-Quality User Experience and Logo Compliance
October 15, 2010
Abstract
Windows® Touch encompasses the touch and multitouch capabilities that are built into Windows7. This paper provides information about how to design and test hardware solutions for Windows Touch.It provides guidelines for independent hardware vendors (IHVs) and original equipment manufacturers (OEMS) to address the quality standards that these hardware solutions must meet so that users have a successful experience with multitouch.The paper also includes associated logo requirements and tests.
This paperalso provides guidelines for developers, integrators, and testers of multitouch digitizers and systems to build and test solutions that provide a high-quality user experience and meet the requirements of the Windows Logo Program for the Windows Touch technology.
Note:Although the information and the logo requirements that are referenced within this paper are focused on multitouch digitizer solutions, many general concepts and principles also apply to multitouch trackpad devices and systems.
This information applies for the Windows 7 operating system.
References and resources discussed here are listed at the end of this paper.
For the latest information, see:
Disclaimer: This document is provided “as-is”. Information and views expressed in this document, including URL and other Internet Web site references, may change without notice. You bear the risk of using it.
Some examples depicted herein are provided for illustration only and are fictitious.No real association or connection is intended or should be inferred.
This document does not provide you with any legal rights to any intellectual property in any Microsoft product. You may copy and use this document for your internal, reference purposes. You may modify this document for your internal, reference purposes.
© 2010 Microsoft Corporation. All rights reserved.
Document History
Date / ChangeOctober 15, 2010 / Updated links in Resources section.
December 18, 2008 / Revised to highlight Windows 7 Touch technology.
November 5, 2008 / First publication.
Contents
The User Experience—and Why It Is Important
Design and Test Cycle
Components of Quality and the Logo Requirements
Consistency
Screen Coverage
Battery Power
No Ghost Noise
Performance
HID Compliance
Digitizer Device Class
Supported Usages
Report Integrity and Sequencing
Core Accuracy
Resolution
Sampling Rate
Jitter
Offset
Separate and Simultaneous Contact
Line Accuracy
Contact Width and Height
Confidence Usage
Pressure Usage
Finger Uplift
Ink and Touch Together
Device and Driver Fundamentals
Sleep and Hibernate States
Reliability and Stability
Driver Quality Rating
Finishing the Job: Driver Distribution and Updates
Summary and Call to Action
Resources
Appendix: Multitouch Digitizer Logo Requirements
The User Experience—and Why It Is Important
Windows® Touch is the name for the multitouch capabilities that are built into the platform in Windows7. Multitouch interaction holds the promise of pleasing users and inspiring developers. The digitizer technologies that enable natural and intuitive gestures are revolutionizing human-computer interaction and heralding a new era of natural user interfaces.
Or are they?
Multitouch technology will fail if the user experience that it delivers is not truly great. Broad adoption is possible only if every user experience with multitouch iseffortless, intuitive, and consistent. For this to occur, every component in the technology stack must be responsive, robust, and tuned to work in the ways that real people interact with touchscreens. The strict and sometimes complex demands of the user experience affect the hardware level the most because the user interacts first with the digitizer. Behind every touch that the digitizer detects is a user who has very high expectations and a very low tolerance for dubious quality.
At Microsoft, we believe in the promise that multitouch technology is poised to deliver and we believe that the time for this technology is now. We are eagerto work with device and system manufacturers, with driver developers and software developers, and with everyone in the multitouch ecosystem to set the standards for a high-quality user experience that Windows Touch can deliver and our customers deserve.
This paper focuses on how device and driver components can define the user experience by the set of features that they support and how they implement those features. It breaks the user experience into general principles, contexts of use, and individual areas of functionality, and it outlines the Windows logo requirements that pertain to each one.
The paper also offers design and testing tips on how to meet the standards. This white paper is only part of the story, though. Read the related materials and feel free to contact us at if you work in this area. We are ready to help you understand and meet these requirements and address any other questions that you have.
Design and Test Cycle
You should use the requirements in this paper as factors in designingmultitouch devices and drivers, and as standards for testing throughout the product cycle. We also recommendtesting and verification with real users outside the lab at major development milestones. Lessons from real-world usability testing are often invaluable.
Because testing the user experience is impossible in a fully automated manner, we will supply manual test applications in the Windows Logo Kit (WLK) 1.4. These tests prompt test operators to conduct certain multitouch operations on the screen, such as touching graphical dots in different places and tracing lines. You can use this input to automatically verify many of the logo requirements.
Because the end-user experience is so fundamental to the success of Windows Touch solutions, we want to establish a practice of objectivity and consistency for the manual tests, with the goal of passing or failing a test with complete fairness, transparency, and consistency. To achieve this, test operators must be able to run the tests in the same way regardless of which hardware lab, in which company, in which country of the world they are in. We will publish precise details on the human and environmental parameters to run the manual tests, so that the methodologies and contexts of testing are identical and reproducible for everyone who wants to run them.
Furthermore, as a prerequisite of device logo certification we reserve the right to request device manufacturers to submit their devices and drivers to us for final verification of the device. In these cases, our engineers will run the tests in exactly the ways they are published and validate individual solutions against the specified criteria. We will also contact submitters on individual problems and provide advice on issues where possible.
For systems, we strongly encourage hardware integrators to test and retest the digitizers in many situations. Even placing certain digitizers in casings or other environments can cause physical or electromagnetic problems that affect use or function. For example, bezel placement can affect the ability of optical or infrared digitizers to cover all areas of the screen andnearness to some electronic circuitry or other hardware can affect the consistency of touch detection in capacitive digitizers.
The same testing labs and support levels that run the manual verification tests for device logo certification are available to original equipment manufacturers (OEMs) and original device manufacturers (ODMs) to submit their integrated systems for testing and support. We strongly recommend that system manufacturers use this service to find and address user experience and logo issues early in the production cycle. Note, however, that this is an optional but not required step for system-level logo certification.
Because the logo program for Windows Touch is a strong measure of the quality of the user experience with hardware solutions, we plan to make logo certification a requirement for devices to interoperate with the multitouch features in Windows 7. This means that devices that do not obtain logo certification cannot gain access to the Windows Touch features in the operating system.
Components of Quality and the Logo Requirements
This section divides the quality of the user experience into several dimensions, highlights any associated logo requirements, and offers tips about how to design and test your device to meet these requirements.
Consistency
Consistency of the user experience across applications and usage environments is fundamental to satisfaction with Windows Touch technology. The following dimensions of consistency and robustness are necessary for success.
Screen Coverage
Logo Requirement: Input requirements apply equally to all touchable areas, including edges and corners
Some digitizer technologies work better than other technologies to recognize input consistently across all touchable areas of the screen. Many technologies encounter problems, especially at the edges and corners. Poor casing and bezel placement can also cause screen coverage issues for otherwise well-performing digitizers when they are integrated into systems during manufacture.
All systems must respond equally well to contacts at the extremes edges of the screen because window and desktop management in Windows emphasizes interaction in edges and corners.
Consider a maximized word processor or browser application.Window controls and primary application functions are typically at the top of the screen, scrolling occurs at the edges, and most users keep the Windows taskbar at the bottom oralong another edge. The Windows Start menu is usually at the lower-leftcorner of the screen, the application’s Close button is at the upper-right, and most frequent application interaction control is often at the upper-left, such as the Back button in Microsoft® Internet Explorer 7 and the Pearl in Microsoft Office 2007 applications. Typically, at least three edges and three corners hold important interaction points.
The WLK includes manual tests that require contact across the screen, including all edges and corners. It is very important that you run these tests not just on the raw digitizer but at all phases of construction, when digitizer placement or contact with other components could affect the digitizer’s ability to perform well in edges and corners.
Battery Power
Logo Requirement: For battery-operated devices, the requirements are met whether the device is running on AC or battery power
Mobile scenarios are some of the most compelling for Windows Touch users.It is important that you maintain consistency of the touch experience whether mobile touch machines are plugged in or running on battery power. Certain digitizer technologies can be susceptible to changes in performance when they are running on DC input. In these cases, you should customize designs to both power sources, so that the user experience does not change and they do not even need to be aware of the power source.
You should run the logo test pass twice for portable devices—once on AC power and once on battery power—and ensure that the device passes all tests for both passes.
No Ghost Noise
Logo Requirement: No data is reported for locations where contact is not made
We cannot overstate the importance of eliminating phantom input. Random input can have a major and destructive effecton user workflow, and can quickly reducethe trust that users have in Windows Touch technology.
Note that this applies not only when users interact with the computer, but also when the computer is not receiving input and is immobile or in motion. In the real-world, users place mobile computers in different environments, walk between locations, and otherwise move around. The placement and movement of the machine should not make it susceptible to ghost noise.
The logo tests are sensitive to unprompted input and include a period of inactivity and movement when no input is to be detected. However no logo test can possibly cover all the contexts of use for the machine. You should test devices and systems creatively, beyond the directions for the logo tests. As noted earlier, inconsistent detection of input is probably the fastest way to turn users irrevocably against Windows Touch technology.
Input that is triggered by environmental contact and not from user input is a similar issue. Some digitizer technologies are susceptible to detecting environmental debris on the screen such as a small insect, which can be equally destroy user confidence. You should tune contact detection as much as you can to recognize valid finger contact and not other nonhuman contamination. Note that the WLK does not currently support tests that validate this requirement.
Performance
Logo Requirement: No specific requirement (see “Sampling Rate”later in this paper)
The responsiveness of the touch digitizer is a primary factor in determining the success of any given system or device. Users do not tolerate slow response under any circumstances.
Therefore, it is important that you build and test for performance from the ground up. You should not include any firmware or driver processing that is not dedicated exclusively to providing Windows Touch processes with correct human interface device (HID) packets. For example, we strongly discourage doing supplementary gesture recognition in the device or drivers.
Drivers should use parallel or hybrid mode for data reporting and should optimize for high packet rates and fast reporting of the confidence usage wherever possible. For a discussion of reporting modes, see “Digitizer Drivers for Windows Touch and Pen-Based Computers,” which is listed in “Resources” at the end of this paper.
Except for sampling rate, we cannot specify any direct requirements or explicit tests to measure component responsiveness or resource usage metrics. However, to operate effectively, the manual test applications in the WLK require reasonable end-to-end response times.
HID Compliance
For the Windows 7 operating system to respond appropriately to device and driver input, your device must adhere to HID protocols for Windows Touch.
For more details about the HID extensions for Windows Touch, see “Digitizer Drivers for Windows Touch and Pen-Based Computers”on the WHDC Web site.
Digitizer Device Class
Logo Requirement: Multitouch digitizers appear to the operating system as HID digitizers and not as a mouse or other proprietary device
Windows Touchis not available to devices that are not identified as HID digitizers. As defined in the USB HID Usage Tables specification, this identification consists of the digitizer page (0x0D), along with usage ID 0x04 to specify the Collection Application for touchscreens.
Devices that function as multiple input mechanisms, such as mouse devices, must include a top-level collection for the primary device and one for a mouse in their report descriptor.
The WLK includes automated testing to validate device class as specified in the report descriptor.
Supported Usages
Logo Requirement: No specific requirement; falls under general HID compliance
To benefit the most from Windows Touch, multitouch digitizers should comply with the core HID and multitouch extension usages as defined in the specifications. For more information on HID pages and usages, refer to the USB HID Usage Tables specification. For more information on individual usages, see “Digitizer Drivers for Windows Touch and Pen-Based Computers” on the WHDC Web site.
You must implement support for the following usages:
- X (page 0x01, usage 0x30) and Y (page 0x01, usage 0x31).
- Contact Identifier (page 0x0D, usage 0x51).
- Tip switch (page 0x0D, usage 0x42).
- In-range (page 0x0D, usage 0x32).
- Maximum count (page 0x0D, 0x55).
The device should report known physical dimensions by using the Physical Dimensions property of the x and y usage. Inaccurate information about the physical dimensions can affect the ability of Windows Touch to accurately recognize gestures.If for any reason the digitizer cannot report accurate physical dimensions, it should report them as 0 units.
Report Integrity and Sequencing
Logo Requirement: No specific requirement; falls under general HID compliance
Correct USB HID behavior also applies to the integrity of each usage report package and the sequence of the usage reports.
The Windows Touch tests in the WLK validate adherence to the usage details of the Human Interface Device (HID) Extensions and Windows/Device Protocol for Multitouch Digitizers specification. The tests also validate that packet sequencing is correct, for example, that tip switch packets are sent in the correct order (up, down, up, down).