Why does my USB device work on Windows 8.0 but fail on Windows 8.1 with code 43?

Authored by Martin Borve [MSFT]

Updated 1/27/2014 by Philip Ries to show how to use Message Analyzer and its latest parsers to more easily diagnose the problem.

Updated 7/10/2014 by Vivek Gupta to include the Workaround information.

A few USB devices when connected to a port of an Enhanced Host Controller (EHCI) might not enumerate on Windows 8.1 but work on Windows 8. In Windows 8.1, the failure is reported as error code 43 in Device Manager. One of the reasons is that the device reports itself as supporting a USB version greater than 2.00, but does not provide the required BOS descriptor.

As per the official USB specification, a USB device with version greater than 2.00 must provide a BOS descriptor.

In Windows 8, the USB 2.0 driver stack does not validate that requirement. As a result, a device with version greater than 2.00 and without a BOS descriptor, enumerates successfully when connected to an EHCI controller.

In Windows 8.1, the driver stack has been updated and enumeration fails for such devices.

Note: The USB 3.0 eXtensible Host Controller (xHCI) driver in Windows 8 and 8.1 validates that requirement.

Devices where this issue is worked around by Windows Update:

2/11/2014 – KB 2917929 – Sony phones

We are investigating a possible workaround for other devices with that problem. If you see code 43 for your device, report the device in the comments section of this post. But first, verify that the problem is due to a missing BOS descriptor by capturing and analyzing a USB ETW trace. Please also share your trace file with us.

How to Verify Your Device Is Affected By This Issue

First, get ready to use Microsoft Message Analyzer with the following one-time steps:

1. Download Message Analyzer and install it.

2. After installing Message Analyzer, log out and then log back in to enable its tracing capabilities.

3. Launch Message Analyzer.

4. Select “Update items”.


5. Click Downloads in the upper right, and update your “Devices and Log File” parser to version 1.001 (or the latest).

Alternatively, click “Sync All Displayed Items” to install all the downloads in the list (that are not already installed) and automatically receive updates. Note that new items released in the future will still require manual action to sync.


6. Close Message Analyzer for the parser update to take effect.

Diagnosis steps

To diagnose the BOS descriptor issue:

1. Start Message Analyzer.

2. Go to the File -> Capture / Trace page.


3. Scroll down and select USB 2.

4. Unplug the device you are troubleshooting (if it’s plugged in).

5. Click Start.

6. Plug in the device to a USB 2 port.

7. Wait for the device to appear in Windows.

8. Click Stop.


9. Add column UsbDevice (Home -> View Options -> Column Chooser, search for “UsbDevice” and double-click it).


10. Right-click the UsbDevice column and select Group.

11. Paste in the following filter lines to the Filter location in the ribbon (still in the Home tab). Click Apply Filter.

*GetDeviceDescriptor.DeviceDescriptor.bcdUSB > 0x0200


