Device.Connectivity Requirements

Device.Connectivity.BluetoothDevices

Devices that connect to the PC via Bluetooth.

Related Requirements
Device.Connectivity.BluetoothDevices.BluetoothDeviceIdProfileVer12
Device.Connectivity.BluetoothDevices.BluetoothDeviceIdProfileVer13
Device.Connectivity.BluetoothDevices.BluetoothHidLimitedDiscoverableMode
Device.Connectivity.BluetoothDevices.BluetoothUSBPlugandPlay
Device.Connectivity.BluetoothDevices.ComplementarySubsystemList
Device.Connectivity.BluetoothDevices.FunctionAfterSystemSuspendCycle
Device.Connectivity.BluetoothDevices.HidInitiatedReconnect
Device.Connectivity.BluetoothDevices.KeyboardsSupportPasskeyAuthentication
Device.Connectivity.BluetoothDevices.RespondToServiceDiscoveryRequests
Device.Connectivity.BluetoothDevices.SupportBluetooth21

Device.Connectivity.BluetoothDevices.BluetoothDeviceIdProfileVer12

Devices that support Bluetooth must implement the DeviceID profile, version 1.2.

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 7 Client x86, x64

Description

The Bluetooth system defines a Service Discovery Protocol (SDP). Bluetooth PC peripherals must support SDP as described in Specification of the Bluetooth System, Version2.1+EDR, PartB. The Plug and Play information is a single record that gives the device s VID/PID.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.BluetoothDevices.BluetoothDeviceIdProfileVer13

Devices which support Bluetooth must implement the Device ID (DI) profile version 1.3 or Device Information Service (DIS), as applicable

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

Bluetooth PC peripherals must include the Device ID record as specified in the Device ID profile, version 1.3, for BR/EDR Bluetooth or the Device Information Service (DIS), version 1.1, Bluetooth LE.

Additional Information

Enforcement Date
Mar. 01, 2012

Device.Connectivity.BluetoothDevices.BluetoothHidLimitedDiscoverableMode

Bluetooth HID devices must be discoverable only in Limited Discoverable Mode.

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

Bluetooth HID devices must be discoverable only in Limited Discoverable Mode.

Additional Information

Enforcement Date
Jun. 26, 2013

Device.Connectivity.BluetoothDevices.BluetoothUSBPlugandPlay

Bluetooth wireless technology device supports Plug and Play on the applicable bus

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Vista Client x86, x64

Description

USB must comply with Specification of the Bluetooth System, Version 1.1 or later, "Part H:2, USB Transport Layer."

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.BluetoothDevices.ComplementarySubsystemList

Bluetooth wireless technology subsystem end product lists Windows operating system in its complementary subsystem list

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

The Bluetooth subsystem end product must list the Windows operating system in the complementary subsystem list as described in Bluetooth Qualification Program Reference Document, Version2.1, Section6.1, "Bluetooth Subsystems."

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.BluetoothDevices.FunctionAfterSystemSuspendCycle

Bluetooth device appears and continues to function properly after a system suspend resume cycle

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

Bluetooth devices which are present before any system sleep state are present upon wake from that sleep state.

Additional Information

Enforcement Date
Jun. 26, 2013

Device.Connectivity.BluetoothDevices.HidInitiatedReconnect

HID Devices which support Bluetooth support HID-initiated re-connect

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

The HIDReconnectInitiate attribute (defined in Bluetooth HID Profile, 1.0, Section7.11.5, "HIDReconnectInitiate") must be enabled. To automatically reconnect to the host if the connection is dropped, the device must enter page mode.

Additional Information

Enforcement Date
Sep. 05, 2008

Device.Connectivity.BluetoothDevices.KeyboardsSupportPasskeyAuthentication

Bluetooth Keyboards which implement Secure Simplified Pairing must support the Passkey authentication method

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

Keyboards which implement Secure Simplified Pairing must support the Passkey authentication method.

Additional Information

Enforcement Date
Jun. 01, 2009

Device.Connectivity.BluetoothDevices.RespondToServiceDiscoveryRequests

Bluetooth Devices respond to Service Discovery requests before requiring authentication and while in inquiry scan state.

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

Service discovery must be completed before requiring authentication. Bluetooth PC peripherals must support Security Specification as described in Specification of the Bluetooth System, Version2.1+EDR, Part H.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.BluetoothDevices.SupportBluetooth21

Devices which support Bluetooth must implement the Bluetooth 2.1 requirements

Target Feature
Device.Connectivity.BluetoothDevices
Applies to
Windows 7 Client x86, x64

Description

The Bluetooth devices must comply with the Bluetooth 2.1 + EDR requirements outlined in Bluetooth Version 2.1 + EDR specifications.

Additional Information

Enforcement Date
Jun. 01, 2012

Device.Connectivity.NearFieldProximity

Near Field Proximity is a set of short range wireless technologies to enable communication between a personal computer and a device.

Related Requirements
Device.Connectivity.NearFieldProximity.DeviceNFCCertification
Device.Connectivity.NearFieldProximity.DeviceRangeOfActuation
Device.Connectivity.NearFieldProximity.DeviceTapToSetup
Device.Connectivity.NearFieldProximity.NfcForumTag
Device.Connectivity.NearFieldProximity.TouchMark

Device.Connectivity.NearFieldProximity.DeviceNFCCertification

NFC Implementations must receive NFC certification

Target Feature
Device.Connectivity.NearFieldProximity
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

A device that implements air interface specifications incorporated by the NFC Forum by reference as approved specifications must receive NFC Certification from the NFC Forum, inclusive of:

Wave 1 compliance

SNEP compliance

Additional Information

Enforcement Date
Mar. 01, 2012

Device.Connectivity.NearFieldProximity.DeviceRangeOfActuation

Proximity technology meets range of actuation

Target Feature
Device.Connectivity.NearFieldProximity
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

A device that implements NFP technology must support an effective operating volume to enable users to successfully use NFP technology with Windows in 95 times out of 100 attempts for all tap and do scenarios. Refer to the most current version of the 'Windows 8 Near Field Proximity Implementation Specification' document for detailed placement guidance, as well as acceptable, minimum, and maximum values for the required effective operating volume. The spec can be found at:https://go.microsoft.com/fwlink/?LinkId=237135

Additional Information

Enforcement Date
Mar. 01, 2012

Device.Connectivity.NearFieldProximity.DeviceTapToSetup

Proximity device supports tap and setup

Target Feature
Device.Connectivity.NearFieldProximity
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

A device that supports pairing with Windows using NFP technology must implement the tap and setup scenario defined in more detail in the most current version of the 'Windows 8 Near Field Proximity Implementation Specification' document. The spec can be found at:https://go.microsoft.com/fwlink/?LinkId=237135

Additional Information

Enforcement Date
Mar. 01, 2012

Device.Connectivity.NearFieldProximity.NfcForumTag

Tap and setup with passive devices

Target Feature
Device.Connectivity.NearFieldProximity
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

A device that uses only an NFC Forum tag as the NFP technology must adhere to the NFC Forum NDEF specification.

Additional Information

Enforcement Date
Mar. 01, 2012

