With the release of Windows 7 we are seeing a great deal of maturity of the Windows Portable Device (WPD) Platform. The WPD Platform includes the WPD APIs with WPD Automation and native Device Services, the Media Transfer Protocol (MTP) class drivers with MTP over USB, MTP over IP, and MTP over Bluetooth. For more information on what was new for Windows 7, see our New Features for Windows 7 post. Due largely to the native support in Windows and our high level of engagement with industry partners we were able to put together a new comprehensive Logo program for Portable Devices that work well with Windows.
This blog post covers the following topics:
The Windows Logo Program is designed to address the current and future market needs of customers using the Windows platform. The Windows logo signifies the compatibility and reliability of systems and devices with the Windows operating system. It gives customers confidence that your product is thoroughly tested with Microsoft-provided tools and ensures a good user experience.
The Windows Logo Program helps partners to innovate and bring a premium experience to market, thereby improving their ability to increase market share. The program strives to continuously improve its processes, responsiveness, and partner satisfaction.
There are currently 3 logo categories that are accepting submissions for Portable Devices, they are:
Digital Still Camera- This program supports logo for Windows 7 and Windows Vista
Portable Media Player- This program supports logo for Windows 7 and Windows Vista. The PlaysForSure program was retired at the end of August 2009.
Cellular Handset (Phone)- This program supports logo for Windows 7, Windows Vista, and Windows XP.The PlaysForSure program was retired at the end of August 2009.
With the release of the Windows Logo Kit (WLK) 1.5, which is due to release at the end of November 2009, we will see one additional category:
Other Portable Devices - This program supports logo for Windows 7.
This new category is being made available as an option for hardware manufacturers that support the core set of MTP Revision 1.0 operations, device properties, and object formats. Passing this logo program provides validation that the device has implemented the MTP protocol correctly, so that the device will work as expected with the MTP class driver in Windows 7.
The following table provides a breakdown of requirements for each of these 4 categories. The ‘R' in the table implies that the operation,property, or object format is required. If the field is blank the requirement is optional.
RequiredOperations
Property Code
Cellular Handset
Portable Media Player
Digital Camera
Other Portable Devices
Operations
GetDeviceInfo
0x1001
R
OpenSession
0x1002
CloseSession
0x1003
GetStorageIDs
0x1004
GetStorageInfo
0x1005
GetNumObjects
0x1006
GetObjectHandles
0x1007
GetObjectInfo
0x1008
GetObject
0x1009
SetDevicePropValue
0x100a
DeleteObject
0x100b
SendObjectInfo
0x100c
SendObject
0x100d
GetDevicePropDesc
0x1014
GetDevicePropValue
0x1015
GetPartialObject
0x101b
GetObjectPropsSupported
0x9801
GetObjectPropDesc
0x9802
GetObjectPropValue
0x9803
SetObjectPropValue
0x9804
GetObjectReferences
0x9810
SetObjectReferences
0x9811
See Appendix D - Operations in the MTP Specification, Revision 1.0 for complete list of defined MTP Operations.
Required Device Properties
Device Properties
Battery Level
0x5001
R(1)
Synchronization Partner
0xd401
Device Friendly Name
0xd402
See Appendix C - Device Properties in the MTP Specification, Revision1.0 for complete list of defined Device Properties.
(1)Digital Cameras are required to support Battery Level after June 2010.
Required Object Formats
The following table represents the list of required object formats for a portable device. Each object format also has a list of object properties that must be supported per object type. See requirement PORTABLE-0064 for more details.
Object Formats
Undefined
0x3000
Association
0x3001
Abstract Audio Album
0xba03
Abstract Audio & Video Playlist
0xba05
WAV
0x3008
R(2)
MP3
0x3009
AVI
0x300a
MPEG
0x300b
ASF
0x300c
EXIF/JPEG
0x3801
TIFF/EP
0x3802
BMP
0x3804
WMA
0xb901
AAC
0xb903
WMV
0xb981
MP4 Container
0xb982
3GP Container
0xb984
(2) Portable devices that are capable of playing audio and/or video must support at least one of these formats. This table does not represent the complete list of supported formats; it represents the list of commonly used formats.
See Appendix A - Object Formats in the MTP Specification, Revision 1.0 for complete list of defined Device Properties.
The Windows Logo Program for Hardware creates a list of requirements that the validation tests are based on. During the hardware design phase it is critical that manufacturers that are going to be involved with the logo process review the logo requirements that are applicable to a target OS,such as Windows 7. Although the majority of requirements that are outlined for Portable Devices are based on industry standards and specifications or white papers published by Microsoft, there are some requirements that may not be apparent until you attempt to run through the WLK and come across a failure that you do not expect. For example, we have portable device specific behavior requirements defined but there are also fundamental requirements that apply to all devices for Windows. There are also requirements that apply to all USB devices, one such requirement is support for USB serial numbers for all portable USB devices. Additional requirements can be reviewed by downloading the Prepared Requirements Reports which are organized by specific hardware technologies.
The Windows Logo Kit (WLK) is used to validate the requirements defined for the logo program. This kit can also be used for product development. We encourage its use during the product development cycle of hardware in order to ensure device compliance with both Windows and industry standards. The kit includes several tests designed to validate device implementation and behavior at multiple levels. There are tests for USB compliance, MTP compliance, and WPD platform compliance that also cover device services validation.
Thecore tests provided for portable devices are:
For detailed description of these tests, please go to the WLK help documentation.
There is a significant amount of information available about the WLK, including user guides and video tutorials. For more information about the WLK see: http://www.microsoft.com/whdc/winlogo/WLK/default.mspx
The kit is free to download and use.
There is a wealth of additional information that has been made available for this program. Here are some of the key helpful links that will help you navigate the logo program.
We strongly encourage anyone that is going to participate in the logo program to review the Windows Logo Program Webcasts as well. These are a series of videos that can be viewed on demand that covers logo planning, testing, development, and how to submit logo packages using the qualification page at https://winqual.microsoft.com.
There are several development resources available for portable device manufacturers. Probably the best source for this information was put together and released as a WPD Team Blog back in September, refer to Windows7 Portable Device Development Kits for details. That blog post covered the following development resources:
If you have general questions about MTP or WPD development, contact AskMTP at microsoft dot com.
This posting is provided "AS IS" with no warranties and confers no rights.