MS OS Descriptors

From SEGGER Wiki
Revision as of 16:04, 11 July 2019 by Souhail (talk | contribs) (MS OS Descriptors: Description and How it works)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

With Windows XP SP3 on Microsoft introduced a new technique to identify a device by a special descriptor without creating a dedicated inf file for driver install. This is the so call the MS OS descriptor. An important information which is always misinterpreted is that the identification ID or string are on an interface base. This means that a composite device can also have multiple "OS descriptor information" Currently the following "Ids" are supported:

Id Description
RNDIS Microsoft's own USB to ethernet specification
WINUSB WinUSB compatible, can be used for virtually any USB interface
MTP Microsoft's extended PTP so that it can be used for any storage device/interface
PTP Picture Transfer Protocol

How it works

The first step is to ask the device whether the string descriptor index 0xee is supported. Devices that does not have such an index normally stall this request. File:Example.jpg