Device.Connectivity.NearFieldProximity.TouchMark

To help users locate and use the proximity technology, the use of a visual mark is required by, and is only permitted for, NFC NFP providers (those NFP providers that implement air interface specifications incorporated by the NFC Forum by reference as approved specifications).

Implementation can include but not limited to etching, inking and removable stickers. The mark that is used is at the discretion of the system builder.

Target Feature
Device.Connectivity.NearFieldProximity
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)

Description

To help users locate and use the proximity technology, the use of a visual mark is required for NFC enabled devices (those devices that implement air interface specifications incorporated by the NFC Forum by reference as approved specifications). Refer to the most current version of the 'Windows 8 Near Field Proximity Implementation Specification' document for placement guidance and mark usage requirements. The spec can be found at:https://go.microsoft.com/fwlink/?LinkId=237135

Additional Information

Enforcement Date
Mar. 01, 2012

Device.Connectivity.Network.VerticalPairing

Root for former Rally technologies

Related Requirements
Device.Connectivity.Network.VerticalPairing.WCN

Device.Connectivity.Network.VerticalPairing.WCN

An 802.11 network-enabled device that operates as a station (STA) must implement WCN-NET and meet basic 802.11 requirements

Target Feature
Device.Connectivity.Network.VerticalPairing
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64

Description

A 802.11 network-enabled device that operates as a station (STA) must meet the following requirements:

The device must implement WCN-NET and comply with the specification.

The device must implement WCN-NET vertical-pairing extensions and indicate whether it supports a PnP-X transport protocol. If the device supports a PnP-X transport protocol, it must ensure correct universally unique identifier (UUID) alignment.

If WCN-UFD is implemented, it must comply with the specification.

If the device has a display that capable of showing a four-digit or eight-digit number, it must support displaying a dynamic Windows Connect Now (WCN) PIN without user intervention. The PIN must be displayed for a minimum of two minutes after the device receives a Wireless Provisioning Services (WPS) M2D message with the value of "Windows" in the WPS Model Name attribute.

If the device does not have a display that is capable of showing a four-digit or eight-digit number, it must provide a physical label affixed to the device that includes the eight-digit PIN and clearly labels the PIN value as a PIN (for example, PIN: 12345670).

The device must be certified by the Wi-Fi Alliance, including Wi-Fi certification, Wi-Fi Protected Access 2 (WPA2) certification, and Wi-Fi Protected Setup certification.

Design Notes:For implementation details, see the WCN-NET specification at https://go.microsoft.com/fwlink/?LinkId=109371 and the WCN-UFD specification at https://go.microsoft.com/fwlink/?LinkId=109372.

For more information, see the "Installing Wi-Fi Devices Using Rally Vertical Pairing" white paper at https://www.microsoft.com/whdc/connect/rally/WiFiVerticalPair.mspx.

Additional information can be found at https://go.microsoft.com/fwlink/?LinkId=109373 and https://go.microsoft.com/fwlink/?LinkId=109368.

WCN-NET is required. WCN-UFD is optional and is supported in Windows for backward compatibility with devices that are designed to support WCN functionality for Windows XP with Service Pack 2.

A device uses WCN-NET vertical-pairing extensions to indicate that its supports PnP-X. The device must provide a single UUID that is provided in both the WCN-NET exchange and the UPnP /Web Services for Devices (WSD) device file or provide the UPnP/WSD device UUID in the TransportUUID attribute of the WCN-NET vertical-pairing extension. The UUID that is provided in UPnP or WSD must be in lowercase (decimal digits can also be used).

For WSD implementations, the WSD UUID is provided as the endpoint reference address and must be of the form urn:uuid:. For UPnP implementations, the UPnP UUID is provided as the root device UUID.

Additional Information

Enforcement Date
Jun. 26, 2013

Device.Connectivity.PciConnected

Related Requirements
Device.Connectivity.PciConnected.64BitPrefetchableBar
Device.Connectivity.PciConnected.ConfigurationSpaceCorrectlyPopulated
Device.Connectivity.PciConnected.ExpressCardImplementsSerialNumber
Device.Connectivity.PciConnected.InterruptDisableBit
Device.Connectivity.PciConnected.MsiOrMsixSupport
Device.Connectivity.PciConnected.PciAndPcixDevicesArePciCompliant
Device.Connectivity.PciConnected.PCIExpress
Device.Connectivity.PciConnected.SubsystemIdsRequired

Device.Connectivity.PciConnected.64BitPrefetchableBar

PCI-X and PCI Express devices that use prefetchable memory BARs, implement 64-bit prefetchable memory base address registers (BARs)

Target Feature
Device.Connectivity.PciConnected
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

Devices that sit on the PCI-X or PCI Express bus and use prefetchable memory BARs must implement 64-bit prefetchable memory BARs on x64-based systems.Design Notes:See "Firmware Allocation of PCI Device Resources in Windows"https://www.microsoft.com/whdc/system/bus/pci/PCI-rsc.mspxIf the device supports 64-bit prefetchable memory BARs, Windows attempts to assign a region above 4 GB. In a PCI bridge, Windows ignores boot configuration for an entire device path emanating from the bridge in whose scope this method is defined. For the bridge and devices below it to be assigned a region above 4 GB, all devices in the path must support 64-bit prefetchable BARs. If this is not true, the rebalance code runs and moves all resource assignments below 4 GB, because the goal is to start as many devices as possible

Additional Information

Enforcement Date
Jun. 01, 2007

Device.Connectivity.PciConnected.ConfigurationSpaceCorrectlyPopulated

Configuration space for PCI device is correctly populated

Target Feature
Device.Connectivity.PciConnected
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

PCI2.3 describes the configuration space that thesystem uses to identify and configure each device that is attached to the bus. The configuration space is made up of a header region and a device-dependent region. Each configuration space must have a 64-byte header at offset0. All the device registers that the device circuit uses for initialization, configuration, and catastrophic error handling must fit within the space between byte64 and byte255.All other registers that the device uses during normal operation must be located in normal I/O or memory space. Unimplemented registers or reads to reserved registers must finish normally and return zero. Writes to reserved registers must finish normally, and the data must be discarded.All registers that the device requires at interrupt time must be in I/O or memory space.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.PciConnected.ExpressCardImplementsSerialNumber

A single ExpressCard module that supports both USB and PCI Express interfaces implements a common serial number

Target Feature
Device.Connectivity.PciConnected
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

An ExpressCard module that supports both USB and PCI Express interfaces on a single module must implement the common serial number as described in the PCI ExpressCard Electromechanical Specification.This is the only method that Windows will use to determine the relationship of USB and PCI Express on one module.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.PciConnected.InterruptDisableBit

PCI and PCI-X devices, that are PCI 2.3 compliant, support the interrupt-disable bit

Target Feature
Device.Connectivity.PciConnected
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

All PCI and PCI-X devices that claim support for PCI Local Bus Specification Revision 2.3 or later, must support the interrupt-disable bit.Design Notes: See PCI Local Bus Specification, Revision2.3, Section6.2.2.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.PciConnected.MsiOrMsixSupport

