I just updated to Windows 10 and discovered that Microsoft broke this method of adding a fake second monitor: Is there a way to fake a dual (second) monitor which I rely on for scaling some small programs to full screen with OBS. The "Detect" button in Control Panel seems to do nothing, and the "Detect" button in Settings simply says a display was not connected.
Is there any way to force Windows 10 to think there's a display connected on VGA without extra hardware or paid software? I'm using a laptop with an NVIDIA 970M with HDMI, VGA, and DisplayPort out.
What I've tried:
- The "My display is not shown..." option in the NVIDIA Control Panel, which won't let me add anything and only has options for televisions
- SpaceDesk, which almost works except that my real display is bumped to #2, and requires a client to be connected
- DemoForge Mirage/ZoneScreen, which also require a connected client and are somewhat unstable on recent versions of Windows
- VirtualMonitor which I think is almost what I want, but isn't compatible with Windows >7 and has some compatibility issues (?)
Note that I am not looking for Virtual Desktop software, and I don't need anything as fancy as Matrox PowerDesk or Virtual Display Manager.
47 Answers
This is by far not the ideal solution, but for now it will do: I put a 102 Ohm resistor across pins 2 and 7 of my VGA port (also known as the headless Mac Mini trick), and Windows 10 now believes I have a second monitor attached.
On a different computer I had to use pins 1 and 6 and reboot before the "monitor" would work.
3Just spent last two hours trying to figure this out.
- First go to Control Panel (not Settings app)
- Go to Adjust Screen Resolution. You will get a similar window as you did in Windows 7.
- Click Detect
- Go to display Drop Down and select "Display Device on VGA"
- Select Desired Resolution. If windows is unable to save your settings use the software from your video card to adjust the resolution.
- If you aren't able to output the display to the Fake screen only, Press Windows+P and the select "Second display only"
I hope this helps.
6I had the same problem and came up with a fairly simple solution: Just connect your primary screen twice. Most displays have 2 inputs and you just need another display cable to connect it.
A fake software driver wouldve been more elegant and less power consuming but this works fine too :)
1The so-called "elegant" software solution:
Apparently, custom resolutions can be set up in the registry somehow. Instead of messing with it, I used CRU, (Custom Resolution Utility), a free software package did the trick.
After messing around with the standalone program for a few minutes, it did what I wanted. Then I messed it up, played with it some more without reading the instructions and it worked even better.
I needed a dual monitor solution for SplashTop without an extra monitor. I also needed to boost the resolution from 900p to 1080p.
I temporarily plugged into the second monitor port, then used CRU. Then I realized how bad SplashTop's dual monitor support is, and wanted to go back to one.
So unplug the second monitor connection, right? Nope. The second virtual monitor persisted anyway. So I deleted it in CRU, which Windows respected. CRU had it wrapped around its finger.
The remote host chugs along at a decent little 900p, which looks tiny and/or fuzzy on my bigger screen.
Thanks to CRU, I'm logged in at 1080p on my local end. Which means no sitting next to the noisy graphics card and air cooling.
Still no dual monitor capability for my GPU-accelerated remote desktop, so I'll probably need a second piece of software (remote desktop/logmein) just to transmit the second virtual monitor CRU gives me. Haven't figured out that part yet.
Privacy concerns aside, Windows 10 Enterprise with its Remote Desktop FX seems to have that figured out. Performance looks pretty darn good, too.
You could call that elegant if you want.
xperia64's answer notes that putting a resistor between 2 of the VGA pins works, but the pins can differ from machine-to-machine.
From the VGA pinout, it can be seen that connecting 1 & 6 connects red to red-ground, and 2 & 7 connects green to green-ground. On my system, it was required to connect 3 & 8 (blue to blue-ground) to get this to work.
So, it seems like an all-encompassing solution would be to connect resistors between pins 1 & 6, 2 & 7 and 3 & 8.
The resistances don't seem to matter too much. The spec says 75 ohm, but anything in that ballpark seems to work. (Too low could risk damage, too high it might not detect.)
I found this forum post which provides a link to a pre-built driver which adds up to 4 virtual displays. As far as I understand, it's a free part of a paid software named Amyuni USB Mobile Monitor.
So:
- Download and unpack somewhere, preferably without spaces or non-Latin characters. Its SHA256 was
629b51e9944762bae73948171c65d09a79595cf4c771a82ebc003fbba5b24f51for me, and VirusTotal sees nothing immediately wrong. - Start command line in the directory you've just unpacked.
- Run
deviceinstaller64 install usbmmIdd.inf usbmmidd(on 32-bit systems usedeviceinstallerinstead) as an Administrator to install the driver. - Run
deviceinstaller64 enableidd 1to enable an additional display. It's 1920x1080 by default, but other resolutions can be configured in the driver.
They even provide additional instructions in a idd_instructions.txt file inside as well as uninstall commands.
There is also a Windows 10 Only! warning, so it may not work on Windows 11.
On Windows 10 second display can be added by pressing Win+P and selecting needed option in the appeared panel at the right side of the desktop.
I have only one real display, but I can add another one using Win+P.
5