(*GetBosDescriptor && #DiagnosisTypes)

Note: #DiagnosisTypes by itself simply matches messages that contain an error of any kind.


12. Do both a “Get Full Device Descriptor” message and a “Get BOS Descriptor” message show up under the same device, as shown above?

If yes—you have successfully diagnosed that your device has a BOS descriptor issue that Windows 8.1 does not tolerate.

If no—STOP and:

– If you see “Parser Error” in the Summary column: make sure you perform all of the “parser update” steps earlier in this blog post and retry.

– Otherwise, the issue is something else.


13. If you did find both kinds of events (Device and BOS Descriptor) grouped together, we would like to know about your device. Please save the trace to SkyDrive or your service of choice, and share it with Microsoft as a link in the comments or in our contact form. If you use the contact form, be sure to mention this is a BOS descriptor issue. Also, you can use the workaround described in the next section to solve the issue. Please note that please do still send us the trace or the VID PID information of the device.


(Note that this workaround was added in the Windows update that was released on  07/08/2014. If you are applying this update within few weeks of this date, you will need to download and manually install the update from www.microsoft.com/…/details.aspx.)

To apply the workaround for a specific device, add a REG_DWORD value named SkipBOSDescriptorQuery that has a value of 1 to the following registry subkey:


(where vvvv is the device’s Vendor ID, pppp is the device’s Product ID, and rrrr is the device’s Revision number. You can get the VID/PID/REV numbers from the device manager’s details tab. This number is encoded in the HardwareIDs of the device)

1. Click Start, click Run, type regedit in the Open box, and then click OK .

2. Locate and then click the following subkey in the registry:


3. On the Edit menu, point to New, and then click Key.

4.Type the name of the new key in the following form:



        vvvv is a 4-digit hexadecimal number that identifies the vendor (idDevice from the USB Deviceescriptor),

        pppp is a 4-digit hexadecimal number that identifies the product (idVendor from the USB Device Descriptor)

        rrrr is a 4-digit binary-coded decimal number that contains the revision number of the device

              (bcdDevice from the USB Device Descriptor).

5. On the Edit menu, point to New, and then click DWORD (32-bit) Value.

6. Type SkipBOSDescriptorQuery for the name of the DWORD Value, and then press ENTER.

7. Right-click SkipBOSDescriptorQuery, and then click Modify.

8. In the Value data box, type 1 , and then click OK.

9. Exit Registry Editor.

10. Unplug and re-plug the device for the workaround to take effect.

Comments (125)

  1. MikeH says:

    Sorry, but this confuses me!

    Look at this blog entry: blogs.msdn.com/…/new-for-windows-8-problem-descriptions-for-usb-devices-and-hubs-in-device-manager.aspx. There you are telling, that Windows 8 and I think 8.1 too, will display the problem description in a dialog.

    In the article you list two BOS problem descriptions:

    1) The USB device returned an invalid USB BOS descriptor.

    2) A request for the USB BOS descriptor failed.

    So do we really have to do all the steps with tracing, logging and finding the error? Are you serious? If yes, I wonder if you ever heard of windows Troubleshooting? windows.microsoft.com/…/troubleshooting-windows.

    As a customer I would prefer an automated solution via Troubleshooting Cmdlets. Why is this not possible?



  2. Eliyas Yakub [MSFT] says:

    The ability to show the problem description in the device manager is only in the xHCI driver stack. However most people are experiencing this issue when connected to a 2.0 port which is driven by an old driver stack (EHCI).

    Yes I understand it's not fair to expect end user to do all this tracing and finding errors. We didn't target this blog to end users. (Hence we didn't add Help! to the title – silly way to differentiate, isn't it?)  It's more for enthusiasts/IHVs who have familiarity with tools.

    Our intent here first is to acknowledge the problem and provide a forum for people to share issues so we can scope how widespread the issue is.

    Since we don't have an ability to workaround through registry setting, we can't do this from troubleshooter.  

    So far, we have come across only two devices –  one shown in the blog and another one is an old batch of Sony's Xperia phones (USBVID_0FCE&PID_ADDE) when put into fastboot mode for flashing.

    We will roll out a fix for these two devices soon. We are also considering having a registry setting so users have a way to get their device working instead of rolling the OS back to Windows 8.

    As an end user, if you are finding it difficult to parse the log, just share that log on a skydrive and we will take a look.


  3. David Grayson says:

    Could you clarify whether this problem applies to devices with bcdUSB exactly equal to 0x200?  You said "2.00 or greater" at the top of this post but everywhere else it says "greater than 0x200".  I am concerned because all of our devices have bcdUSB == 0x200 and I haven't tried them on Windows 8.1 yet.  

  4. Terry F says:

    I'm having this error with a external portal hard driver that did work in this same port till I recently upgraded windows from 8 to 8.1 now I'm getting the following  error message in this drive:

    Windows has stopped this device because it has reported problems. (Code 43)

    A request for the USB device descriptor failed.

  5. USB Blog says:

    David, thank you for pointing out the typo. The BOS descriptor requirement is on devices of USB version *greater than* 2.00 only (such as 2.01, 2.10, or 3.00). I've corrected the sentence you mentioned.

  6. psyke83 says:

    I suspect that enumeration problems are occurring on a far wider range of Android devices than you may think. It's relatively rare for average users to put their Android devices into fastboot mode, as vendor OTA updates do not require use of the fastboot protocol. It may take some time for feedback to filter back you regarding this issue. You can see a lot of users reporting difficulties on the XDA website for other Android devices from various manufacturers.

    I'm an Android OS developer, so it's vital that I have access to fastboot (and equivalent) modes. I own an Xperia Mini (ST15i) and Samsung Galaxy 5 (GT-I5500) – enumeration fails for both devices when trying any of the various download protocols for each device on Windows 8.1. This issue alone has forced me to downgrade to Windows 8.0 until the issue can be resolved.

    Here's the information on my devices:

    Xperia Mini ST15i:

    Fastboot: USBVID_0FCE&PID_0DDE&REV_0100

    Flashtool mode (Sony protocol): USBVID_0FCE&PID_ADDE&REV_0100

    Samsung Galaxy 5 (GT-I5500):

    Standard download mode/Odin (Samsung protocol): USBVID_04E8&PID_6601&REV_0100

    Emergency Dload mode/RAMDUMP mode (Qualcomm/Samsung protocols): USBVID_0C45&PID_6417&REV_:112

    I would strongly suggest that you do incorporate a registry setting with the incoming fix. If my suspicions are correct, your whitelist would need to include many Android devices that use Qualcomm chipsets.

  7. USB Blog says:

    psyke83: thanks for your comments. I see you have listed four different IDs. Do we need to add all of them to the whitelist? We were going to add only USBVID_0FCE&PID_ADDE as recommended by Sony.

  8. psyke83 says:

    USB Blog,

    I've tested two more Android devices, and one of them needs to be added to the whitelist (and you should note that it's not possible to find the PID & VID on Windows 8.1, as the Hardware Ids field is filled with 0000 for the PID & VID on the affected devices):

    Huawei U8160 (a.k.a. Vodafone 858 Smart):

    Fastboot: USBVID_18D1&PID_D00D&REV_0100 (I believe this is a non-vendor specific VID, so it can affect other devices)

    Regarding your question on which IDs need adding, I would say that you need to add them all. Here's a breakdown of the various modes and their significance:

    1. Fastboot – the most common protocol used for flashing Android devices across all manufacturers

    2. Odin – Samsung's proprietary flashing protocol (to replace fastboot). Used by "Samsung Kies" for official upgrades via PC and an engineering flash tool called Odin Multi Downloader.

    3. Flashtool – Sony's proprietary flashing protocol. Used by Sony's official bootloader unlock utility (locked bootloader = fastboot mode is disabled), and can be used to Flash official ROM packages: unlockbootloader.sonymobile.com

    3. Emergency DLoad/RAMDUMP mode: most likely used by engineers for Qualcomm-based phones (including my Samsung model). Not much use for end-users, as the software used to manage devices in these modes are not publicly available.

    Out of my four devices, the three that exhibit this problem are all devices with a Qualcomm chipset. It seems that my suspicion that many Qualcomm devices will be affected seems likely.


    Samsung Galaxy 5 = Qualcomm MSM7x27

    Huawei U8160: Qualcomm MSM7x25

    Sony Xperia Mini: Qualcomm MSM7x30


    Samsung Galaxy Y: Broadcom BCM21553

    In the case of the Qualcomm devices, I would suggest that the common denominator is the Little Kernel Bootloader. This is a bootstrap kernel used by all of these devices for the various download/diagnostic modes. The code can be viewed here: http://www.codeaurora.org/…/lk

    The LK project drives the fastboot protocol for Qualcomm-based devices, but I strongly suspect that other proprietary protocols (such as Samsung's Odin protocol or Sony's flashtool protocol) most likely re-use a lot of the code in the LK project (and therefore also have the USB enumeration bug). I have previously examined dumps of the "arm11boot" partition of my Samsung device and I can see the "LK Bootloader" string present alongside Samsung's Odin strings.

    There are many devices with Qualcomm-based chipsets using the LK bootloader. You may find that your whitelist could end up quite large…

  9. RG Nicholas says:

    Just to add to the information posted here… I too have the same issue when trying to use "fastboot" with my HTC Rezound smartphone which has a Qualcomm processor. I have tried may suggested fixes that I have searched the Net for but nothing works. I can corfirm that "adb" is working though. I have a Windows 8.1 64-bit machine which was upgraded from Windows 8. On Windows 8, both fastboot and adb worked.

    Will you guys announce an updated driver here in this space when you get one ready?

  10. psyke83 says:

    RG Nicholas,

    You didn't provide the USB hardware id (VID & PID) of your device in fastboot mode. If the upcoming update only implements a whitelist and not a global registry setting, then Martin and the other folks at MS will need the precise details of your device in order for the update to benefit you at all.

  11. K says:

    Hi, I have a spectrophotometer device that has a similar problem that I would really like to use over the summer for a project.

    The I.D I retrieved were:

    fid_USBPORT_Device_Descriptor: VID_2457&PID_1002

    bcdDevice: 2 (0x2)



  12. Eliyas Yakub [MSFT] says:


    Your spectrophotometer issue can't be this one. The bcdDevice value for your device is 2. This issue affects only devices with bcdDevice value greater than 2.


  13. K says:


    The bcdUSB value was more than 500 when I conducted the USB trace.  It doesn't say on the blog post that the bcdDevice value has to be greater than 2 on affected devices.

    Also, I think the team have fixed the problem by whitelisting the device. (thank you microsoft USB core team! 🙂 )


  14. Too much information says:

    I'm a simple user with Android Xperia.The main question is:"Will Microsoft give an update to fix this issue,or what"?!!!

  15. smf says:

    Xperia Ray Fastboot: USBVID_0FCE&PID_0DDE&REV_0100

    Xperia Ray Flashmode: USBVID_0FCE&PID_ADDE&REV_0100

    >We were going to add only USBVID_0FCE&PID_ADDE as recommended by Sony.

    It might be that they are only interested in supporting flashmode and not fastboot because none of their software uses fastboot, or they might not know or care. They aren't really in a position to recommend or confirm anything, generally people who need this aren't using any software supplied by Sony apart from the bootloader. If we could replace the bootloader with one that doesn't have this bug then we would.

    I'm pretty sure this affects more than just the xperia phones from 2011, ever since windows 8.1 beta came out people have been trying to find a solution for a number of phones from different manufacturers. I only recently found this blog, I imagine if other people knew there was a way of talking to someone that might be able to do anything then you might have had a lot more reports of this along time ago.

  16. Ola says:

    My Midiplus Tbox 2×2 (MIDI interface) stopped working after upgrading to Windows 8.1 from Windows 8.


    bcdDevice: 4096 (0x1000)

    I've uploaded the USB ETW trace to my public skydrive folder, take a look if you want: skydrive.live.com

    Please whitelist my device if possible, I don't want to revert back to Windows 8.


  17. Arty says:

    I'd really like to have a registry setting to disable this behavior. I have a number of custom built devices that have their bootloader functionality fused in, and by a weird coder's mistake, they report their bcdUSB as 0x2000, not 0x0200, which naturally prevents them from working under 8.1

  18. USB Blog says:

    Ola, I looked at your ETW trace and it's related to BOS descriptor issue. The device stalled when queried for BOS descriptor. I have added this one the list.

    We are considering adding a registry setting so you can workaround this on your own. It might take Feb or Mar '14 for the fix to roll out.

  19. Android_Phones_User says:

    This device hasnt been working in windows 8.1 got the details from windows 8

    Sony Xperia Play


    Fast Boot Mode (Sony Fast Boot Interface) Hardware IDs:



    Flash Mode SEMC Flash device propeties Hardware IDs:



  20. Ola says:

    USB Blog,

    Thanks for your help! How long does it take a device to start working again after whitelisting it (my device is still not working)?

  21. USB flash drive not working in 8.1 says:

    USB 2.0 8GB flashdrive works in computers with windows 8 and windows 7 but not 8.1. Code 43: Device descriptor request failed.

  22. Raul Benet says:

    Texas Instruments DM3725/30 ROM bootloader(and possibly many other devices in the OMAP3 family, as they share the USB core and much of the ROM firmware – they may even share VID/PID) suffers precisely from this issue.

    It reports bcdUSB = 0x210; but stalls during DATA phase of the GET_DESCRIPTOR(BOS). [observed with USB analyzer].

    We observe the issue on a Windows 8.1 host, when plugged on a USB2.0 controller.

    VID = 0x451 (Texas Instruments)

    PID = 0xD00E

    bcdDevice = 0.0

    Upgrading the firmware is not an option in this case, as this is a built-in non-upgradeble bootloader.



  23. Ralf says:

    fid_USBPORT_Device_Descriptor: "Fastboot HTC One XL" VID_0BB4&PID_0FF0&REV_0100

  24. USB Blog says:

    Whitelisting a device requires an update to be pushed out. I'm expecting this to go out in February of next year. As I said earlier, we are also trying to push out a registry setting so users can workaround on their own without waiting for another update to come out.

    Thanks for your patience.

  25. smf says:

    February seems like a long time. Can't you just comment out the test completely and give us a quickfix?

  26. Computermensch says:

    There may be an issue with Thrustmaster MDF – that used to work with Win8. Now some users are doing this to make them work again: forum.lockon.ru/showthread.php

    Even though this issue may not be directly related to this post – then indirectly, the upcoming patch for USB 2.0 devices not working with Win 8.1. should include this popular add-on for PC's. You still do not get to play Lockheed Prepar3D v2 (formerly MS Flight Simulator) on anything else but PC.



  27. PYC says:

    Hi, I have the device not recognised problem. Here is the vid as extracted following your instructions:


  28. HY says:

    We've got Ocean Optics USB2000 spectrophotometers (very widely used scientific device), which now show 'code 43' device error under MS Windows 8.1.  Much of the above too technical, but these need these to work under Win 8.1.  Can't see a VID/PID since they come up code 43.  Really annoying.  Please, can you help?  

  29. HY says:

    As follow-up to post made yesterday, VID/PID values are:


  30. Head says:

    My WiFi Card also seems to have this problem.

    AzureWave AW-NU222:


    fid_USBPORT_Device_Descriptor: VID_13D3&PID_3247

    bcdUSB: 23644 (0x5C5C)

    fid_URB_Hdr_Status: stall_pid (0xc0000004)

    I hope there aren't more problems with such a silly bcdUSB Number.

    Here are some screenshots i made:




    I hope this can be fixed soon. If you need something else please let me know.

  31. Head says:

    Sorry I forgot to post the bcdDevice value. So here is everything you need again

    Device_Descriptor: VID_13D3&PID_3247

    bcdDevice: 2049 (0x801)

  32. HY says:

    Pls ignore previous.  We were able to update EEPROM firmware on devices in question via programming app from mfr, and both now work perfectly under Win 8.1.  No longer an issue.  Thanks.

  33. Jeff says:

    Thanks for this blog post. I have been having this problem with my "Sharkoon Quickstore Portable Pro USB 3.0" drive enclosure.


    My computer only has USB 2.0 ports.

    I contacted the manufacturer when I upgraded my laptop to Windows 8.1 and had this problem with my external drive but they said it wasn't their problem. Typical. It's always someone else's problem when dealing with computer hardware and software manufacturers.

    Anyway having followed your instructions I obtained the following resultswhich I think is what you're after:

    fid_USBPORT_Device_Descriptor: VID_152D&PID_2509

    bcdUSB: 528 (0x210)

    And after plugging the enclosure into a Windows 7 computer I obtained the following Hardware ID in Device Manager:


    Finally can I just add that this to me is just insane.  I'm encouraged to and go to the trouble of updating Windows 8 to 8.1 which doesn't even then solve the usability interface issues with Windows 8 on my non touchscreen laptop.  And it then breaks compatibility with my external harddrive which I use to back up all my work and now I can't use.  I then have to go through all the steps above to try and work out what the problem is myself.  Completely insane.  It's no wonder that all my less tech savvy friends have thrown in the towel on Windows laptops and have moved to Apple.  No ordinary user should have to experience these sort of issues in 2013.

  34. Jeff says:

    Update to my earlier post of 29 Dec 2013.

    Despite earlier having received zero help from Sharkoon's tech support after raising this issue with them, once I was able to point them to this blog post and provide the USB trace results they quickly provided me with an updated firmware for the device which has fixed the issue.

  35. Arun says:


  36. James says:

    Audio Technica ATR2100-USB microphone also has this issue, Device Descriptor Request Failed

  37. Tara says:

    Western Digital

    MyPassport 2.OTB – WDBYbL0020BRD


    Device updated with WD MyPassport Firmware dated 12.19.2013, but did not help

  38. icecat says:

    it is usb 3.0 hdmi captuer device. windows 8 ok, but widnows 8.1 code 43

    fid_DeviceDescription: Sky CapX USB 3.0 Driver

    fid_DeviceDescriptor: VID_04B4&PID_00F2

    bcdUSB: 768 (0x300)

  39. icecat says:


    but found diff event


    fid_DeviceDescription: Sky CapX USB 3.0 Driver

    fid_DeviceDescriptor: VID_04B4&PID_00F2

    bcdUSB: 768 (0x300)

  40. Serpico23 says:

    this is the device that needs to be fixed:

    Polaroid Digital Voice Recorder

    Model No: PDR300


    December 2009

    couldn't find the device’s hardware ID, since my PC doesn't recognize the usb device.

  41. Stefan says:

    Samsung Galaxy Note 10.1 – same issue.


  42. WD Passport Ultra 2TB will not not work says:

    USB Mass Storage Device

    This device cannot start. (Code 10)

    {Operation Failed}

    The requested operation was unsuccessful.

    Device USBVID_1058&PID_07485758373145333355454C3339 was configured.

    Driver Name: usbstor.inf

    Class Guid: {36FC9E60-C465-11CF-8056-444553540000}

    Driver Date: 06/21/2006

    Driver Version: 6.3.9600.16475

    Driver Provider: Microsoft

    Driver Section: USBSTOR_BULK.NT

    Driver Rank: 0xFF2000

    Matching Device Id: USBClass_08&SubClass_06&Prot_50

    Outranked Drivers:

    Device Updated: false

  43. Cmherrmann says:

    I have two external USB hard Drives that have the same error  WD 25001032-001 and another generic one.  Makes it difficult to back up and restore my files from my old PC.

  44. KenN says:

    My Samsung Galaxy Mini GT-S5570 Android phone has this problem when it goes into fastboot mode while trying to perform a firmware update using the official Samsung Kies tool.

    Here are the details from the Netmon trace:

    fid_USBPORT_Device_Descriptor: VID_04E8&PID_6601

    bcdDevice: 256 (0x100)

    bcdUSB: 528 (0x210)

    fid_URB_Hdr_Status: stall_pid (0xc0000004)

  45. PG says:

    Google Glass has same issue

    %SingleAdbInterface% = USB_Install, USBVID_18D1&PID_4E11&REV_0216

    %CompositeAdbInterface% = USB_Install, USBVID_18D1&PID_4E11&MI_01

  46. Bob says:

    My newly purchased Laser 3.5" USB 3 ext. HDD will not work with 8.1, works fine with windows 8 & 7

  47. Dean says:

    HTC Incredible (original). Thanks Microsoft. Bastages.

  48. Win 8.1 USB 2 Temporary Solution says:

    I hope this post is on topic.

    After updating to Win 8.1 x64 on my USB 2 computer, fastboot commands (used for flashing Android devices) stopped working, although no problems with ADB.  I tried everything,  editing the registry, new universal drivers, new intel drivers but nothing worked.

    Then I came across this solution:


    This simple solution replaces two Win 8.1 USB drivers with Win 8.0 drivers.  Now, fastboot commands work together with external Hard Drives, thumb drives, etc.  

    Hope this helps you too.

  49. USB Blog says:

    @rwells1111 Thank you for sharing the link.

    Please be warned that Microsoft does not provide support for issues arising when you modify OS components, as that link instructs.

    And if you go this route, Windows Updates may not work, so please revert these actions as soon as possible. For example, if the instructions enable you to update the device's firmware, the firmware update may fix the original issue.

    Note that there is no equivalent workaround for USB3 host ports; no version of Microsoft's USB3 host controller driver stack is permissive of this BOS descriptor device issue. ^p

  50. psyke83 says:

    USB Blog,

    In regards to rwells1111's solution – desperate times call for desperate measures. The workaround on XDA has enabled me to successfully upgrade to Windows 8.1 (and continue with Android development without interruption). It's a shame that end-users are required to wait so long for an official fix, but I can understand the time required for Q&A.

    I'll contact the poster on XDA and inform him on how to show users how to cleanly revert the changes. For the record, this will safely revert the drivers and avoid any issues with Windows updates, which will be especially important when the specific hotfix/patch for this issue is released:

    sfc /scanfile=%systemroot%system32Driversusbport.sys

    sfc /verifyfile=%systemroot%system32Driversusbhub.sys

    These commands will instruct the Windows Resource Protection to repair the integrity violations on the two files.

  51. Anthony Frazier says:

    I also appear to have the BOS Descriptor issue with my HTC One S while in fastboot mode with the latest firmware available for my device.

    Trace File available from: drive.google.com/…/edit

  52. smf says:

    @USB Blog

    "Please be warned that Microsoft does not provide support for issues arising when you modify OS components, as that link instructs."

    It's been a year since the first Windows 8.1 preview that introduced this problem, I'm not sure that Microsoft retracting support would have any effect. The public perception is that there is no support either way.

  53. Steven Donohue says:

    Is there a date set for when the fix will be pushed out? Will this be done through Windows Updates?

  54. Eliyas Yakub [MSFT] says:

    Fix for Sony phones is coming out next week (2/11) as a Windows update. This fix will address the following two devices:



    Another fix is scheduled up to come out in the second week of March. That will address following 3 devices:

    Midiplus Tbox 2×2  – VID_1ACC&PID_000A

    Storage: USBVID_152D&PID_2509

    Huawei U8160 Fastboot: USBVID_18D1&PID_D00D

    If there are other popular devices impacted, please post the description of the device and ETW log that shows the failure due to BOS query, so we can make a request to get them added to whitelist. We absolutely have to have ETW log as a proof to make sure we are not mistaking something else as this issue.



  55. 2cents says:

    Has galaxy note 3 smartphone been whitelisted?

    Or do i jave to go through this tracong process?

  56. Anthony Frazier says:

    Are endusers able to modify the whitelist so that those of us who seem to be affected by the bug can test with our own devices and have a usable fix while we're waiting for device vendors to make firmware updates available (or — far more likely — so we can fix it for ourselves because the vendor's never going to fix the firmware) or MS to verify the fix?

  57. SRChiP says:

    I got the update and now Sony Fastboot works (in my Acro S).


  58. Raul Benet says:


    any update on the following:

    "We are also considering having a registry setting so users have a way to get their device working instead of rolling the OS back to Windows 8."



  59. psyke83 says:


    Samsung GT-I5500,  USBVID_04E8&PID_6601 (Samsung Odin download mode)

    I followed the steps, but I can only see "Get Partial Device Descriptor" in my trace. Here is my trace: http://www.mediafire.com

  60. EliyasYakub[MSFT] says:


    End users cannot modify the whitelist. It's built into a separate binary blob and pushed out.

    Also, my request to create a registry setting didn't get approved by the Windows Service Engineering team. So unless we get strong and plenty of customer feedback on the need to have registry setting, I don't think this is going to happen.


  61. What is the USB Core Team doing? says:

    It seems to me that the software engineers responsible for the Windows USB drivers are trying to OVER FINESSE this particular solution. More than likely the affected peripherals are not in compliance with the current USB standards. My peripheral manufacturer informs me that "… We should advise you however, that our preliminary findings indicate that your onboard niner-triple-zero computer is in error predicting the fault.". They have no intention of paying for major rework. Summarily, the product performs it's primary function BUT does not initialize properly.

    So what do I want. Let's get a BRUTE FORCE setting check box for Windows device driver initialization that says "log but tolerate" USB enumeration errors (or is Windows 7 compliance level better?). Think about it. These same un-reworked devices will be around through Windows 9, 10, 11… . Keep crocheting a whitelist if you will but SEVERAL MONTHS into this problem and you've got customers with functionally dead but otherwise working hardware laying around. Time to break out the sledgehammers and WORK AROUND THIS (who's to blame problem).

  62. Anthony Frazier says:


    That's not exactly the answer that I wanted to hear, but thanks for responding.

    It looks like a large number of HTC's phones (including their current flagship, the HTC One) are also affected by the same bug.  I only have the One S so I can't personally verify for other devices, but it certainly appears to be the case since many of the available workarounds for Windows 8.1 involve forcing the OS to use Windows 8 USB drivers.

    There's no way HTC is going to release new firmware for all of these devices even though the bug is really on their side.  From the perspective of the end user — I don't particularly care that it's really their fault.  My device worked fine up until Windows 8.1, and now it's not working.  That sucks for me.  It's even worse because Microsoft now has a published workaround… just not for the device I happen to own.


  63. Andrew says:


    I am facing the Code 43 error on my WD My Essential Book 4tb external hard drive. Tried your suggested method but to no avail. There isn't anything shown after step 11. My best guess is the device and log parsan download went wrong. It states error every time after downloading.

  64. Sander says:

    I'm having the same issue for a ross-tech cable.

    Since my laptop only has usb 3.0 ports. it causes issues.

    If I connect a usb hub(old usb version), the issue is resolved.

    Any workaround possible, besides the usb hub?

  65. abuck says:

    Hello USB blog,

    I'm facing a Code 43 error on my USB stick PNY 128gb turbo:

    Hardware Ids: USBVID_154B&PId_FA05

    I've sent the Microsoft Message Analyzer stack track to you guys. Is there a workaround for this issue other than whitelisting the hardware or having a firmware update ?

  66. Ron says:

    Wouldn't it be the easiest approach for all users to have a fixpack that just restores the old windows 8 behaviour in windows 8.1?

    If this fixpack would only be available for manual install it would not interfere with mainstream users and could help those a lot who need to get their usb devices working again.

  67. Hiler says:

    HTC Desire V

    (fastboot) driver


  68. mace says:

    I get an error on point 5 of diagnosis.


    (the hex code changes)

    The device is a Toshiba MK5065GSXF in a Sharkoon Quickstore Portable USB 3.0.

    Works well on XP,7,8. Does not work on 2 different 8.1 systems.

    Hardwaremanager(in case that helps):


    Status: 01806400


  69. mace says:


    I'm getting an error on Point 5 of diagnosis staps.


    The hex-part changes every time.

    My HDD works well on XP,7,8 but not on two differrent 8.1 systems. They worked well on those systems until the update.

    It is a Toshiba MK5065GSXF in a Sharkoon Quickstore Portable USB3.0.

    Hope there will be a solution soon.

    Best Regards


  70. Ola says:


    Is the second update out yet? The second week of march is long gone and my Midiplus Tbox 2×2 is still not working.


  71. Greg says:

    Code 43 on Windows 8.1

    Texas Instruments USB 3.0 eXtensible Host Controller – 0096 (Microsoft)

  72. Ricardo says:

    I have two drives (sandisk cruzer blade 8GB) failling  to be recognized (device descriptor), that were fine before 8.1 and were fine in win7, win8, XP and MacOSX.

    If I turn on bios EHCI handoff workaround for OSes without that feature (asus Z87-A), basically forcing the bios to take care of the EHCI, they work. Still, this is a pitifull sollution.

  73. Latest Update says:

    Update released earlier in March contains fixes for the following devices:

    Midiplus Tbox 2×2  – VID_1ACC&PID_000A

    Storage: USBVID_152D&PID_2509

    Huawei U8160 Fastboot: USBVID_18D1&PID_D00D

    Sony fastBoot: USBVID_0FCE&PID_0DDE

    Sony flashmode: USBVID_0FCE&PID_ADDE

    1) There is no request queued up to our service engineering team to add any more devices.

    2) We will not revert the behavior to Windows 8 because we think that this is a HW issue and should be fixed by the HW maker by way of providing new firmware update.

    3) We are still evaluating the need to have registry setting. I'm confident that we will get this added in the future updates.


  74. Anthony Frazier says:


    Please, please, please give us the registry setting!  Whoever you've got to bribe or threaten to make it happen, get it done!  🙂


  75. Ola says:


    Apparently my Midiplus Tbox 2×2 now works on my old computer but not on my new one. Maybe because the new one only has USB 3 connections or something. I don't get error code 43 in device manager anymore but error code 10 instead.

    Do you mind looking at the new trace file? I would really like this to work on my new computer.


  76. Eliyas Yakub [MSFT] says:

    Ola, please apply all the updates from Windows Update, and your device will work. Your issues is also due to incorrect BOS descriptor. The march update already has your device in the workaround list.


  77. Ola says:


    I did apply the march update, it only fixed my device on my old computer for some reason. Any idea why?

  78. zreusel says:

    Sharkoon Quickstore Portable usb3.0 external hard disk cover does not work (all updates applied as of 04/04/2014 . test on 2 clean installs on windows 8.1 none working.

    inside is a seagate hdd (but since the cover handles usb it shouldt matter)

  79. zreusel says:

    would love to post the log aswell but i cant get messange analyser to work (on both fresh installed laptops that is, allways get 2 error messages : enable & start trace session failed). hard to help you guys out this way. since the log parser download described here only worked after several attempts (downloaded but got error message only after 2 restarts it stayed on 1.001. if i would click sync all again it would go back to 1.000 verison (with same error msg that is)

  80. Ola says:

    My Midiplus Tbox 2×2 is working on my new computer now! I don't know why, there was an update from Microsoft today and I think my audio driver was updated yesterday. Thanks for your help!

  81. bharani viswas says:

    here z the file


  82. Fernando says:

    My Sharkoom Quickstore Portable USB 3.0 enclosure don´t work with Windows 8.1, but it worked propertly with Windows 7 & Windows 8. The HD inside it is a Samsung HM500JI and the Laptop is a Samsung R580 without USB 3.0 ports

    I upload a trace at drive.google.com/…/edit

    any work arround?

  83. Fernando says:

    After upgrading the firmware of enclosure it works propertly in Windows 8.1. You can find firmware update at http://www.sharkoon.com/…/fw_update_jmicron_zip_14659.zip . That update is for SHARKOON QUICKSTORE PORTABLE USB3.0 (chipset JMS551/539 Series)

  84. Ronald says:

    error code on my hp desktop when i plug in my usb HTC Inspire 4g phone in order to root, does not recognize the device.   Says Device failed Enmeration.   Then in  my Devices and Printers, the phone device says:  Windows has stopped this device because it has reported problems (code 43)

  85. Paul says:

    cannot use fastboot with my htc-desire c with win8.1. Enumeration failed. i need a patch/update for windows.

  86. Marco says:

    There is an error in your post. You state "As per the official USB specification, a USB device with version greater than 2.00 must provide a BOS descriptor.". This is incorrect. The USB 2.0 LPM specification states that a devices that supports the BOS descriptor must have a USB version of 0x0201 or higher, but not vice versa. The USB 3.1 specification somehow introduces that requirement for USB 2.0 devices, but that's irrelevant for them.

    In fact, i see no reason why the USB 2.0 driver stack should be doing such validation, the specification does not state this requirement.

  87. Otha45 says:

    Just upgraded to 8.1 on a dell M6700.  USB ports display a devise descriptor error request.

    I think MSFT has a bigger problem with 8.1 than they are admitting.a

  88. chris says:

    this sucks.

    new win 8.1 machine, plug in M-AUDIO keyboard which has worked for ages on earlier builds and guess what – device descriptor failure, completely useless, workflow down the pan………….I want to make music, not google the web for hours trying to find a fix.

    thanks a lot guys…………………

  89. andy says:

    Well thanks to this particular bug we've had to issue a ban on the use of Win8/8.1 on new installations sold and upgrades for existing ones. We have had to roll back a number of customers to win7 as some of thier equipment which worked previously now no longer communicates. Some of those device cannot have firmware updates as suppliers no longer support them and the cost of tracking down the VIDs for them all is prohibitive (and is it right that we shoulder the expense of fixing an issue which you have caused?)

    As far as those customers are telling us – they see it as a windows failure, not a device failure. All they see is that if they plug the device into win7 it works, if they plug it into win8+ it doesn't. Therfore win8.1 is to blame

    Come on guys, all this takes to fix it, (as has been asked for before) is a registry key setting to turn the extra checking off.

  90. Registry setting to skip BOS descriptor query says:

    A new per device registry setting to skip BOS descriptor query will be made available with August 2014 update. I will share more information as we get closer to the release.



  91. Chris says:

    Anyway to get this sooner? (publish a hotfix?)

  92. Eliyas Yakub [MSFT] says:

    To get a hotfix before the public release, you have to contact Microsoft support and request for it.


  93. KB number? says:

    What is the KB number of this USB hotfix?

  94. Eliyas Yakub [MSFT] says:

    KB 2973456

  95. Dmitry says:

    The Epson R200 display the same symptoms.

  96. prasun says:

    Is it possible for a device manufacturer to set MaximumTransferLength during device installation?

    The reason is that, this can give a huge performance boost for large file reads and writes.


  97. Bruno says:

    Hell, not sure if this is the same issue, but I've got a (what looks like) similar problem with a usb3-gigabit lan ethernet adapter that won't work on windows 8.1

    I've tested it with a windows 7 computer with usb2 and that works fine. On my new laptop which only has usb3 it won't work anymore.

    The trace is available on the following location:



  98. Klaus Grosskopff says:

    I have a BOS descriptor issue with the following device…

    Novation Nocturn

    I uploaded the tracefile to http://www.mediafire.com/…/usbtrace.etl

    The frame numbers are 1504 and 1505  


    Klaus Grosskopff

  99. Artem says:

    Another unhappy owner of Samsung I5500 🙁

    Spent 2 days figuring out why I am not able to connect my mobile to Windows 8.1

  100. Apollo says:

    Sprint Galaxy s3…same usb problem…but i plugged in my old s2 and it was recognized. im on windows 8.1. WTH guys?

  101. Eliyas Yakub [MSFT] says:

    Hi All,

    The July 2014 Windows update released yesterday includes a fix to the USB stack to support a registry setting to ignore the BOS descriptor failures. You can download the update from http://www.microsoft.com/…/details.aspx. If you scan for new updates in Windows update wizard, this should come up as optional update for now. Few weeks from now it will become an important update and get pushed into your systems automatically. Until then you have to manually install this update.

    To apply the workaround for a specific device, add a REG_BINARY value named SkipBOSDescriptorQuery
    that has a value of 01 00 00 00 to the following registry subkey:


    (where vvvv is the device's
    Vendor ID, pppp is the device's Product ID, and rrrr is
    the device's Revision number).

    1. Click Start,
           click Run, type regedit in the Open box,
           and then click OK .
    2. Locate
      and then click the following subkey in the registry: 


    3. On
      the Edit menu, point to New, and then click Key.
    4. Type
      the name of the new key in the following form:


      where vvvv is a 4-digit hexadecimal number that identifies the
      vendor (idDevice from the USB Device Descriptor),

      pppp is a 4-digit hexadecimal number that identifies the product
      (idVendor from the USB Device Descriptor), and 

      rrrr is a 4-digit binary-coded decimal number that contains the
      revision number of the device (bcdDevice from the USB Device Descriptor).

    5. On
      the Edit menu, point to New, and then click “Binary Value”.
    6. Type SkipBOSDescriptorQuery for the name of the DWORD Value, and then
      press ENTER.
    7. Right-click SkipBOSDescriptorQuery,
      and then click Modify.
    8. In
      the Value data box, type 01 00 00 00 , and then click OK.
    9. Exit
      Registry Editor.


    Thanks FeX for your feedback.

  102. HTC says:

    "You can get the VID/PID/REV numbers from the device manager's details tab. This number is encoded in the HardwareIDs of the device)"

    I can't get it, Hardware ID of my device in device manager is indicated as "USB/UNKNOWN". What should I do? (fastboot HTC Wildfire S)

  103. HTC says:

    Also, forgot to add, my error is "A request for the USB BOS descriptor failed." not the "The USB device returned an invalid USB BOS descriptor.", so maybe that's the reason.

    In the "Device instance path" I have "USBVID_0000&PID_00005&21E739F&0&5" But I can't use it, it doesn't have REV number and PID/VID numbers are zeroed.

  104. dot45 says:

    Can we get a x64 version of that hotfix?

  105. A Frazier says:


    Is there any way to extract the device revision number (bcdDevice) from the packet capture?  When I plug my device into my system (post-hotfix install), the Vendor ID and Product ID are zereoed out in Device Manager.  I found those values in the capture, but I'm not sure where to find the revision number.


  106. Eliyas Yakub [MSFT] says:

    Frazier, you can create a key without the revision number also. If you did that then the workaround will be applied to all devices with that VID/PID regardless of its revisions.


  107. Joosep says:

    Followed all the steps and did not get lucky.

    USBVID_0D8C&PID_013C REV_0100

    Tried adding the SkipBOSDescriptorQuery as a DWORD value and also as BINARY value, neither didn't work.

    Every time I get the same error when plugging in the device (USB Headset)

    Windows has stopped this device because it has reported problems. (Code 43)

    The USB set address request failed.

    Also tried adding the key with and without REV value, still no help.

    Any ideas what else I may try?

  108. Vincent says:

    I am confused.

    My setup is MIDI controller to audio interface (MIDI cable) to Windows 8.1 post hotfix (USB cable).

    My PC only registers events when I select the USB 3 trace, which means I probably only have USB 3 ports (surprises me, but…). I don't find any of the events you mention in this blog. However:

    – the audio interface appears in the device manager

    – the MIDI input led is flashing on the audio interface (sign the audio interface receives MIDI in signals)

    – the rest of the audio interface correctly functions with the PC (e.g. speaker volume, etc.)

    – MIDI in data does not pass on to software installed on the machine (Reaktor, Reaper)

    – Reaktor and Reaper correctly configured (verified with forum advice)

    How can I test that MIDI in signals indeed come through the USB port?

    Thank you for your advice.

  109. Lauro Moraes says:

    Problem for USB Samsung Galaxy5 I5500B Error  (Code 43)

  110. Luis Gradyz says:

    I have a HP ENVYm6-1205dx that comes with W8 factory installed so I upgraded it to W8.1 a while ago and everything was just fine. Today the Biometric Fingerprint wasn't working so I checked the Device Manager and the fingerprint sensor wasn't there but just a "Unknown USB Device (Device Descriptor Request Failed)". I tried everything I could to get it to work but nothing seemed to work. I can downgrade it to W8 with the recovery partition but that's not an option as I just have a lot of files and programs. Can you fix it asap please?

    PD: I checked windows update on my laptop and the "kb2967917" update, which was supposed to fix this issue, was already installed so I don't know what else to do.

  111. Imn says:


    I get error while syncing items. A short video of what happens:


    I have the problem with my Samsung Galaxy Mini GT-S5570

  112. Lee V says:

    Having the same problem with a Dymo Labelwriter 4XL. Can't print shipping labels now!

  113. Ken M says:

    Thank You,

    This fixed it perfectly. Originally I got this USB hub from someone that said it was broke. After making the change it works every time now on my Windows 8.1 64x machine.

  114. Jose Lameira says:


    Workaround is not totally correct. You'll need to add a new Binary Value of 01 00 00 00, and _NOT_ a DWORD as the post says. A DWORD will not work and will make only loose time.

    Thanks as this was of great help

  115. Martin says:

    Got a problem that sounds like the same thing with a drum controller (medeli DD402D unit). Unknown USB Device – Device Descriptor Request Fail etc.

    Device USBVID_0000&PID_00025&39258cb2&0&1 had a problem starting.

    No revision number.

    I get the same problem on my 2*8.1 pc's, (one usb2.0 only, other usb2 + 3)

    Also on an old XP box lying around – same problem!


  116. Flavio Campana says:

    Is this fixed now?

    I get this error on my pc with different hardware (oneplus one, logitech G25) but on a different pc they work well.

  117. Ad says:

    To those struggling to use Message Analyzer with the error 'failed', try launching the app as administrator. Fixed it for me 🙂

  118. Jon J says:

    I might as well throw my symptoms out there in hopes of resolve:

    HP ENVY 23 (desktop pc with touch screen and wireless HIDs), WIN8.1 64bit

    Yes, it does have the KB2967917 update.

    Small issue: when I unplug the machine and plug it back in & start up, the wireless keyboard does not work. Touch screen and/or mouse allows me to reboot and then all is good. This is consistent.

    Large important issue: mobile devices are not recognized. Samsung GS3, GS5 and LG g-pad. The GS5 does not work with usb2.0 cable but is recognized and works with usb3.0 cable. (although is seems like a workaround, it is unacceptable because the usb3.0 cable is used with a HDD, which is the target drive for the files coming from the GS5.)

    There was a time or two when I connected an external USB2.0 hub. I read in a KB article where there was a known issue with this.

    Other than the two issues, everything else connects fine. This includes various USB2.0 HDDs, older Flash Drives, and even a Canon EOS 5D camera. (the camera does not connect with Adobe Lightroom because of a WIN 8.1 issue, which still needs to be fixed!)

    These mobile devices worked fine with this computer. Something malfunctioned, but none of my external devices malfunctioned.

  119. Michael Gold says:

    Would have been a good idea to add a behaviour like Boot Option 7 (driver signature) that would allow us to temporary add a legacy USB device (and have Windows 8.1 remember – registry) instead of the way too cumbersome game of finding the vendor ID etc.


  120. Fduch says:

    People in this thread have already mentioned the exact HTC Fastboot VID_0BB4&PID_0FF0&REV_0100

    And yet, it's still not working.

    And the SkipBOSDescriptorQuery does not work either. Nothing changes. And the message analyzer sill shows that the BOS descriptors are queried. Useless…

    MessageNumber DiagnosisTypes Timestamp TimeElapsed Source Destination Module Summary

    5679 None 2015-05-17T03:11:15.0465692 0.0021625 UsbSpec Get Full Configuration Descriptor Set

    5685 Application 2015-05-17T03:11:15.0493809 2.9045898 UsbSpec Get BOS Descriptor – USBD_STATUS_CANCELED

  121. Fduch says:

    "To apply the workaround for a specific device, add a REG_DWORD value named SkipBOSDescriptorQuery that has a value of 1 to the following registry subkey:"
    The DWORD type did NOT work for me. The BINARY type worked.

  122. Joshua says:

    I only get a hardware ID of "USBDEVICE_DESCRIPTOR_FAILURE". I have the same problem with my USB 3.0 port on Windows 10. However, those are Etron ports, and I am able to install the Etron driver for those ports as an alternative to the Microsoft drivers. Like magic, my USB device just works again. Please put a fix directly into the USB drivers rather than a clumsy, arcane registry key that may or may not apply to Windows 10 (the KB article does not state Windows 10) and requires the VID and PID, which isn't even correctly discovered.

    I would be more than willing to blame the device, except that it "just works" with the Etron drivers and drivers in Windows 7. Yeah, the 8.1 drivers may conform more strictly to the USB specifications, but there needs to be a compatibility mode that automatically kicks without adding registry keys.

    For users who still can't get their devices to work, I found some instructions at XDA for replacing the new USB drivers with the functional ones from Windows 8:


  123. Christian D'Abrera says:

    I have encountered an issue with an RTL8153 USB 3.0 GbE dongle, where the USB device endlessly disconnects and reconnects. When run through a USB 2.0 hub it does not have this issue.

    Link to my trace:

    I hope this is useful to somebody. I really have no idea what I’m doing.