PCI device that reports PCI-X capability in the PCI configuration space and that generates interrupts may support MSI or MSI-X but is not required to do so

Target Feature
Device.Connectivity.PciConnected
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

As part of the PCI Conventional Specification 2.2 or later, PCI-X Addendum, Section 3.2, all PCI-X devices that generate interrupts must support message-signaled interrupts. For MSI implementation, MSI capabilities must be implemented in the configuration space. For MSI-X implementation, MSI-X capabilities must be implemented in the configuration space.However, because PCI-X is being replaced by PCI Express and many existing implementations do not support MSI or MSI-X, this requirement is being relaxed. Any device that claims to support MSI or MSI-X must do so or will fail the relevant WDK tests. Design Notes:Message Signaled Interrupt for PCI-X device is required by industry standard specification. However, see above.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.PciConnected.PciAndPcixDevicesArePciCompliant

PCI and PCI-X devices, at a minimum, are PCI 2.1 compliant

Target Feature
Device.Connectivity.PciConnected
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2008 x86, x64
Windows Vista Client x86, x64

Description

All PCI and PCI-X devices must comply with the PCI Local Bus Specification, Revision 2.1 or later. This requirement applies to devices on X86, IA64 and x64 systems.Design Notes:See PCI Local Bus Specification, Revision 2.1 or later.

Additional Information

Enforcement Date
Jun. 01, 2007

Device.Connectivity.PciConnected.PCIExpress

PCI Express requirement

Target Feature
Device.Connectivity.PciConnected
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

  1. Device driver for PCI Express device does not modify VC Enable settings:The device driver must not modify the "VC Enable" bit (PCI Express Base Specification, Version1.0a, Section7.11.7, VC Resource Control Register: bit 31) for any of the device's extended (non-VC0) virtual channel or channels. 2. PCI Express link active state L1 exit latency does not exceed 64 S:A PCI Express link, between root complex and device or bridge, cannot have an active state L1 exit latency of more than 64 microseconds on systems unless the link is associated with a PCI Express cable; that is, a value of 111b cannot be reported in the link capabilities register field 17:15. See PCIe Express Base Specification, Revision 1.0a, Section 7.8.6.3. PCI Express hot-plug port that supports firmware-controlled hot plug uses the _OSC control method for enable and disable:All PCI Express hot-plug ports that support firmware-controlled hot-plugs must support the_OSC control method for enabling and disabling firmware-controlled hot-plug as described in the PCI Firmware Specification Version 3.0. See PCI Express Base Specification, Revision 1.1, Section 6.7.4.4. PCI Express component implements a single device number on its primary interface:Every PCI Express component (that is, physical device) is restricted to implementing a single device number on its primary interface (upstream port), but it may implement up to eight independent functions within that device number. See PCI Express Base Specification, Revision1.1 (or later), Section 7.3.1.5. PCI Express device implements support for MSI or MSI-X:MSI support, which is optional for PCI 2.1, PCI 2.2, and PCI 2.3 devices, is required for PCI Express devices. This capability can be either implemented as MSI or MSI-X. See PCI Express Base Specification, Revision1.0a, Section 6.1.6. PCI Express root complex supports the enhanced (memory-mapped) configuration space access mechanism:The root complex must support the enhanced configuration space access mechanism as defined in PCI Express Base Specification, Revision 1.1 (or later), Section 7.9.7. PCI Express device that can interrupt supports the interrupt disable bit:If an interrupt is implemented, PCI Express devices must support the interrupt disable functionality described in PCI Local Bus Specification, Revision2.3. This bit disables the device or function from asserting INTx. A value of 0 enables the assertion of its INTx signal. A value of 1 disables the assertion of its INTx signal. This bit's state upon reset is 0

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.PciConnected.SubsystemIdsRequired

Device IDs include PCI subsystem IDs

Target Feature
Device.Connectivity.PciConnected
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

The SID and SVID fields must comply with the SID requirement in PCI Local Bus Specification 2.3 and the implementation details in "PCI Device Subsystem IDs and Windows." AMR devices and MR devices on the system board are not exempt from the requirement for SID and SVID.SVID is not required for PCIe to PCI/PCI-X bridges.Design Notes:See "PCI Device Subsystem IDs and Windows" at https://go.microsoft.com/fwlink/?LinkId=36804.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices

Applies to all devices connected via USB including USB Hubs. Does not apply to USB Controllers

Related Requirements
Device.Connectivity.UsbDevices.Addressing
Device.Connectivity.UsbDevices.AlternateDriver
Device.Connectivity.UsbDevices.CompliesWithChap9
Device.Connectivity.UsbDevices.DebugCompliesWithDebugSpec
Device.Connectivity.UsbDevices.DebugCompliesWithDebugSpecUSB3
Device.Connectivity.UsbDevices.DeviceAttachLessThan100ms
Device.Connectivity.UsbDevices.EsdRecovery
Device.Connectivity.UsbDevices.FunctionSuspendSelectiveSuspend
Device.Connectivity.UsbDevices.InstallViaUniquePnpIdentifier
Device.Connectivity.UsbDevices.InternalDevicesMustSupportSuspend
Device.Connectivity.UsbDevices.IsochronousDeviceAndDriver
Device.Connectivity.UsbDevices.MsOsContainerId
Device.Connectivity.UsbDevices.MustBeFunctionalAfterResume
Device.Connectivity.UsbDevices.MustEnumerateOnEhciAndXhci
Device.Connectivity.UsbDevices.MustNotDisconnectDuringSuspend
Device.Connectivity.UsbDevices.MustResumeWithoutForcedReset
Device.Connectivity.UsbDevices.MustSignalAttachWithin500ms
Device.Connectivity.UsbDevices.MustSupportSuspend
Device.Connectivity.UsbDevices.MustSupportSuspendOnRT
Device.Connectivity.UsbDevices.PeripheralOperatesInFunctionMode
Device.Connectivity.UsbDevices.PortMove500ms
Device.Connectivity.UsbDevices.RespondAllStringRequests
Device.Connectivity.UsbDevices.ResponsesLimitedByWlengthField
Device.Connectivity.UsbDevices.SerialNumbers
Device.Connectivity.UsbDevices.SerialNumbersUseValidCharacters
Device.Connectivity.UsbDevices.SuperSpeedOnConnectViaUsb3Port
Device.Connectivity.UsbDevices.TestedUsingMicrosoftUsbStack
Device.Connectivity.UsbDevices.Usb3CompatibleWithDownLevel
Device.Connectivity.UsbDevices.UsbifCertification
Device.Connectivity.UsbDevices.UseUsbClassOnlyForControllerOrHub
Device.Connectivity.UsbDevices.WirelessUsbObtainsWusbLogoFromUsbif
Device.Connectivity.UsbDevices.WirelessUsbWiMediaAlliace

Device.Connectivity.UsbDevices.Addressing

USB device can be configured to any USB address

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

To ensure that the devices function at all device address ranges, USB devices must be able to be configured to any USB address that the host provides. The device must enumerate and function correctly at any address ranging from 1 to 127. See USB Specification, Revision 2.0 or later, Sections9.1.1.4 and 9.4.6.Justification: Reduces resume time and maintains device state on resume from S3.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.AlternateDriver

