Presentation is loading. Please wait.

Presentation is loading. Please wait.

Cameron Brodeur Program Manager. The Windows 7 Device Experience Device containers Device metadata Demo Q&A.

Similar presentations


Presentation on theme: "Cameron Brodeur Program Manager. The Windows 7 Device Experience Device containers Device metadata Demo Q&A."— Presentation transcript:

1 Cameron Brodeur Program Manager

2 The Windows 7 Device Experience Device containers Device metadata Demo Q&A

3 User experience features that define how people discover and use devices that are connected to their PC System and platform features that define how device makers present their devices and related services in Windows Installation Enumeration of Capabilities Presentation and Configuration Binding to Applications and Services

4 Devices and Printers Device Manager

5 New folder makes it easier to find and use devices Simplified pairing for Bluetooth, Wi-Fi, and networked devices Multifunction devices appear as one device “Album Art” for devices enriches the user experience OEM and IHV extensibility point

6 Branding Tasks Preview Shell Icon

7 Windows 7 places the device “center stage” Devices and Printers Device Stage Each device must be grouped into a single device container Each device must be grouped into a single device container

8 Main Entry: de·vice con·tain·er Pronunciation: \di- ˈ vīs kən- ˈ tā-nər\ Function: noun a : an object which holds all of the functions exposed by a single device b : a virtual representation of the physical device Date: 2008; Windows 7 Use: The device container for the computer holds the processor, the display adapter, the PCI bus, the USB Universal Host Controller, the 1394 OHCI Compliant Host Controller and many other devices inside the PC. Main Entry: de·vice con·tain·er Pronunciation: \di- ˈ vīs kən- ˈ tā-nər\ Function: noun a : an object which holds all of the functions exposed by a single device b : a virtual representation of the physical device Date: 2008; Windows 7 Use: The device container for the computer holds the processor, the display adapter, the PCI bus, the USB Universal Host Controller, the 1394 OHCI Compliant Host Controller and many other devices inside the PC.

9 Device Container

10 Globally Unique Identifier (GUID) unique to a physical device All devnodes belonging to a device container on a given bus share the same ContainerID ContainerID can be embedded in the device or is auto-generated by Plug and Play Devices inside the computer need to report themselves as not Removable Devices external to the computer: top devnode in the hierarchy should report Removable, children should report not Removable

11

12

13 Devices and Printers and Device Stage UI DDOI provider PnP Device Function Object (DFO) provider PnP Device Function Object (DFO) provider Bluetooth Device Function Object (DFO) provider Bluetooth Device Function Object (DFO) provider Print Device Function Object (DFO) provider Print Device Function Object (DFO) provider PnP APIsBluetooth APIsPrint APIs PnPBluetooth StackPrint Stack PnP DevnodesBluetooth Services Print Queues Opening DnP causes all Device Containers to be enumerated DDOI calls all registered DFO providers Each DFO provider is responsible for returning a collection of all device functions in its stack Stack specific APIs called for enumeration Each stack enumerates all device functions and the collection is returned to the calling DFO PnP devnodes have a ContainerID assigned during installation For other device stacks, the DFO may be responsible for assigning a ContainerID at this time Device functions are returned to DDOI Grouped into Device Containers Metadata retrieved Device Containers are displayed and device functionality can be accessed A A A A A A A A B B B B B B B B C C C C C C C C C C B B A A C C B B A A C C B B A A C C B B A A C C C C B B B B A A A A

14 Two new Windows Logo Program requirements for device containers in Windows 7 Ensure computers and devices are grouped into a single device container DEVFUND-0034 All PnP devices must properly implement the CM_DEVCAP_REMOVABLE capability DEVFUND-0034 SYSFUND-0200 Computers must appear as a single object in the Devices and Printers folder SYSFUND-0200

15 Devices externally connected to the computer must report the Removable capability correctly Removable indicates that a devnode can be physically disconnected from its parent Each Removable devnode marks the boundary of a device New device container created for each Removable devnode DEVFUND-0034 All PnP devices must properly implement the CM_DEVCAP_REMOVABLE capability DEVFUND-0034

