USB Device Not Recognized Code 43 Windows 11 Fix [2026]
Quick Answer: USB Code 43 means Windows detected a device but the device reported itself as malfunctioning. This is usually a power delivery issue — disable USB selective suspend and update USB controller drivers to fix descriptor failures.
Symptoms
- Device Manager shows yellow triangle with "Code 43: A request for the USB device descriptor failed"
- USB device works on another computer but not yours
- Device briefly appears then disconnects repeatedly
- "USB Device Not Recognized" balloon notification appears
- Works in USB 2.0 port but not USB 3.0 (or vice versa)
Why This Happens (Root Cause)
Code 43 isn't one error — it's Windows saying "the device told me it's broken":
-
Power Delivery Failure: USB 3.0 provides 900mA, USB 2.0 provides 500mA. Some devices (external HDDs, charging cables with data lines) need more power than the port can provide, causing the descriptor fetch to fail mid-transmission.
-
Driver Signature Conflict: Windows 11 requires signed drivers. Older USB devices may have drivers that fail signature validation, causing Code 43 instead of a proper error message.
-
USB Controller Firmware Bug: Intel USB 3.0 eXtensible Host Controller drivers (versions prior to 10.0.19041.1) have known descriptor caching bugs that trigger false Code 43 errors.
-
Device Descriptor Corruption: The 18-byte USB descriptor packet gets corrupted due to cable quality or EMI, causing the "request failed" message.
How to Diagnose (Manual)
Check 1: Inspect USB Controllers in Device Manager
Get-PnpDevice -Class USB | Where-Object {$_.Status -ne "OK"} | Select-Object Name, Status, InstanceId
Expected output if problematic:
Name Status InstanceId
---- ------ ----------
Unknown USB Device Error USB\VID_0000&PID_0000\...
Check 2: Check USB Hub Power Limits
Get-PnpDevice -Class USB | Where-Object {$_.FriendlyName -like "*Hub*"} | Get-PnpDeviceProperty -KeyName "DEVPKEY_Device_PowerData" | Select-Object Data
What you're looking for: Power consumption exceeding available power (e.g., 1000mA drawn from 500mA port).
Check 3: Examine USB Event Log
Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-USB-USBHUB3/Operational'; StartTime=(Get-Date).AddHours(-1)} | Where-Object {$_.Message -like "*descriptor*"} | Select-Object TimeCreated, Message
Look for: "USB Device failed enumeration" or "descriptor fetch timeout".
Step-by-Step Fix
Method 1: Disable USB Selective Suspend (Immediate Fix)
- Right-click Start → Power Options
- Click Additional power settings (if you see modern settings)
- Click Change plan settings → Change advanced power settings
- Expand USB settings → USB selective suspend setting
- Set On battery and Plugged in to Disabled
- Click Apply → OK
Method 2: Update USB Controller Drivers
- Device Manager → Universal Serial Bus controllers
- Right-click "Intel USB 3.0 eXtensible Host Controller" or "AMD USB 3.0 Host Controller"
- Select Update driver
- Choose Browse my computer for drivers
- Select Let me pick from a list
- Choose the latest version (not Microsoft default)
Method 3: Uninstall and Re-scan USB Controllers
# Run as Administrator
Get-PnpDevice -Class USB | Where-Object {$_.Status -eq "Error"} | Disable-PnpDevice -Confirm:$false
Start-Sleep -Seconds 2
Get-PnpDevice -Class USB | Where-Object {$_.Status -eq "Error"} | Enable-PnpDevice -Confirm:$false
Method 4: Registry Fix for USB Descriptor Timeout
Create a .reg file:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBHUB3\Parameters]
"DeviceIdleTimeout"=dword:00000000
"EnumerationRetryCount"=dword:00000003
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags]
"IgnoreHWSerNum"=hex:01
What this does:
- Disables device idle timeout that causes premature sleep
- Increases enumeration retry attempts from 1 to 3
- Ignores hardware serial number mismatches (common with cheap cables)
Method 5: USB Root Hub Power Management
- Device Manager → Universal Serial Bus controllers
- Right-click each "USB Root Hub" → Properties
- Go to Power Management tab
- Uncheck "Allow the computer to turn off this device to save power"
- Repeat for ALL USB Root Hubs (usually 4-6 of them)
How Againly Diagnoses This Automatically
Againly runs check_peripheral_usb in 0.5 seconds and detects:
- USB descriptor fetch timeouts in USBHUB3 event logs
- Power consumption exceeding port limits
- Driver signature validation failures
- Intel/AMD USB controller firmware version mismatches
Instead of guessing, it shows: "USB 3.0 hub at Port 3 drawing 1200mA from 900mA port. Disabling selective suspend and updating controller drivers."
[CTA: Try free diagnosis]
Prevention
- Use powered USB hubs for external HDDs and high-draw devices
- Avoid cheap USB extension cables — they cause signal degradation
- Keep Intel/AMD chipset drivers updated — USB controller firmware is bundled here
- Use USB 2.0 ports for low-bandwidth devices (mice, keyboards) to free up 3.0 power budget
FAQ
Q: Why does the device work on my laptop but not desktop? A: Laptops often have better power management on USB ports. Desktop front-panel USB headers may be underpowered.
Q: Will a USB hub fix Code 43? A: A powered USB hub (with external AC adapter) usually fixes power-related Code 43 errors.
Q: Is my USB device broken? A: Probably not. Try it on another computer. If it works elsewhere, it's a Windows driver/power issue, not hardware failure.
Q: Why did this start after Windows Update? A: Windows updates often replace manufacturer USB drivers with generic Microsoft versions that have bugs. Roll back the driver if this happens.
Related: Bluetooth Mouse Disconnecting Randomly Windows 11 Fix | Wireless Keyboard Lag Typing Windows 11 Fix