USB devices should allow the Operating System to load an alternate driver on device

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64

Description

Devices must retain basic USB functionality after a driver re-enumeration occurs. For example, a driver that redirects I/O to alternate paths requires re-enumeration. A common way to perform USB redirection is to issue an IOCTL_USB_CYCLE_PORT report on the target driver to trigger re-enumeration of the physical device. Justification: When a virtual PC needs to connect to a physical USB device, the virtual PC loads a driver that is called an "Alternate Driver". This event triggers re-enumeration. After re-enumeration occurs many times, the physical device can no longer function. This requirement attempts to address this problem.

Additional Information

Exceptions
This Requirement does NOT apply to Systems that Support Connected Standby
Enforcement Date
Jun. 26, 2013

Device.Connectivity.UsbDevices.CompliesWithChap9

USB device complies with implementation details from the USB specification

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

Any devices that are connected externally or internally to a USB port must be tested as USB devices that is, the devices provide the capabilities of one or more functions, a hub to the host, or both, as described in USB Specification, Revision 2.0 or later, Chapters 9 and 11. Therefore, these requirements apply to any device that is connected to a USB port: the USB specification and any related USB device class specification, and the Windows Hardware Certification Kit (Windows HCK) program requirements for USB and the related device class.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.DebugCompliesWithDebugSpec

USB debug device complies with USB2 Debug Device Specification

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

USB devices designed for debug purposes over USB 2.0 must comply with USB2 Debug Device Functional Specification, which includes details on the device framework, commands, and additional operational requirements.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.DebugCompliesWithDebugSpecUSB3

USB 3.0 debug cables comply with USB 3.0 specification

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

USB cables designed for USB 3.0 host debugging must comply with the Universal Serial Bus 3.0 Specification, section 5.5.2.

Additional Information

Enforcement Date
Jun. 30, 2012

Device.Connectivity.UsbDevices.DeviceAttachLessThan100ms

USB device that signals device-attach responds after at least 100 ms

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

When the USB device has signaled device-attach, the operating system provides a debounce interval of 100ms. The device must respond at the end of that interval. This is described in USB Specification, Revision2.0, Section 7.1.7.3. This requirement ensures that the electrical and mechanical connections are stable before the attached device is reset. Justification: Some devices after a few iterations of going into s3 fail to show up on the device tree

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.EsdRecovery

USB device does not trigger ESD recovery on USB hubs

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

Devices must not trigger ESD recovery when connected to a USB hub. Triggering ESD causes fail-safe code to be executed in the hub driver and negatively affects the functionality of other devices attached to the hub. This is described in USB Specification, Revision 2.0 or later, Sections 7.2.3.Justification: Triggering ESD causes fail safe code to be executed in the hub driver and will impact the functionality of other devices attached to the hub.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.FunctionSuspendSelectiveSuspend

USB 3.0 devices correctly implement Function Suspend and Selective Suspend

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

Any function that is in a suspend state before a device is selectively suspended remains in the function suspend state when the device is resumed from the selective suspend state. Devices must not place all device functions in the function suspend state. Devices must report the selective suspend state.SuperSpeed devices ignore the DEVICE_REMOTE_WAKEUP feature selector.When all functions of a SuperSpeed device are in the function suspend state and the PORT_U2_TIMEOUT field is programmed to 0xFF, the device initiates U2 after 10 milliseconds (ms) of link inactivity. For more information, see section 9.2 of the USB 3.0 Specification.Devices that are resumed from the selective suspend state retain a minimum set of device state information as specified in section 9.2.5.2 of the USB 3.0 Specification.

Additional Information

Enforcement Date
Dec. 01, 2010

Device.Connectivity.UsbDevices.InstallViaUniquePnpIdentifier

Third-party drivers for USB devices install through a unique PnP identifier match or a compatible ID match when allowed

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

All Universal Serial Bus (USB) devices must have VID and PID sections in the PnP Device ID string. Third-party USB function drivers must not install through a compatible ID match, unless specifically permitted for a particular technology. The list of devices drivers that can be installed using a compatible ID match (Class, SubClass, Prot) is the following:WirelessUSB Cable Association Driver (CLASS_EF&SUBCLASS_03&PROT_01)

Additional Information

Enforcement Date
Jun. 01, 2008

Device.Connectivity.UsbDevices.InternalDevicesMustSupportSuspend

All internally connected USB devices must go to Selective Suspend after periods of inactivity

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

All internally connected USB devices must be capable of entering the suspend state after device drivers for those devices initiate the USB Selective Suspend process. Third-party drivers for internal devices on applicable systems must implement USB Selective Suspend.

Devices belonging to these device classes can opt out of supporting USB Selective Suspend:

Printers

Scanners

Fax

Additional Information

Exceptions
Printers, scanners and fax device class
Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.IsochronousDeviceAndDriver

Isochronous USB device and driver requirement

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

  1. ISO USB device and driver provide multiple alternate settings to support maximum flexibility of hardware interface options:If any alternate setting consumes isochronous bandwidth, devices and drivers must provide multiple alternate settings for each interface.2. USB device and driver do not use isochronous bandwidth for alternate setting 0:Devices and drivers must not use isochronous bandwidth for alternate setting 0. Devices must consume bandwidth only when they are in use.3.USB isochronous full-speed or high-speed device that uses more than 50 percent of USB bus bandwidth provides alternate settings:If a USB isochronous full-speed or high-speed device uses more than 50 percent of USB bus bandwidth, it must provide alternative settings that allow the device to switch to a setting that uses less than 50 percent of the bus bandwidth and operate as a device of that particular class (ex. if it is a camera then it must continue to stream video), even though it may be in a lower quality mode.Devices with attached host controllers are exempt from this requirement.4. USB device with interfaces containing isochronous endpoints has at least one alternative interface for low bandwidth scenarios:USB device must provide at least one alternative interface for low bandwidth as described inUSB Specification, Revision 2.0 or later, Section 9.6.5.Design Notes:See section 9.6.5 in the Universal Serial Bus Specification, Revision 2.0.If two or more devices are connected that use more than 50 percent of the bus bandwidth and do not provide alternate settings, only one of the devices works at a time.See USB Specification, Revision 2.0or later, Sections 5.6 and 5.7.Justification: Alternate settings are at the interface descriptor level, specifying different amounts of bandwidth a device requests the host controller to reserve for it. Imagine a conference camera with settings like 50% ,30%, 20%. It starts by asking the host if 50% is available and whether the host can reserve it. If not, then the host chooses the next alternate setting till they have a mutual agreement.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.MsOsContainerId

USB devices which implement the MS OS Container ID descriptor implement it correctly

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

If a multifunction USB device implements the Microsoft operating system ContainerID descriptor, the device does this in the Microsoft operating system feature descriptor. The Microsoft operating system ContainerID descriptor allows Windows to correctly detect multifunction devices. The descriptor provides a way for all the device nodes to appear as one physical object in the Devices and Printers user interface (UI).

Additional Information

Enforcement Date
Jun. 01, 2010

