Fix your TV/monitor HDMI: Force a digital output signal on nVidia drivers
Door: switchboy op: 2016-12-30, 16562 views
The nVidia drivers offer a hidden feature that forces output to ports, even if no monitor on that port can be detected. This can be very useful if your monitor or input or cable is defective. Or if your monitor accepts both a digital or analog signal trough the DVI cable but you want to force a digital signal.
With this little trick I am able to continue to use my Phillips television in combination with my media center pc. The HDMI ports on the television set are broken in such a way that they still work when a signal is provided. But the TV is not detected by other hardware because the chip that does the HDCP and other handshakes is broken. This means that the graphics card doesn’t detect a monitor on the port the TV is connected. Nor does it know what kind of signal to send. But if a signal is sent the picture is displayed in al of its glory.
So first off we need to send a digital signal from that port regardless of the graphics card detecting a monitor or not. This can be done with the following trick I found on an obscure TechTips blog:
Start regedit. (You need administrator access under Windows 7, 8 or 10.)
Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video
Under Video you'll see a number of sub-folders with long names like {B1E0FF3B-2B31-4B0D-8B9C-B09BBB60CB07}. Each of those has a sub-folder called 0000. Most of the 0000 folders will be nearly empty, but one of the 0000 folders contains hundreds of entries that have names of programs in them (e.g. _3DMark05.exe, playNow.exe, etc.). Find that one.
In the 0000 folder you found in the previous step, right-click, and from the context menu, select New, then Binary Value.
When the new key is created, change its name to DevicesConnected
Right-click on the new key and click Modify...
A dialog box will pop up that says "0000" -- it's waiting for you to type data.
Type the following keys acourding to your specific configuration:
2x digital monitors -> "00 00 03 00" (0x30000)
2x analog monitors -> "03 00 00 00" (0x3)
digital/analog -> "02 00 01 00" (0x10002)
analog/digital -> "01 00 02 00" (0x20001)
Although I have only my TV connected to this PC I used the first one "00 00 03 00"
You can disable the unused "monitor" later by not cloning or extending your desktop to that screen.
Click OK, exit RegEdit and reboot.
Source: Techtips
So now we have a digital signal and if nothing else is wrong you should see a digital picture being displayed on the monitor. The signal will remain digital after every reboot until you either remove the registry entry or update your nVidia drivers. So save/bookmark this page in case you ever need te redo the above!
If you have a defective monitor like me you have another couple of steps to go through to get the output signal exactly right. Because the HDMI chip on my TV was defective and HDCP handshakes didn’t work anymore the graphics card doesn’t have any information about the specifications of the monitor connected.
This meant that the digital signal that was being produced was a “safe mode†signal. Which had a resolution of 800*600 pixels with a 60Hz refresh rate. Yikes! But at least I had something to work with. Luckily the nVidia drivers also allow the user to add and force custom resolution signal encoding and refresh rates.
This can be done through te nVidia ControlPanel. Under “Display†select “Change resolutionâ€. Here you will see a list of all available resolutions. In my case only the safe mode resolution is available. However you can add more. Under the list there is a button labeled “Customizeâ€. Here you can add custom resolutions. This required some trial and error but eventually I got my TV to display a 1920*1080 pixel 60Hz progressive 32bit signal with DMT timings. Eureka!
After I knew that the TV would accept and display digital signals I also managed to get the cable set up box to work again. I managed to do this by running the HDMI cable through the cheapest HDMI splitter I could find. This works because instead of the TV giving a handshake to the set-up box the splitter has it’s own handshake. So the set-up box will output a signal.
Now the tricky bit here is that you have to get a cheap splitter. This is because internally these splitters split a DVI signal and not a HDMI signal. This bit is important because a HDMI signal form the set up box requires HDCP on the receiving end, but the DVI + audio signal from the set-up box does not. This will probably only work on “older†set-up boxes that are capable of falling back to DVI. But because most cable companies are very cheap and still use old and slow set-up boxes it will probably also work for you.
So in conclusion thanks to some hidden driver feature I am still able to use my otherwise broken TV by forcing an output signal I know the TV must accept. So sometimes it is worth experimenting a bit with different signals/settings before throwing expensive hardware with a small defect away. I also found out that this HDCP/handschake chips is prone to breaking on a lot of different TV models and brands, so this trick is worth giving a shot when your TV suddenly stops displaying HDMI signals.
Volgende en vorige item:
How to get the most out of your Chromecast: get around restrictions to get local files playing
How to fix Google Chromecast audio multicasting only playing on one device
0 reacties