16 Declaring that a devnode is Removable indicates to PnP that the devnode is the root of a device container Only the root devnode should be reported as Removable Child devnodes of the root should not be reported as Removable Unless they actually represent physically detachable devices Non-Removable child devnodes will inherit the ContainerID of their parent ContainerID {ABCD-…} Device Root Device Root

17 Declaring that a devnode is Removable indicates to PnP that the devnode is the root of a device container Only the root devnode should be reported as Removable Child devnodes of the root should not be reported as Removable Unless they actually represent physically detachable devices Non-Removable child devnodes will inherit the ContainerID of their parent ContainerID {ABCD-…} ContainerID {1234-…} ContainerID {ABCD-…} Function A Function A Device Root Device Root

18 Windows 7 sees four devnodes USB Mouse User sees a mouse

19 Manual test 1.Install the device on the PC 2.Verify the device has successfully installed a.Device is working properly b.No yellow-bang icon on any devnodes 3.Verify that the device is powered on 4.Open the Devices and Printers folder 5.Locate the device in the Devices and Printers folder 6.Only one icon per physical device in the Devices and Printers folder

20 In Windows 7 the computer is a device Computers contain many integrated devices of interest to the user To properly represent the computer, all of this functionality must be grouped into a single device container for the computer Devices integrated with the computer must not report themselves as Removable from the computer SYSFUND-0200 Computers must appear as a single object in the Devices and Printers folder SYSFUND-0200

21 Devices and Printers folder for a laptop with nothing connected to it Devices and components inside the computer should not appear These components are displayed because the hardware or the bus driver reported it as Removable from the laptop

22 Several options for setting the Removable capability on a devnode Are you supplying a custom bus driver for the device? Bus drivers are responsible for correctly setting the Removble capability of their children ACPI BIOS settings can be applied to alter the Removable capability reported for a device on a given port _PLD (Physical Location Descriptor) _RMV (Remove)

23 Windows provides a way for the PC OEM to override removable device capability reporting Device specified by HardwareID Override can be restricted to a LocationPath Intended to be a stopgap solution Can be set at factory Requires system reboot Computers which ship with Removable overrides are eligible for Windows Logo Best long-term solution involves fixing offending hardware

24 Automated Windows Logo Kit (WLK) 1.5 test Hardware configuration for computers Laptops – No external devices can be attached when the test is executed Desktop – Only a keyboard and mouse can be attached when the test is executed ComputerSingleDDOTest.exe is executed Checks that there is only one device container for the computer

25 Test Failed Start: SystemFund-0200: Computers must be represented by one icon in Device Cent er., TUID=0E7AEA02-2712-422F-A9CD-FFBE470FD391 Found Device "USB Input Device". - This device should be part of the computer. Found Device "USB Composite Device". - This device should be part of the computer. Error: 0x0, Error 0x00000000 FAIL: Devices were found that are part of the computer but were reported as removable from the computer. File=__FILE__ Line=468 End: Fail, SystemFund-0200: Computers must be represented by one icon in Device Center., TUID=0E7AEA02-2712-422F-A9CD-FFBE470FD391, Repro=G:\ComputerSingleDDOTe st\ComputerSingleDDOTest.exe Summary: Total=1, Passed=0, Failed=1, Blocked=0, Warned=0, Skipped=0

26 Test Passed Start: SystemFund-0200: Computers must be represented by one icon in Device Cent er., TUID=0E7AEA02-2712-422F-A9CD-FFBE470FD391 PASS: Devices were correctly reported as part of the computer. End: Pass, SystemFund-0200: Computers must be represented by one icon in Device Center., TUID=0E7AEA02-2712-422F-A9CD-FFBE470FD391, Repro=D:\Tools\ComputerSingl eDDOTest\ComputerSingleDDOTest.exe Summary: Total=1, Passed=1, Failed=0, Blocked=0, Warned=0, Skipped=0