Device.Connectivity.UsbDevices.MustBeFunctionalAfterResume

Attached USB devices must be functional after resuming from system power states.

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

Devices not entering a timely ready state will be marked code 10 or other by the system. Certain classes of devices do not properly respond to system events, such as resume, and require upper driver or expect precise boot timings in order to function properly. Device also must be able to function without a port reset upon resume but also remain functional if a reset does occur.A device must be in the attached state (USB Specification 2.0, section 9.1) to be configured and device must be in the configured state before its functions maybe used (aka, the device is useable). This is per the USB spec 2.0 as in section 9.1 and 9.2.6.2 "After a port is reset or resumed, the USB System Software is expected to provide a "recovery" interval of 10 ms before the device attached to the port is expected to respond to data transfers. The device may ignore any data transfers during the recovery interval."Clarification:Devices must be functional after resuming from system power states whether a port reset is issued or not. Justification: Devices not entering a timely ready state will be marked code 10 or other by system. Certain classes of devices do not have sufficient resources to handle system events, such as resume, and require upper driver or expect precise boot timings in order to function properly.

Additional Information

Enforcement Date
Jun. 01, 2009

Device.Connectivity.UsbDevices.MustEnumerateOnEhciAndXhci

All USB devices must enumerate and operate on EHCI and xHCI controllers as well as downstream of full speed, high speed, and SuperSpeed USB hubs

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

All USB devices must enumerate and operate as a user would expect on Enhanced Host Controller Interface (EHCI) controllers and Extensible Host Controller Interface (xHCI) controllers. All USB devices must also operate as a user would expect downstream of a full-speed, high-speed or SuperSpeed hub.

The following scenarios will be covered in this requirement:

EHCI + device under test (DUT)

EHCI + high-speed hub + full-speed hub + DUT

EHCI + high-speed hub + DUT

xHCI + DUT

xHCI + SuperSpeed hub + DUT

xHCI + High speed hub + DUT

When selecting a system with xHCI controllers for testing this requirement, note that some of these hubs may already be integrated into the controller chipset or embedded into the system that is under testing. External physical ports must be checked for their exact routing to the xHCI controller to test the correct scenario.

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbDevices.MustNotDisconnectDuringSuspend

USB devices must not disconnect from the upstream port while going to or resuming from selective suspend.

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

USB devices must not disconnect from the upstream port during the selective suspend process. To test this requirement, we will cause the device to go into the selective suspend state and then resume the device. During this process, we will observe the port status bits of the upstream port and verify that the device does not disconnect during this time. We will repeat this process several times.

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbDevices.MustResumeWithoutForcedReset

All USB devices work properly upon resume from sleep, hibernation or restart without a forced reset of the USB host controller

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

All USB devices work properly upon resume from sleep, hibernation or restart without a forced reset of the USB host controllerDesign Notes: Registry key ForceHCResetOnResume documented at the KB below is not needed for devices to function properly upon resume in Windows 7.https://support.microsoft.com/kb/928631Note that a known set of currently existing devices do require a forced reset upon resume, these devices should be covered in a list kept by the OS which will reset these devices upon resume. The goal of this requirement is to ensure that this list of devices which need a reset to appear after resume does not grow and that devices can properly handle sleep state transitions without being reset. A reset of the entire USB Host Controller results in significantly increased time that it takes for all USB devices to become available after system resume since there could be only one device at address 0 at a time, this enumeration has to be serialized for all USB devices on the bus. We have also seen that resetting the host controller can lead to an illegal SE1 signal state on some host controllers, which in turn can cause some USB devices to hang or drop off the bus. Moreover, devices cannot maintain any private state across sleep resume as that state will be lost on reset.

Additional Information

Enforcement Date
Jun. 01, 2010

Device.Connectivity.UsbDevices.MustSignalAttachWithin500ms

Devices must signal attach within 500 ms after the system resumes.

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

After the system resumes from sleep, the hub driver will fetch the status of the port to which the device is connected. If the device does not show as connected, the hub driver will wait 500 milliseconds (ms) before the hub driver queries the port status again. If the device appears as connected within that time, the hub will not need to re-enumerate the device for Plug and Play, which will result in a better user experience. This requirement already exists for bus-powered devices in the USB specification. The requirement will now also apply to self-powered devices. Justification: Some devices take a long time to be discoverable by the operating system. This requirement does not try to enforce the device being back from sleep from a functional point of view. A certain amount of time is necessary to know if the device remains on the bus.

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbDevices.MustSupportSuspend

All Bus powered USB devices support USB Suspend after periods of inactivity

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

The device driver for a bus-powered device initiates the USB Selective Suspend process. The device can enter the suspend state from any powered state. The device must begin the transition to the suspend state after it sees a constant idle state on its upstream facing bus lines for more than 3.0 ms. In suspend state, the device must only draw suspend current from the bus after no more than 10 ms of bus inactivity on all its ports, as described in the USB Specification, Revision 2.0, Sections 7.1.7.6, 6 9.1.1.6 and 9.2.6.2.

Clarification about USB Selective Suspend in embedded USB devices can be found in the following requirement: Device.Connectivity.UsbDevices.InternalDevicesMustSupportSuspend

Clarification about USB Selective Suspend in Windows RT systems can be found in the following requirements: Device.Connectivity.UsbDevices.MustSupportSuspendOnRT

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.MustSupportSuspendOnRT

All Windows RT USB devices must go into Selective Suspend after periods of inactivity

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client ARM (Windows RT)
Windows 8.1 Client ARM (Windows RT 8.1)

Description

All USB devices must be capable of entering the suspend state after device drivers for those devices initiate the USB Selective Suspend process.

Devices belonging to these device classes can opt out of supporting USB Selective Suspend:

Printers

Scanners

Fax

Additional Information

Exceptions
Printers, scanners and fax device class
Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.PeripheralOperatesInFunctionMode

USB peripheral operates in function mode when connected to a computer host controller

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

When connected to a system's host controller, a USB peripheral must operate as a USB function only. A function is a USB device that provides additional capabilities to the host controller. This is described in USB Specification, Revision 2.0 or later, Section 4

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.PortMove500ms

If the software enables the SuperSpeed and then resets the 2.0 port, device should correctly move over

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

In a USB 3.0 hub, two downstream ports, a USB 2.0 port and a SuperSpeed port, share the same connector. The USB 3.0 Specification says that if a device is currently connected on the USB 2.0 port, the device should try to reconnect at the SuperSpeed port when software resets the port. This situation has two relevant time intervals: The time that is necessary for the device to disconnect from the USB 2.0 port, and the total time that is necessary for the device to reconnect on the SuperSpeed port.The time between the time that the reset starts and the time that the device starts RxDetect on USB 3.0 can be up to 1 millisecond (ms). RxDetect can take up to 16 ms in the worst case. The time between the time that RxDetect succeeds and the time that RxDetect signals a disconnect on USB 2.0 can be up to 1 ms. Therefore, the total time from the start of the reset to disconnect signaling can be up to 18 ms. Accounting for the polling interval of the hub, the total comes to 50 ms.Next, the time between the time that RxDetect succeeds and the time that the device enters U0 can be up to 300 ms. With an extra margin for hub control transfers and other delays, the total comes to 500 ms.To test this requirement, we will first disable the SuperSpeed termination, then re-enable SuperSpeed termination after some time, and then reset the USB 2.0 port. After these actions occur, the software will wait for a port status change notification on the USB 2.0 port and the SuperSpeed port. We will verify that the USB 2.0 port shows a status change that indicates that the device disconnected from the USB 2.0 port and that the SuperSpeed port then shows a status change that indicates that the device connected on the SuperSpeed port. For more information, see Figure 9-1 in section 9.1.1 of the USB 3.0 Specification.

