STATUS_GRAPHICS_TARGET_ID_MUST_BE_UNIQUE (0xC01E0332) Fix
This DirectX error means two video outputs share the same ID. Usually caused by a bad monitor detection or a broken GPU driver.
Cause 1: Stale GPU driver or adapter state
What's actually happening here is the Windows Display Driver Model (WDDM) kernel — dxgkrnl.sys — has cached a stale list of video present targets. Each GPU output (HDMI, DisplayPort, etc.) gets a unique target ID when the driver loads. If the driver's state gets corrupted (say, after a monitor hot-plug, a sleep/resume cycle, or a failed driver update), two outputs can end up with the same ID. The kernel then throws 0xC01E0332 when an app tries to set a mode on a duplicate target.
The most reliable fix is to force the WDDM stack to rebuild its target table from scratch.
Fix 1: Clean reinstall the GPU driver
- Download Display Driver Uninstaller (DDU). Use DDU, not the normal uninstaller — the normal uninstaller leaves registry keys that keep the broken target IDs.
- Boot into Safe Mode (hold Shift while clicking Restart).
- Run DDU, select your GPU vendor (NVIDIA or AMD), and click “Clean and restart.”
- After reboot, install the latest driver from the vendor's site. Skip Windows Update drivers — they're often stripped of the control panel components that reset target tables properly.
- Reboot once more. The kernel now assigns fresh target IDs.
If the error reappears after the next sleep cycle, the fix below might be your real solution.
Cause 2: Corrupt monitor EDID data
Each monitor reports an Extended Display Identification Data (EDID) block that tells the GPU its supported resolutions and a unique serial number. When two monitors report the same serial (common with cheap KVM switches or identical monitor models on older firmware), the GPU driver can collapse them into one target. Then any direct mode-set call hits the duplicate ID error.
Fix 2: Force re-read of EDID via registry
- Open Device Manager (Win+X → Device Manager).
- Expand “Monitors.” Right-click each monitor entry and select Uninstall device. Check “Attempt to remove the driver for this software.” Do this for all entries.
- Shut down your PC completely. Don't just restart — a full shutdown clears the ACPI device state that holds the old EDID.
- Power on. Windows re-enumerates monitors and re-reads EDID from each display. If two monitors still collide, you'll need to override EDID manually.
EDID override (advanced)
This forces a unique target ID by injecting a fake serial number.
1. Extract EDID using Monitor Asset Manager (moninfo.exe).
2. Open the .dat file in a hex editor.
3. At byte offset 0x0C (4 bytes) — this is the serial number. Change one byte (e.g., 0x01 to 0x02).
4. Save and install via Device Manager → Update driver → Browse my computer → Let me pick → Have disk.
This is a last resort. Usually the clean reinstall in Cause 1 resolves it.
Cause 3: Broken monitor hardware or cable
Less common, but a flaky DisplayPort cable can cause the GPU to see a target ID toggle on and off rapidly. The WDDM kernel assigns a new ID each time the cable connects, and if it toggles fast, two IDs land on the same target. The error pops immediately when you plug it in or wake the system.
Fix 3: Swap cable or port
- Try a different cable — especially if you're using a DisplayPort cable longer than 3 meters or a cheap HDMI 2.0 cable for 4K. Active cables (with a signal booster chip) can mask the issue but don't fix it — replace with a certified cable.
- Switch to a different GPU port. If your card has multiple HDMI ports, try the other one. The error won't follow the monitor; it follows the port's physical path in the GPU.
- If you're using a KVM switch, remove it from the chain. KVMs often mangle EDID or create timing issues that trigger duplicate IDs.
Quick reference summary
| Root cause | Fix | Time |
|---|---|---|
| Stale driver state | DDU clean reinstall | 15 min |
| Corrupt EDID | Uninstall monitors in Device Manager, full shutdown | 10 min |
| Bad cable/hardware | Replace cable, avoid KVM | 5 min |
Was this solution helpful?