27 Device Metadata

28 Photo-realistic icon Model Name Device Vendor Device Categories Device Description

29 Branding Bar Task Area Task Bar and Preview Pane Overlay watermark image Device “Hero” Image Text color Logos Background image and color Task icon Task / category title Task description Task area background Preview image Device icon

30 Metadata can be associated by: ModelID HardwareID ModelID and HardwareID are retrieved from the device Windows searches locally and online for a matching metadata package ModelID match is always preferred over HardwareID match A metadata package can contain a single ModelID and a list of HardwareIDs Always include a device-specific HardwareID on the device Enables devices to be matched to an appropriate metadata package

31 X55 V1 Red X55 V2 X55 V1 Silver By Product Variant Different versions and variations of the Fabrikam X55 (V1 / V2) are given different Device Stage experiences X55X55 By Product All versions of the Fabrikam X55 phone are assigned to the same Device Stage experience X55 V2 X55 V1 By Product Version Different versions of the Fabrikam X55 (V1 / V2) are given different Device Stage experiences GUID retrieved from the device which matches a metadata package Provides flexibility for matching metadata to devices Target a metadata package to a wide range of devices (e.g., an entire model line) Develop one metadata package for each specific model of a device (e.g., down to the color of a device)

32 Choose the HardwareID that most uniquely identifies the device It is OK to pick multiple HardwareIDs if needed

33 Computer OEMs Take Note! Windows 7 automatically generates a HardwareID for the computer HardwareID is generated by hashing the System Management BIOS (SMBIOS) reported Manufacturer + Family + Product Name Ensure these properties are available and unique for each computer model and manufacturer A tool (ComputerHardwareID.exe) is provided in the WDK to report the HardwareID generated for the computer In the absence of metadata, Windows 7 uses the SMBIOS- reported Enclosure Type to display an accurate default icon

34 Device Metadata Store Software Installer Preinstalled by OEM WMIS (the “Album Art” people) WMIS (the “Album Art” people)

35 Metadata may not always be available for a device Windows 7 will use information in the PnP devnode if no metadata exists for a device Assign descriptive names in PnP Not just for Device Manager anymore FriendlyName outranks DeviceDesc and Metadata ModelName

36 Read the Multifunction Device Support and Device Container Groupings in Windows 7 whitepaper Ensure that your device reports its removable relationship correctly Test your device or PC with the Devices and Printers folder Only one device container per physical device Only one device container for the PC Create metadata for your devices

37 Windows 7 advances the device experience Devices and Printers Device Stage Device functionality is grouped into device containers Metadata is associated with each device container Customized presentation and user interaction with devices

38 Recommended whitepapers available on http://www.microsoft.com/whdc/http://www.microsoft.com/whdc/ Multifunction Device Support and Device Container Groupings in Windows 7 http://www.microsoft.com/whdc/Device/DeviceExperience/ContainerIDs.mspx How to Create a Device Metadata Package for the Devices and Printers Folder http://www.microsoft.com/whdc/device/DeviceExperience/CreateDevMetadataPkg.mspx Device Metadata Package Pipeline http://www.microsoft.com/whdc/device/DeviceExperience/DevMetadataPkgPipe.mspx Devices and Printers Folder - Extensibility Guide http://www.microsoft.com/whdc/device/DeviceExperience/DevPrintFolder-Ext.mspx Microsoft Device Experience Development Kit http://www.microsoft.com/whdc/device/DeviceExperience/Dev-Kit.mspx Windows 7 Device Stage General Development Kit Windows 7 Device Stage Document Devices Development Kit Windows 7 Device Stage Keyboards and Mice Kit Windows 7 Device Stage Mobile Broadband Devices Kit Windows 7 Device Stage PC Kit Windows 7 Device Stage Portable Devices Development Kit Windows 7 Device Stage Smart Card Devices Kit

39 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Download ppt "Cameron Brodeur Program Manager. The Windows 7 Device Experience Device containers Device metadata Demo Q&A."

Similar presentations


Ads by Google