Additional Information

Exceptions
This Requirement does NOT apply to Systems that Support Connected Standby
Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbDevices.RespondAllStringRequests

USB device responds to all string requests that the host sends to indexes

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

USB devices must respond accordingly to string requests that the host sends. Devices must stall if no string is stored at the index being queried or if a request error exists. Devices must not reset themselves or stop functioning. This is described in USB Specification, Revision 2.0 or later, Section 9.6.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.ResponsesLimitedByWlengthField

USB device responses to host requests are limited in size by the wLength field

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

All USB device requests contain a wLength field. Responses by the USB device to host requests must be of size <= wLength field of the device request as defined in the USB Specification, Revision1.1 or later, Section 9.3.5.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.SerialNumbers

USB serial numbers are implemented for specific device classes and are unique across specific device models

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

USB serial numbers must be implemented for the following device classes: Bluetooth (Class Code 0xE0, SubClass 0x01, Protocol 0x01) Communication device class (Class Code 0x02) Mass storage (Class Code 0x08) Scanning/imaging (Class Code 0x06) Printing (Class Code 0x07) Host Wire Adapters and Device Wire Adapters (Class Code 0xE0, subclass 02)USB serial numbers are optional for all other device classes. Additionally, if serial numbers are implemented on the device's model, all devices of the same model must have unique serial numbers.Design Notes:For more information on USB device class details, see "Defined 1.0 Class Codes" at https://go.microsoft.com/fwlink/?LinkId=40497. For more information on implementation of serial numbers, see USB Specification, Revision 2.0 or later, Section 9.6.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.SerialNumbersUseValidCharacters

USB device that implements manufacturer-defined serial numbers contains valid characters

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

A USB serial number must be a string that contains a manufacturer-determined ID composed of valid characters. Valid characters are defined in the Windows Driver Kit, "USB_DEVICE_DESCRIPTOR." Justification: Devices with invalid serial numbers force drivers to remove these invalid characters when reporting the info to PNP. Doing so may cause two devices with different serial numbers (the numbers different via an invalid char) to be reported to PNP as having the same serial number.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.SuperSpeedOnConnectViaUsb3Port

If upstream SuperSpeed termination is on, devices must always connect on the USB 3.0 port and never connect on the USB 2.0 port

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

In a USB 3.0 hub, two downstream ports, a USB 2.0 port and a Superspeed port, share the same connector. When a SuperSpeed (that is, non-hub) device is plugged into such a connector, the device must always connect on the SuperSpeed port. The device must never connect on the USB 2.0 port. To test this requirement, the software will verify that the USB 3.0 port status bits show a connected device and that the USB 2.0 port status bits do not show a connected device. For a definition of "connect", see section 2 of the USB 3.0 Specification under "connected".

Additional Information

Exceptions
This requirement does NOT apply to Systems that Support Connected Standby
Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbDevices.TestedUsingMicrosoftUsbStack

USB Devices must be tested with Microsoft's xHCI Stack installed

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

All USB Devices (Low, Full, High and Super Speed devices) must be tested with Microsoft's Extensible Host Controller Interface (xHCI) Stack installed and enabled on a Windows system. Note: During USB-IF self testing a specific USB Test Stack is installed for testing purposes, this is expected and acceptable.

Additional Information

Enforcement Date
Mar. 01, 2012

Device.Connectivity.UsbDevices.Usb3CompatibleWithDownLevel

USB 3.0 devices are backwards compatible with down level controllers and hubs

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 8 Client x86, x64
Windows 8.1 Client x86, x64
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

USB 3.0 devices both enumerate and function on USB 2.0 controllers. USB 3.0 devices also need to enumerate and function when USB 3.0 devices are connected to a full-speed hub or to a high-speed hub, according to section 5.3.1.1 of the USB 2.0 specification. "Function" means to operate as a user would expect a device of that class to operate. Design Notes:USB 3.0 devices must be able to do the following:

Reset successfully at high and full speeds.

Respond successfully to standard requests at high and full speeds for device and configuration descriptors. Standard requests are set_address, set_configuration, and get_descriptor.

Return appropriate information.

USB 3.0 devices must also be able to function at a minimum level, although USB 3.0 devices will not operate at super speed. For example, a USB 3.0 mass storage device must be able to transfer files at full speed mode as well as at super speed mode. Although data transfer is much slower at the lower speed, data transfer is still possible.

Additional Information

Enforcement Date
Jun. 01, 2010

Device.Connectivity.UsbDevices.UsbifCertification

USB IF Tests are passing or device is USB IF certified

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

Effective June 1, 2011, USB devices must pass USB Implementers Forum (IF) tests or be USB-IF certified.

See white paper on Windows HCK USB-IF Testing

at https://www.microsoft.com/whdc/connect/usb/wlk-usb-if-testing.mspxJustification:This is an existing requirement that is based on industry specifications.

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbDevices.UseUsbClassOnlyForControllerOrHub

Third-party INF files include the class "USB" only if the device is a USB host controller, a root, or an external hub

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

Class USB is often used incorrectly for devices that do not have a predefined class. For example, a USB mouse uses class HID, whereas a USB smartcard uses class smartcard reader. Class USB is reserved for host controllers and root or external USB hubs. If the vendor has a device that has no Windows-defined class but uses USB as the bus, it must define its own class or class GUID. The setup class associated with the type of USB device, not with the bus type, must be used. The setup class "USB" (ClassGuid = {36fc9e60-c465-11cf-8056-444553540000}) is reserved for USB host controllers and root or external USB hubs. It must not be used for other device categories. Design Notes:Microsoft provides system-defined setup classes for most device types. System-defined setup class GUIDs are defined in the Windows Driver Kit, "Devguid.h."If you choose the wrong class, the device appears in an incorrect location in Device Manager and in the Windows Vista UI. Using this class incorrectly may cause the device driver to fail hardware compatibility testing.For a list of Windows class GUIDs, see the Windows Driver Kit, "System-Supplied Device Setup Classes" at https://msdn.microsoft.com/library/ff553419(VS.85).aspx.

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbDevices.WirelessUsbObtainsWusbLogoFromUsbif

Wireless USB device or host obtains Certified Wireless USB logo from the USB-IF

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

All Wireless USB devices must get a Certified Wireless USB Logo from the USB-IF.

Additional Information

Enforcement Date
Jun. 01, 2009

Device.Connectivity.UsbDevices.WirelessUsbWiMediaAlliace

