Skip to content

DEVICE MANAGER ERROR · CM_PROB_FAILED_ADD

Code 31: Windows Cannot Load the Drivers for This Device

Windows found the right driver but the driver failed at the moment Windows asked it to take charge of the device. The driver is installed; it just did not accept the device.

WHAT WINDOWS SHOWS

This device is not working properly because Windows cannot load the drivers required for this device. (Code 31)

Wording from Microsoft's documentation for CM_PROB_FAILED_ADD. Device Manager shows it on the General tab of the device's Properties.

TECHNICAL SUMMARY

Code31
Windows nameCM_PROB_FAILED_ADD
Where you see itDevice Manager > the device's Properties > General > Device status
In Tweaky DriverNeeds attention

What causes Code 31

  • The device's function driver returned an error from the routine Windows calls to add a device to it (Microsoft Learn).
  • For drivers built on the Windows Driver Framework, Microsoft notes the error can come from the driver's device-add callback; the ProblemStatus property records the exact error.

How to fix Code 31, safest step first

The steps follow Microsoft's recommended resolution for this code, in its order, with a reversible step first. Each one says how to put back what it changed.

  1. Before you change anything: note the driver and make a restore point

    Open the device's Properties > Driver tab and write down the driver provider, date and version. Then select Start, type Create a restore point, open it, and on the System Protection tab choose Create. Microsoft notes that System Protection is not turned on by default; if Create is greyed out, choose Configure and turn it on for the system drive first.

    To undo: A restore point changes nothing by itself. To go back later, run System Restore and pick it: Microsoft says it reverts system files, the registry and installed programs, and leaves your personal files alone.

  2. If it started after a driver update, roll the driver back

    In Device Manager, right-click the device, choose Properties, open the Driver tab and select Roll Back Driver, then give a reason and confirm. Microsoft notes that you need administrator rights, and that going back to the previous driver often fixes a problem that appeared after an update. The button is greyed out when Windows kept no earlier driver for the device.

    To undo: Rolling back is the undo for the update. To return to the newer driver, install it again with Update driver or from the manufacturer's package.

  3. Update the driver (Microsoft's recommended fix)

    In Device Manager, right-click the device, choose Update driver and let Windows search, or point it at a driver you downloaded from the hardware manufacturer. Microsoft's own tip is that Windows Update is the usual way drivers arrive.

    To undo: Open the device's Properties > Driver tab and choose Roll Back Driver, or apply the restore point.

  4. Uninstall the device, then scan for hardware changes

    In Device Manager, right-click the device and choose Uninstall device, confirm, then choose Action > Scan for hardware changes (or restart). Windows detects the device again and installs a driver for it. Keep the manufacturer's driver package to hand first: Windows may ask for it if it has no driver of its own.

    To undo: If Windows puts back a driver you did not want, use Roll Back Driver when it is offered, or install the driver you kept. The restore point from the first step brings back the whole driver configuration.

Check it yourself

  1. List every device with this code (Command Prompt or PowerShell)

    Available from Windows 10, version 1903. Each device is listed with its instance ID and the problem code with its name, CM_PROB_FAILED_ADD. No administrator rights needed; nothing is changed.

    pnputil /enum-devices /problem 31
    cmd
  2. Or with PowerShell

    Device Manager shows the same code on the General tab of the device's Properties, in the Device status box.

    Get-PnpDevice | Where-Object { [int]$_.ConfigManagerErrorCode -eq 31 } |
      Format-Table Status, Class, FriendlyName, Problem
    PowerShell

What Tweaky Driver does with Code 31

Needs attention

Tweaky Driver lists a Code 31 device under Diagnostics > Devices as Needs attention, with the note that Windows could not load a required driver and that the driver and any recent changes are worth reviewing. It does not offer drivers to a device in this state: its sources only offer drivers to devices that work or have no driver at all, and its repair offers through Windows Update cover Codes 10 and 43 only. Nothing on the device is changed.

Tweaky Driver, the driver checker that shows its sources — free for Windows 10 and 11.

Common questions

Is Code 31 the same as a missing driver?

No. With Code 28 there is no driver installed. With Code 31 the driver is installed, but it failed when Windows asked it to add the device.

Why does my network adapter show Code 31?

The code means the adapter's driver failed to add the device. Roll back if it started after an update, then update the driver as Microsoft recommends, using the adapter or PC manufacturer's package.

Does reinstalling the same driver help?

Sometimes, if the installed copy is damaged. If the same version fails again, a different version, older through roll back or newer from the manufacturer, is the next thing to try.