Certified Wireless USB device or host passes all required WiMedia Alliance compliance tests.

Target Feature
Device.Connectivity.UsbDevices
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

Wireless USB device must pass WiMedia Alliance radio compliance tests.

Additional Information

Enforcement Date
Jun. 01, 2009

Device.Connectivity.UsbHub

Requirements that apply only to USB Hubs

Related Requirements
Device.Connectivity.UsbHub.CompliesWithChap11
Device.Connectivity.UsbHub.IdentifyNumOfUserAccessiblePorts
Device.Connectivity.UsbHub.ImplementSuperSpeedDescriptors
Device.Connectivity.UsbHub.MapPortsPerUsb3Specification
Device.Connectivity.UsbHub.ProvideStandardInterfacesToHostPeripherals
Device.Connectivity.UsbHub.SuperSpeedRemainsOnAfterPortReset
Device.Connectivity.UsbHub.SupportSuspend
Device.Connectivity.UsbHub.Usb3HubCompliesWithUsb3Spec
Device.Connectivity.UsbHub.Usb3ReportPortStatusBitsCorrectly

Device.Connectivity.UsbHub.CompliesWithChap11

USB hub that implements USB functionality complies with the related specification

Target Feature
Device.Connectivity.UsbHub
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

USB hubs that fit into one of the USB device class definitions must comply with the appropriate USB specification as follows: USB 1.1, Revision1.1 USB 2.0, Revision2.0

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbHub.IdentifyNumOfUserAccessiblePorts

USB hub correctly identifies and reports the number of ports that the user can access

Target Feature
Device.Connectivity.UsbHub
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

The USB hub must include details in its hub descriptor that provide the operating system with an accurate count of the number of downstream-facing ports that the hub supports and that are exposed to the user. See USB Specification, Revision 2.0, Section11.23, and USB 3.0 Specification, Section 10.14. Root hubs are exempt from this requirement.

Additional Information

Exceptions
Does not apply to Root Hubs
Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbHub.ImplementSuperSpeedDescriptors

USB 3.0 hubs must properly implement the SuperSpeed hub descriptor, the standard SuperSpeed descriptors, the USB 2.0 ports, and USB 3.0 hubs report version 2.1.

Target Feature
Device.Connectivity.UsbHub
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

As described in section 10.0 of the USB 3.0 Specification, a USB 3.0 hub incorporates a USB 2.0 hub and a SuperSpeed hub. All exposed downstream ports on a USB 3.0 hub must support both SuperSpeed and USB 2.0 connections.For more information on USB 3.0 devices that operate at speeds other than SuperSpeed, see section 9.2.6.6 of the USB 3.0 Specification.When a USB 3.0 hub is operating in SuperSpeed mode, the hub must correctly implement the descriptors that are described in Section 10.13 of the USB 3.0 Specification in addition to the standard USB descriptors. As described in section 10.13.1 of the USB 3.0 Specification, the hub must support the following SuperSpeed descriptors in SuperSpeed mode:

Device descriptor

Binary Device Object Store (BOS) descriptor

USB 2.0 Extension

SuperSpeed USB Device Capability descriptor

Container ID

Configuration descriptor (SuperSpeed information)

Interface descriptor

Endpoint descriptor (for status change endpoint)

Endpoint Companion descriptor (for status change endpoint)

The class-specific descriptors for SuperSpeed hubs that must be supported, as defined in section 10.13.2.1 in the USB 3.0 Specification, are as follows: SuperSpeed Hub descriptorImplementation DetailsStandard USB SuperSpeed descriptors will be tested via the USB Command Verifier chapter 9 test for USB 3.0 devices. In the Driver Test Manager (DTM), this test is the USB Device Framework Test.Table 1. SuperSpeed Hub Descriptor Asserts

Assert
Description
1
The bDescLength field of the SuperSpeed Hub descriptor has a value of 0xCh.
2
The bDescriptorType field of the SuperSpeed Hub descriptor has a value of 0x2Ah.
3a
Bits D1..D0 of the wHubCharacteristics field of the SuperSpeed Hub descriptor must be 00 if the hub supports ganged power switching.
3b
Bits D1..D0 of the wHubCharacteristics field of the SuperSpeed Hub descriptor must be 01 if the hub supports individual port power switching.
4a
Bit D2 of the wHubCharacteristics field of the SuperSpeed Hub descriptor must be 0 for a hub that is not part of a compound device.
4b
Bit D2 of the wHubCharacteristics field of the SuperSpeed Hub descriptor must be 1 for a hub that is part of a compound device.
5
Bits D4:D3 of the wHubCharacteristics field of the SuperSpeed Hub descriptor must not be 11 or 10 for a self-powered hub.
6
Bits D15D5 of the wHubCharacteristics field of the SuperSpeed Hub descriptor are reserved and must be 0.
7
The bPwrOn2PwrGood field of the SuperSpeed Hub descriptor must be 0 if the hub does not support power switching.
8
The bHubHdrDecLat field of the SuperSpeed Hub descriptor must be in the range of 0x00h to 0x04h.
9
The DeviceRemovable field of the SuperSpeed Hub descriptor reports the correct non-removable ports as non-removable.
10
The bNbrPorts field of the SuperSpeed Hub descriptor reports the correct number of ports on the hub.

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbHub.MapPortsPerUsb3Specification

USB 3.0 hubs must map their ports as defined in section 10.1 of the USB 3.0 Specification

Target Feature
Device.Connectivity.UsbHub
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

External USB 3.0 hubs must follow the USB3 specification's connector mapping, except when the USB 3.0 hub may have an unequal number of USB 2.0 and USB 3.0 protocol ports. For example, the SuperSpeed part of the 3.0 Hub has 'n' ports and 2.0 part of the 3.0 Hub has 'm' ports and minimum(m,n) = 'p'. The first p ports of the SuperSpeed part and the 2.0 part should be mapped in order, so that port 1 of SuperSpeed hub maps to port 1 of the 2.0 hub, port 2 of the SuperSpeed hub maps to port 2 of the 2.0 hub and so on until port number p. Each of these 'p' port mappings must either have an external connector for it OR both of the ports in the mapping should be marked as "non-removable" in their respective parent hub descriptors. Note, that if the ports in a mapping are marked as non-removable, only one of the ports in that mapping can have a device attached to it. The other port in that mapping should neither have any device attached to it nor a device can be attached to it i.e. the port should remain unused.If there are excess ports on the 2.0 part (i.e. m-p is not 0), each of those m-p ports may either be exposed to the user OR can be marked as non-removable. If there are excess ports on the SuperSpeed part (i.e. n-p is not 0), none of those n-p ports should be exposed to the user, all of them should be marked as non-removable.

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbHub.ProvideStandardInterfacesToHostPeripherals

USB hub provides standard connection interfaces to the host and USB peripherals

Target Feature
Device.Connectivity.UsbHub
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

All USB hubs must have one upstream-facing port and at least one downstream-facing port. The upstream-facing port must be a single Std-A receptacle for downstream traffic. The downstream-facing port or ports must be one of the following: Std-B receptacleMini-B receptacleCaptive Std-A cable, for upstream traffic Micro - B receptacleThis is described in USB Specification, Revision1.1 or later, Sections 6.2 and 11.1.2. and Micro-USB cables and connectors Revision 1.01

Additional Information

Enforcement Date
Jun. 01, 2006

Device.Connectivity.UsbHub.SuperSpeedRemainsOnAfterPortReset

USB 3.0 hubs must not turn off SuperSpeed termination on downstream ports upon over-current and port reset

Target Feature
Device.Connectivity.UsbHub
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

DSPORT.Powered-off must be entered only when Rx termination is not detected or downstream Vbus is off. ClearPortFeature(PORT_POWER), Overcurrent, Upstream port reset, and SetConfig(0) must not cause SuperSpeed termination to be removed unless Vbus is also removed. If Vbus is removed, SuperSpeed termination must be re-enabled when Vbus is back on. If Upstream Vbus is removed, but the hub still provides Downstream Vbus (self-powered hub), then it must turn downstream SuperSpeed terminations back on.For more information, see figure 10-9 in the USB 3.0 Specification.

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbHub.SupportSuspend

USB hubs must support suspend, and downstream devices must not drop off the bus when the hub resumes from selective suspend

Target Feature
Device.Connectivity.UsbHub
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

USB hubs must support the selective suspend state, as stated in both the USB Specification and other certification requirements. After a hub is resumed from the selective suspend state, all devices that were attached downstream of the hub, and that were not removed while the hub was suspended, must be present.

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbHub.Usb3HubCompliesWithUsb3Spec

USB 3.0 Hubs are compliant with USB 3.0 specification.

Target Feature
Device.Connectivity.UsbHub
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 Release 2 x64
Windows Server 2012 x64

Description

USB 3.0 Hubs must be compliant with Universal Serial Bus (USB) 3.0 Specification USB 3.0 Hubs must :

Pass the USB-IF interoperability tests

Pass the USB 3.0 Hub compliance test suite

Pass the USB 3.0 CV test

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.UsbHub.Usb3ReportPortStatusBitsCorrectly

USB 3.0 hubs must always report the port status bits correctly as per the USB 3.0 Specification

Target Feature
Device.Connectivity.UsbHub
Applies to
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2012 x64

Description

In the current stack, a number of invalid port status bit combinations that the hub reports are ignored. Any invalid combination of port status bits will be treated as an error. In particular, checks will follow these actions:

Resetting a port

Suspending and resuming a port

System resume

A hub should not report spurious change interrupts. A hub should complete the port status interrupt transfer without reporting changes.

Additional Information

Enforcement Date
Jun. 01, 2011

Device.Connectivity.WSD

Related Requirements
Device.Connectivity.WSD.DPWS
Device.Connectivity.WSD.DPWSExtensibility
Device.Connectivity.WSD.MetadataExchange
Device.Connectivity.WSD.MetadataValid
Device.Connectivity.WSD.Schema
Device.Connectivity.WSD.WSDiscovery

Device.Connectivity.WSD.DPWS

Devices which use or interact with the Web Services on Devices API (WSDAPI) comply with Device Profiles for Web Services (DPWS) specification

Target Feature
Device.Connectivity.WSD
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

Devices which plan to use or interact with Microsoft Windows' implementation of DPWS, the Web Services on Devices API (WSDAPI), must implement the DPWS specification themselves. (WSDAPI)

Design Notes:

DPWS Specification available at

https://go.microsoft.com/fwlink/?LinkId=109231

Additional Information

Enforcement Date
Jun. 26, 2013

Device.Connectivity.WSD.DPWSExtensibility

Devices Profile for Web Services Devices must accept messages that contain extensibility sections, and process the messages as appropriate.

Target Feature
Device.Connectivity.WSD
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

Devices Profile for Web Services (DPWS) devices must accept messages where the XML has been extended. If the device understands the content in the extensible section, it may process it.

Design Notes:

DPWS Specification available at

https://go.microsoft.com/fwlink/?LinkId=109231

Additional Information

Enforcement Date
Jun. 26, 2013

Device.Connectivity.WSD.MetadataExchange

Devices Profile for Web Services (DPWS) Devices support metadata exchange

Target Feature
Device.Connectivity.WSD
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

DPWS Devices which interact with the Web Services on Devices API (WSDAPI) must support metadata exchange as defined in the metadata exchange specification.

Design Notes:

Metadata Exchange specification can be obtained at https://go.microsoft.com/fwlink/?LinkId=109248

Additional Information

Enforcement Date
Jun. 26, 2013

Device.Connectivity.WSD.MetadataValid

Devices which interact with the Web Services on Devices (WSDAPI) produce metadata that conforms to the Devices Profile for Web Services

Target Feature
Device.Connectivity.WSD
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

Devices which interact with WSDAPI must populate the Metadata as defined in the Device Profile for Web Services Specification of February 2006.

Design Notes:

The Device Profile for Web Services Specification of February 2006 is available at https://go.microsoft.com/fwlink/?LinkId=109231

Additional Information

Enforcement Date
Jun. 26, 2013

Device.Connectivity.WSD.Schema

A network-enabled device that implements Devices Profile for Web Services (DPWS) must adhere to the protocol and schema.

Target Feature
Device.Connectivity.WSD
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

A network-enabled device that implements Devices Profile for Web Services (DPWS) must adhere to the Devices Profile for Web Services as described by the schema.

The device must also reference the namespace URI as described in The Devices Profile for Web Service specification.

A device the implements DPWS must adhere to the Web Services Description Language (WSDL) associated with the logo device class. The WSDL defines services as collections of network endpoints, or ports. WSDL specification provides an XML format for documents for this purpose. Devices must implement the WSDL version 1.1.

Design Notes:

See the Web Services Description Language (WSDL) Version 1.1 at https://www.w3.org/TR/2001/NOTE-wsdl-20010315

See the Devices Profile for Web Services schema at https://schemas.xmlsoap.org/ws/2006/02/devprof/devicesprofile.xsd.

See the Devices Profile for Web Service specification at http://specs.xmlsoap.org/ws/2006/02/devprof/devicesprofile.pdf.

Additional information can be found in the Windows Rally Development Kit at https://go.microsoft.com/fwlink/?LinkId=109368.

Additional Information

Enforcement Date
Jun. 26, 2013

Device.Connectivity.WSD.WSDiscovery

Devices Profile for Web Services (DPWS) Devices interacting with the Web Services on Devices API (WSDAPI) implement WS-Discovery

Target Feature
Device.Connectivity.WSD
Applies to
Windows 7 Client x86, x64
Windows 8 Client x86, x64, ARM (Windows RT)
Windows 8.1 Client x86, x64, ARM (Windows RT 8.1)
Windows Server 2012 R2 x64
Windows Server 2008 x86, x64,
Windows Server 2008 Release 2 x64
Windows Server 2012 x64
Windows Vista Client x86, x64

Description

DPWS Devices must implement WS-Discovery to work with WSDAPI.

Design Notes:

WS-Discovery specification can be obtained at https://go.microsoft.com/fwlink/?LinkId=109247

Additional Information

Enforcement Date
Jun. 26, 2013