hdmiOn – a solution to loss of DVI video EDID signal on HD TVs

The last few days I have been pulling my hair out over my new HD TV not working with my Home Theatre PC, specifically when switching from HDMI input to TV and back again. The HDMI signal is lost and can only be reset by either rebooting the PC or unplugging and replugging the HDMI cable.

This problem seems to affect ATI video cards only, with NVIDEA updating their drivers to fix this. ATI states that Catalyst drivers at version 7.3 or higher have fixed this problem, but that wasn’t the case for me. A Google search for ati hdmi edid shows a number of users with the same problem.

Hence, I present to you my solution; hdmiOn.
hdmiOn is a tiny program that turns the monitor off and on, which resends the EDID data bringing back the TV to life. Suggested usage is to assign the program to a function or hotkey.

Program was tested on my Sony BRAVIA KDL46X3100 with a ATI HD 2400 PRO.

Download hdmiOn.exe

As requested, source code as follows;

#include

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
	// Turn off monitor
	SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) 2);
	// Turn on monitor
	SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) -1);

	return 0;
}

Update July 2012
In order to stop the ongoing false positive detections, I have ported the program from C to VB6. It should function exactly the same, but let me know if there are problems.
Source code as follows;

Private Const HWND_BROADCAST = &HFFFF&
Private Const WM_SYSCOMMAND = &H112&
Private Const SC_MONITORPOWER = &HF170&
Private Const MONITOR_ON = -1&
Private Const MONITOR_OFF = 2&

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" ( _
    ByVal hWnd As Long, _
    ByVal wMsg As Long, _
    ByVal wParam As Long, _
    ByVal lParam As Any) As Long

Private Sub Main()
    SendMessage HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF

    SendMessage HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON
End Sub

Update August 2012
I have had a user report that the new version doesn’t function the same, I have uploaded the old version, it can be downloaded here;
hdmiOn (old version)
Zip password is “hdmiOn” (capital O)

  • jc

    Brilliant. Works perfectly. Had the exact same problem as you, this solved it. I am indebted to you, kind sir.

  • Shade

    Perfect! Worked like a charm with my Samsung + ATI 790GM. Placed hotkey on shortcut and added command on Run menu of M.Play Mini.

    Cheers!

  • Zodite

    Wow , just wow. the tool works great.

    You sir, are the man.

  • ravingez

    Hello this sounds fantastic but I’m assuming the above exe is windows only. Don’t suppose there is a similar mac solution is there?

  • thydzik

    ravingez,

    Unfortunately only for Windows. I don’t know much about Macs.

    The program essentially powers off the monitor and powers it back on, so find out how to do that on a Mac and you’re set.

  • Austin

    Hi

    Thanks for this nice solution..I was crazy for this problem and this littlebit or far better for me now .I always lost my TV signal after i turned ON.

    But here with this i have one question :
    I created one shortcut of this Desktop and Hotfix Ctrl+Alt+1
    but problem is all the time i click it shows one Popup Run .exe for this software..if someway i can get rid of this i mean after i click thr not gonna be Popup any Run or Cancel all the time

    Any help would be highly appriciated

  • thydzik

    Hi Austin

    I am assuming by popup you mean the Window’s command prompt that appears for a brief second. This can’t really be removed (more, I don’t know how to).

    Why is it a problem though? You really shouldn’t even see the command prompt as your TV will still be turning on.

    Unless, when you are running it the command prompt doesn’t go away?

  • Austin

    Thanks for Quick Reply
    But this is not Command promt When i click Desktop shorcut Popup Shows like this :

    Open File..
    The Publisher could not be verified.Are u sure u want to Run this program??

    Name:D:\Utilities\hdmiOn.exe
    Publisher:Unknown
    Type:Application
    From:D:\Utilities\hdmiOn.exe

    RUN Cancel

    Thn i have to click Run to run exe all the time.I think im doing something wrong…….Coz i think i need to click only Shortcut or Hotfix thn it should be automatically turn ON or OFF Monitor i dont need to run .exe file all the time.

    P.S: Im using Vista Ultimate 64bit and my UAC is Off

  • thydzik

    Austin,

    That looks like a generic program execution message. I haven’t had any experience with Vista, but have briefly searched Google and found a few solutions that may work (best searching yourself)

    How to disable the message: The publisher could not be verified. Are you sure you want to run this
    http://www.winvistaclub.com/t22.html

    publisher could not be verified
    http://forums.msdn.microsoft.com/en-US/vbgeneral/thread/15c12a31-5511-4854-af24-dc0820948cbd/

  • Austin

    Thanks …….this works ….

  • Luca

    Hello,
    thanks for the program

    I don’t know if you can answer me, but I’ll try:

    this problem happen with dvi-hdmi cable (dvi for pc, hdmi for tv).
    if I use hdmi-hdmi (I also have an hdmi port but not that cable) will I resolve the problem? or this problem is both dvi-hdmi and hdmi-hdmi?

    thanks

    Luca

  • thydzik

    Luca,

    hdmiOn should work with hdmi-hdmi and dvi-hdmi if connecting from a computer with Windows to a TV.

  • Luca

    thanks for reply,
    but my answer was:
    if I’ll use an hdmi -hdmi cable, will my tv works right or I have still to use hdmion?

    thanks again

  • thydzik

    quite an ambiguous question.

    but I will say, I have a hdmi to hdmi setup, and still need to use hdmiOn.

  • Luca

    thanks again for the information

    sorry for my english but I’m italian :)

  • Sky

    My LCD is currently having technical problems. The signal from the computer is gone and even though the computer’s up and running no signal. I’m running windows vista, I do have a nvidia graphics card. You think it could be the graphics card? I’m not really sure how this program works. Can you give me some more details please? How could I get my tv computer monitor to work when the signal is already lost?

  • thydzik

    Sky,

    Do you ever get a display from the computer on the LCD?
    If you do, does running hdmiOn return the signal?

  • Ben

    Hey, thanks for this. I don’t have a problem with the picture no appearing but the audio disappears when changing input on the TV. Panasonic 42″ Full HD (not sure of the model).
    I’ve mapped it to the music note icon on my DiNovo mini (quite appropriate really) and it works a treat!!!
    My problem also appears when I resume the HTPC from standby before switching on the TV, it seems the HTPC needs to be receiving a signal from the TV or it won’t pump the sound through HDMI. Do you know if there is anyway I can automatically run this program whenever the HTPC resumes from standby, then it wouldn’t matter which order I turn things on – the reason I ask is this HTPC is going to my sister so I want it to be a functional as possible.

    Thanks!

  • thydzik

    Ben,

    Try changing your power settings so that when it goes to standby the monitor also turns off. When you wake up from standby the monitor-on signal should bring back the signal.

    Else, not too sure about running a program from standby.

  • Richard

    Thanks so much for this. it’s a great utility but I really hope that one day I can delete it… I think it will take a firmware upgrade so I’m not holding my breath. Cheers.

  • JK

    THANK YOU THANK YOU THANK YOU. I have a Sharp 32″ 1080p which I’m using as a monitor, and I want to turn it off occasionally while defragging, etc. When I turn it back on, my ATI Radeon x850 does not handshake/recognize the HDTV even though I’m using the DVI input instead of the HDMI. I just have a hotkey set to HDMIOn.exe so when I turn the TV back on, I hit the hotkey combo to run the program and it works PERFECTLY!!! Thanks!!!!

  • Nelson

    The utility is great. However, I come across the problem to run HDMIon when it’s logged off or timed out to the logon screen. Could someone share how you overcome this situation? Is some special tool required to invoke the utility?

  • thydzik

    Nelson,

    That’s a good point, didn’t think about that one as I don’t lock my media computer,
    try setting your computer to power off the monitor every time the computer locks or times out, i.e. the same time delay.

    You may be able to bring back the video signal automatically.

  • Flamage

    Is there some way to modify the utility so that it can detect the reconnection of the display and issue the reset automatically? Or it could poll the display for a connection say every 10 seconds, which should be pretty fast, and in the case that the display isn’t connected it could issue a reset automatically – this could work although I don’t know whether issuing a reset frequently could cause problems for the OS, driver or the GPU itself.

  • Nelson

    Thydzik,

    Thank you for advice on workaround.
    I could power off monitor by setting a timeout.
    But I am not aware of option to power off monitor when windows switches to logon screen. Is it a third-party tool?

    As I usually use remote-desktop to control my htpc, but remote-desktop would result in window logoff, I end up in trouble….

  • thydzik

    Nelson,

    I didn’t realise the locking was caused by remote desktop, I assumed you had it enabled when it went to screensaver.

    have a look here
    http://windowsitpro.com/article/articleid/14918/how-can-i-configure-monitor-power-off-for-the-logon-screen.html

  • Nelson

    Wow, amazing. It works! Thx for sharing.

  • pasi

    Outstanding! Works perfectly with my Sony KDL-40W4000 and Asus EAH3650 SILENT (in 1080p mode). I’m using the second HMDI port (with an eBay aquired ATI gray dongle, to get sound over HDMI). ATI needs to fix some things with their products, but that’s another matter. >:-[

    … thanks for this fix!!!!

  • fabian

    I have a receiver between the htpc and the tv and have the same problem. Has anyone gotten this to work with a receiver? no luck for me!

  • Eric

    Works perfectly! Dell computer Toshiba 32AV500U TV

  • Mark

    Awesome! After months of trying different drivers, and different help
    lines finally I have a workable solution.
    DVI_HDMI cable, ACER LCD Tv.

  • tom

    Can this program be used to keep the dvi output always on to the last known display configuration regardless if tv/receiver is turned on/off or input switched? That is, so the tv is always visable (either as enabled or disabled) as a display option in CCC. Similar to the S-video TV out which always seems to be on.

    This would be like the hardware equivalent, Gefen DVI detective.

  • thydzik

    No, this program is designed for manual operation only.

    Constantly cycling the program would cause the TV to flicker.

  • Jeff

    just wanted to say this program completely solved my problem and thanks a ton for creating it

    much respect

  • Jared

    I was very excited to see this program. Unfortunately, it didn’t work for me!

    Setup:
    9800GTX+ with DVI>HDMI cable
    42″ Viore Plasma TV

    If I restart the computer with the TV on, the nvidia control panel sees the TV and I can set everything up just fine. After I turn the TV off and back on (even if I leave the PC on) the TV gets no signal. It still shows up in the NV control panel, but no matter what I do (change res, change color profile, run hdmiOn, etc.) the TV does no get a signal. The ONLY way for me to refresh the signal is to jiggle the HDMI connection on the TV end. The TV then gets signal without issue.

    It’s not a cable issue, as the signal remains strong for hours of media watching on end. It has to be some kinda of EDID issue.

    Any suggestions? Thanks!

  • thydzik

    Jared,

    Not too sure. by jiggle I assume you mean disconnect?

    I haven’t had an experience with nvidia cards, so not too familiar.

  • Gil

    Any source code?

  • thydzik

    Gil,

    I have updated the post with source code. Enjoy.

  • Mark

    Hi,

    Thanks very much this, it works a treat!

    I was quite disappointed when I got my brand new monitor and had this issue. I’ll just have to make sure I can remember the shortcut keys I set for it!

    For the record, I am running an ASUS Extreme AX300, DVI to HDMI cable and an ACER P244w display.

    Cheers,

    Mark

  • Terry

    This executible works flawlessly! I found you through a search to fix the loss od EDID to my Sony KDL-46XBR5 from the PC. Thank you for this program, it saved me from buying a hardware solution! PRogrammed it as a button on the keyboard and all I can say is awesome!

  • midiman888

    I have ATI 4870 and had HDMI audio drop problem previously. I was able to resolve the problem by disabling the ATI external event, read below:
    http://www.avsforum.com/avs-vb/showpost.php?p=14338769&postcount=27

  • Kyle

    you sir are a gentleman and a scholar.

    – sony 40″ 1080p
    – HP s3600t
    – ASUS EAH-3450
    – Sony HT-CT100 powered speakers/hdmi switch
    Was intermittently losing signal when switching inputs. i dragged a shortcut, to your awesome app, to the first slot in the quicklaunches so that I can trigger by winkey+1. Works beautifully…. you just made my day.

    (Note: I use logmein from my laptop if all else fails… like stuck in lock screen)

  • hlkc

    Hi thydzik,

    Do we need to run this app every time when we switching the input source or just one time and that’s?

    If we need to run this every time, do you suggest to use ATI hot key?

    If just one time run, I assume we will have the resolution we want before double click your app, right?

  • thydzik

    hlkc,

    yes, you will need to run this app every time when switching back to HDMI input.

    I do suggest using a keyboard hot key, since you won’t be able to see the icon yet. What is ATI hotkey?

  • hlkc

    Hi thydzik,

    Let me tell you my story, recently I build a HTPC for my friend and it seems to me his EDID info screw up from suddenly reboot to previous choose resolution not stick… So I find your program and it looks like it will help and solve his problem.

    My question is how can I assign a hot key for example ALT F1 and by pressing these keys, it will run this program when he is switching from HTPC to TV? Is it before he attempt to switch it or right after or? He is using AVR to swap the source, between HTPC and set top box, how can he do that while he swapping the source using the AVR? The problem to us is we are not sure how to launch this program using the the hotkey AND while blinking the screen before the screen lost or reboot.

  • thydzik

    hlkc,

    okay, I think I understand. This program needs to be run after you select HTPC as the source.

    The easiest way to assign a shortcut key, is create a desktop shortcut to hdmiOn.exe, right click and select the shortcut’s properties. and you will see a textbox for short cut key, select it and press the shortcut key(s) you would like to assign it.

    hope this helps.

  • hlkc

    Thanks for the prompt response!

    As you probably know when it switches from one source to HTPC, the screen will flick and jump for few seconds, right? So if I understand you correctly, so we should assign a hot key to run your program as soon as after switch it back to HTPC, right?

    Sorry I just want to understand the logic/flow a bit before implement for him. Thanks.

  • thydzik

    hlkc,

    when you switch from one source to HTPC there will be no video, a black TV. to enable the video you will need to run hdmiOn. Since you can’t see the desktop due to no video, you will need to assign a hotkey.

  • hlkc

    Got it. What is the most people use here or simple way to set up a hotkey?

  • hlkc

    What do you think about this http://www.autohotkey.com/ ?

  • thydzik

    hlkc,

    Windows can assign hotkeys to shortcuts, as posted above

    The easiest way to assign a shortcut key, is create a desktop shortcut to hdmiOn.exe, right click and select the shortcut’s properties. and you will see a textbox for short cut key, select it and press the shortcut key(s) you would like to assign it.

  • Finally

    Thanks for this fix. Running my signal out of the DVI on my graphics card into HDMI(46″ Sony Bravia X series), and lost the signal when changing sources. This little beuty works fine for vista64,and if you have trouble finding how to hotkey the program,drag it into your quick launch bar and use the Windows key+corresponding number ( 1 for first icon,2 for 2nd etc.)
    Also,if your using a keyboard such as a g15,make sure the switch isn’t set to “game” when trying to press your windows key, it locks it out=D

  • Pingback: Losing video output on 8500GT video card HDMI port - AVForums.com

  • Richard

    Can I suggest that everyone having this problem post their details with the

    ATI Catalyst Crew Feedback

    http://ati.supportcenteronline.com/ics/survey/survey.asp?deptID=894&surveyID=486&type=web

    then maybe we’ll get a fix in a driver release.
    Cheers.

  • Sasho

    thydzik,

    thank you very much for providing the only solution currently working for me fixing this annoying problem!
    Do you think there is a way to hook this program to somewhere in Windows to be activated every time the monitor is going from sleep to active state? Maybe something related to Windows power management…

    Thanks again!

  • thydzik

    Sasho,

    hdmiOn essentially turns the monitor off and then on.

    going from sleep to active state is exactly the same thing and should bring back the signal.

  • barbo

    Hello.

    I have the same problem as everyone here.
    I have a Ati HD3870 and Sony LCD 32w400 connected on. First I have used HDMI ON (it works, but not allways), but then i found a solution. I just switched (from left to right) my connectors on my graphic card i now it works fantastic. I don’t need no HDMI ON. When i switch on remote control HDMI input i get picture from my PC rightaway. I hope I helped.

  • illadakilla

    User Account Contol in Vista gets in the way of making this a smooth operation. The file is great I must say. To get around UAC and make this a one click and done thing….right click the file and set it to run as XP on the compatibility tab……works like a charm…..now what do i do with all of these composite cables I piled up over the years? Thanks for the fella that made the file….such a simple things to make my day better!!!! You fixed the one gripe I had with my system.

  • daryl

    This didn’t fix the problem I was having with my ATI hd3450 and losing the hdmi audio when waking. I did find a fix via the Catalyst Control Center. By flipping the display and then flipping it back, the audio returned. I was able to map this to a hotkey in CCC, but it would be great to be able to make it a program that could be scheduled to run on wakeup. Any suggestions?

  • midiman888

    Daryl:

    Try disabling the ATI external event, read below:
    http://www.avsforum.com/avs-vb/showpost.php?p=14338769&postcount=27

  • nick

    Awesome – exact same TV and AMD 780G with onboard ATI graphics with the same problem – had a hacky change resolution script as a workaround for a few days before I found this – much cleaner – solution! thanks heaps.

  • DJMM

    Fantastic – you have my admiration sir!

  • Paul

    It looks like this will be useful as I am seeing this kind of issue.
    Do you know if it is because windows has the wrong/no edid data that the display is not working?

    The reason I ask is that I am considering extending your solution. If you detect coming out of standby you could implement the fix repeatedly until you see the correct edid data (one that you register when you first run the app). This would negate the need to assign a hotkey.

    I will likely have a play around to see what is going on, but if you already know then it would save me some time :-)

    Cheers,
    Paul.

  • thydzik

    Paul,

    Not too sure, but believe that the edid data is only being sent once.

    My solution is really basic as it only sends the edid data on execution.

    I don’t know the solution, so go ahead and play around. I think we would all be happy if there was some automatic solution.

    Travis

  • sonny

    i have this problem when i try to use the hotkey that i set for hdmion… my wireless keyboard does not work when i try to wake up my computer, so i have no way to run the hdmion, is there anyway to fix this? thanks

  • SM

    Viore TVs

    I’ve had a huge issue w/my viore tv, and have found a way or two to mickey mouse it…

    1) Have your DVI connection connect up to your computer’s LCD, unhook the cable and carefully plug it directly into the TV (it appears if you even jiggle it a little bit, and don’t go straight in, it’s trying some kind of signal reset and will fail, you’ll have to start over)

    2) Get a DVI cable splitter you hook into the back of your system… bring it up w/your DVI monitor… when up, hook in your VIOREs DVI connection, you can then either have the signal on two monitors or unhook your LCD’s DVI connection

    3) Pray they come up w/a solution for this! Been trying to figure this out for years!

  • Frank

    Still not fixed by ATI 8.12 drivers

    http://forums.amd.com/game/messageview.cfm?catid=260&threadid=95721&STARTPAGE=2&FTVAR_FORUMVIEWTMP=Linear

    Thanks for the only working fix!!!

    Frank

    P.S. ATI can get off of its corporate A** and fix this simple but annoying problem.

  • Alan

    What a great fix, you are the man !!!!!!
    I am 3 months into this problem dealing with both ATI and Sanyo, each of them passing the book. ATI had changed the card for me, and I had been a picked up another 52 ” inch tv to prove the problem existed on both sets
    I had made up a dummy VGA plug on advice that it needed a primary signal to be maintained. Thanks for making the program as a download and not only providing the source code, I was able to download it, place it in the 1st position of the quick launch bar which assigns Win Key + 1 as hot key.
    Thanks Thanks Thanks

  • phreich

    Thanks so much — this had been driving me to distraction as well. Set up a hotkey using my logitech itouch keyboard driver to execute this program and all is better. Thanks for sharing this simple but elegant solution. I wish ATI had addressed it (there latest driver as of 1/1/2009 doesn’t).

  • Carlos

    Guys, what about HDMI itself? my htpc has just HDMI and VGA. If my PC in on standby modus and the tv off, and the pc comes backs at night for a schedule task, it does not receives any signal from the tv an will automatically deactivate the hdmi output, leaving just the vga as active. When I come back next day and i start my PC i have to tell the ATI Catalyst to rescan the the displays (of course turning first the tv on and whose’s showing just a blue screen), then clone the display and finally removing the vga to just leave the hdmi as primary( like it should be for a HTPC in a living room)…. quite annoying… does the HDMIon solves this issue if the tv is off and the HTPC comes up?

    Thx to all

  • Adam Goodchild

    I have got a similar solution. All i do is set a Profile selection in ATI CCC, and assign this to a Hotkey. This way when my monitor has lost the signal, i can just say press Alt+Z and i get it back

  • rapucha

    That’s really a great tool. Thanks a lot.
    Helped me with 40″ Samsung and integrated GeForce 7050

  • Nicoolas_Doe

    Gread job!

    This problem bothered me since I have installed my old ATI x800GT on my PC. I still do not understand why ATI cannot solve this bug.

    But I am still little unsatisfied, because when I use this great utility I have to wait cca 30sec. for refreshing the screen. Do you have similar experience or does it refresh in a moment?

  • thydzik

    Nicoolas,

    No I don’t have the problem of having to wait 30 seconds for refresh; generally it is about 1 seconds max. I think it may be your TV/monitor having a long start-up time after power off.

  • Nicoolas_Doe

    thydzik,

    thank you for your response. The display start-up time is normaly about 2 sec. It must be another problem.

    I think, there is something wrong with starting the hdmiOn application. I set up hotkey via CCC or via Vista build-in hotkey (created desktop shortcut and assigned hotkey via properties). When I use the hotkey when the display is on, the hdmiOn works perfectly, but when I turn the display off, tab the hotkey, I must wait cca 40 sec. until hdmiOn turn the display on. Maybe there is a problem with starting the hdmiOn with display off.

    I have new HP w2408h display.

    http://h10025.www1.hp.com/ewfrf/wc/document?lc=en&cc=us&docname=c01182751&dlc=en

  • Nicoolas_Doe

    The bottleneck is definitely with starting the application. I selected the hdmiOn icon and pressed Enter key and there is different reaction time with the display on and off.

    Any ideas?

  • thydzik

    Nicoolas,

    Sorry, no ideas.

    What hdmiOn does is turn the monitor off and on, there may be a problem trying to turn the monitor off if it is already off.

    But if the monitor is already powered off, you don’t need to use hdmiOn as you can turn the monitor on via moving the mouse/keyboard.

  • Nicoolas_Doe

    But my problem (that is the reason, why I am using hdmiOn) is, everytime I turn the display off, it wont start until the EDID signal is send again.

  • Henk

    I also have that problem, my screen went to a very low resolution, wenn i shut down my Amp.
    I tried your little programm, but it will not fix it.
    The only thing i can do is a full reboot for my MCE.

  • Lawson

    This is source code for a C# console application alternative (in case anyone is interested):
    using System;
    using System.Runtime.InteropServices;

    namespace CycleMonitor
    {
    class Program
    {
    [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
    private static extern IntPtr SendMessage(IntPtr hWnd, Int32 Msg, Int32 wParam, Int32 lParam);

    [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
    private static extern IntPtr GetForegroundWindow();

    private const int MONITOR_OFF = 2;
    private const int MONITOR_ON = -1;
    private const int WM_SYSCOMMAND = 274;
    private const int SC_MONITORPOWER = 61808;

    static void Main(string[] args)
    {
    // Turn off monitor
    SendMessage(GetForegroundWindow(), WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF);
    // Turn on monitor
    SendMessage(GetForegroundWindow(), WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON);
    }
    }
    }

  • Fossicker

    hdmiOn.exe works a treat. I am very appreciative of this little app.
    I’ve got a PC running XP with a really old but working ATI FireGL DVI card. It’s connected to my Vizio VO37LF via DVI-HDMI cable (DVI out of the PC into HDMI on the LCD).
    Prior to hdmiOn, whenever I switched inputs on my Vizio VO37LF I would permanently lose signal to HDMI. I would have to try alt-f4 to restart the PC, or if that didn’t work I’d have to hard bounce the PC with the power button. The signal would come back as the PC booted.

    Now, I’ve got a hotkey set up so that whenever I’ve lost HDMI from my PC, I just press ctrl-alt-F9 to invoke hdmiOn.exe and the image comes back in less than a second.

    I had some trouble assigning a hot key to a shortcut pointing to hdmiOn.exe. I tried putting hdmiOn.exe in %systemroot% with a shorcut, I moved the shortcut around (desktop, toolbar) and finally ended up with this solution that works:

    1) plop hdmiOn.exe on the Desktop
    2) create a Shortcut
    3) set the hotkey
    4) verify the hotkey
    5) this is the /only/ way I could get the hotkey to actually work.
    6) to clean up the desktop a little bit, I was able to move hdmiOn.exe but the shortcut simply /MUST/ remain on the Desktop for my hotkey to work.
    7) how? after #4 above, move hdmiOn.exe to a location on C:
    8) take the new path to hdmiOn.exe and paste it into the shortcut on the desktop.
    9) move the shortcut to a corner so it’s out of the way
    10) the hotkey still works, but it all must be done in order.

    I have to tolerate a shortcut on my Desktop but that’s it.

    K

  • Richard

    Can anyone find a property that can be checked in the Widows or .NET API to check if the monitor is connected? Then a crude change could make the code loop and check the property every second or two to see if the screen is disconnected.

  • Ben

    I tried the suggestion of switching from one HDMI output on my graphics card to the other and that worked a treat!! Thanks for that suggestion however you were.
    I have an ATI HD3650 and SONY Bravia X 46″series.
    I guess one of the outputs is like a master or something??

  • KumbiaKid

    Great workaround! I had the problem with Vista Home Premium that every time I ran HDMION, either directly or from a shortcut, a new window was left open (minimised in the task bar if I ran from a shortcut). To get rid of that, I set up a 2 line batch file which I run from a shortcut. The first line is the full path to HDMION, the second line is “exit” (without the quotes). Now HDMION runs and completely disappears.

    I am in the process of submitting this problem to AMD/ATI. They have asked me to run a list of diags and attach the results to my submission. Everyone with this problem should do that. See Frank’s post above for the URL.

  • Alex

    This utility works like a charm with my X800XL and HP 2408 LCD via HDMI

  • daf123

    I have set up HDMION using a shortcut and hotkey. I have tested it and it works fine if I start up the TV first then the HTPC. However, if I start up the HTPC then the TV there’s no picture. If I then use the hotkey it reboots the HTPC!!!! I’ve tried different hotkeys CTRL-ALT-H, CTRL-ALT-M etc.

  • bs123

    I’m not sure if it was mentioned here….but turning off ati or amd external event utility service may solve a lot of these problems.

    it’s either ati external event utility service or amd external event utility service depending on what version driver.

    disable the service and reboot

  • floepie

    Thanks for this fantastic little app. This problem has been driving me nuts and will definitely sway in favor of nVidia in the future.

    The suggestion by bs123 above to turn off that service didn’t work for me unfortunately, but may for others.

    Can anyone provide a new link for ATI feedback or support? The one above is not monitored any longer, and I can’t seem to find an equivalent feedback form on their site.

  • bs123

    Well I’m still suffering from this issue. It pretty much makes my htpc unusable. I’ve filled out form on ATI/AMDs’ site for technical support. Awaiting a reply.

    Here is the link for ati tech support.
    http://emailcustomercare.amd.com/

  • squalo

    Hello!

    Have a similar problem and that has been 2 years!

    LCD 40

    DVI – DVI no image
    VGA – VGA screen

    Unfortunately I have no HDMI input!

    Hope that soon there shooting …

    regards

    squalo

  • bs123

    Everyone with ati graphics with this problem please fill out this form.

    http://support.amd.com/us/kbarticles/Pages/CatalystCrewFeedback.aspx

    Thanx

  • Craig

    Great solution works a treat on my shuttle HTPC, but i am trying to use it without a keyboard attached and just using a Shuttle PN31 remote control which does not have ctrl + alt keys.

    Do you know if it is possible to use one of the remote keys as a hotkey without the ctrl + alt. I have tried but can’t assign one of the keys at the moment.

  • Jeff

    Works, but I cannot access shortcuts when Media Center (windows) is running. Unfortunately, rewriting this to just send the HDMI on message every few seconds doesn’t get me what I need (which is a way to always have the screen be on, but with out it turning off it is is already working fine).

  • David

    I’ve had similar problems connected a ATI Radeon 9600 series to my Toshiba 32WLT66 using a DVI cable.

    What I’ve found is that older drivers enable me to switch between my PC and my cable box, and the TV is recognised when I switch back.

    Specifically the latest drivers ver 9.3 do not work, with or without the ati external event service running.

    I’ve rolled my drivers back to ver 6.11, and everything works fine.

  • dXsL

    just got this link from Sony support in Denmark. BTW: excellent help i got from a guy called Jens at sony! I’ve been struggling with this problem for some months which *occasionally* happened with my Sony 40W3000, but being unable to reproduce it every time, I kind of gave up. Great tip! If this works, I’ll name my next son after you! :D

  • Dan

    Works a treat, thanks so much!!

  • amirn

    I’m having the same problem, using catalyst 8.11 with hd4850.
    has ATI fixed this problem with later drivers?

  • JC

    How can you make this run on the secondary monitor?

  • KumbiaKid

    I’m back again after a number of months of happy use of hdmion.exe. See my post above regarding a batch file and shortcut that allowed me to run hdmion.exe and close the cmmand window automatically. Since I installed Vista SP2, hdmion.exe doesn’t seem to return control to my batch file. When I run the batch file, either directly or from my shortcut, the cmd window sits there waiting. If I press CTRL-C, and respond “N” to the “Terminate batch job Y/N” prompt, the batch job exits like it used to. Any ideas why suddenly himion.exe seems to fail to return control to the batch job?

    The batch file consists of only 2 lines: The first is the path to hdmion.exe, the second is “exit”.

    Thanks,
    KumbiaKid

  • KumbiaKid

    P.S. I just re-read the above and realised that it might not be clear that when I run the batch job, hdmion.exe runs, then the batch job hangs before it executes the exit statement.

  • Anubis

    I am also having a problem with HDMION.exe staying open and refreshing every like 5 mins on windows 7 x64 RTM.

    I just want it to do it once then close automatically.

  • Ozturk

    This is a very nifty utility. Rather than bind it to a hot-key, you can create a Windows task that runs hdmiOn when the machine wakes from sleep. Utterly painless.

    Task scheduler can execute a task based on Windows Events. The event for wake up is in the System Log under Microsoft-Windows-Power-Troubleshooter. The event ID is 1.

  • flop

    Hey, good news! This problem has disappeared it seems with the latest round of drivers, at least for me on W7 RC. Has anyone noticed this as well?

  • TR

    I am having a similar problem but with HDMI audio. If I turn on the HTPC before the TV, the HDMI audio is disabled. I tried your utility and the problem is solved!! Somehow the hdmiOn reset also initializes the audio capabilities of the TV.

    Thanks.

  • Jason

    @flop I just installed Windows 7 32-bit (clean install) and still have the problem had in XP. Since it was a clean install, maybe I need to install the latest drivers from ATI as opposed to what Windows 7 used automatically (3d graphics are working fine, so I wasn’t planning on updating drivers).

  • gHoul

    I have a gigabyte motherboard with built in ATI 4200 HD card. I use it for my HTPC the HDMI port only! I notice when I turn on the pc without the TV on first audio doesn’t work, when I unplug the HDMI cable and plug it back in CCC says “HDMI to DVI detected!?!?!” running HDMIon doesn’t fix the issue either, I need to shut down the pc and restart it with the TV on first. then audio is fine. I’m going to upgrade it to Win7 hopefully that will fix this bizarre issue.

  • Pingback: ATi driver support is still boring – robbo.com

  • Maarten

    Great little app, works like a charm! Thanks a lot :-)

  • Chris

    A quick note. I have sucessfully been runnning hdmiOn when my monitor won’t show the screen when I switch HDMI sources (xbox to pc). It works great. I am running win7 btw. I have since discovered that firing ctl-alt-delete has the same effect as hdmiOn. It’s possible that the task mgr menu screen that appears runs in a specific resolution and that is what brings the monitor back to life, whatever the cause, I just wanted to let people out there know that they can try a 3 finger salute as an alternative.

  • Paul

    Is there anyway to bind this tool to a key on my microsoft media center remote?

  • Mark

    Works a treat with my sony bravia / media portal setup. Switching between game console and media portal pc – to check the cricket score – now means I don’t need to reboot!

    Thanks mate! Appreciated.

  • Pingback: Loss of signal after resuming from standby. | theHTPC.net

  • George

    The perfect fix for the TV not powering back on! I trigger this using EventGhost with a simple call to run HdmiOn.exe when I select “Watch TV” on my Harmony remote. Thanks so much for making this and fixing the issue ATI apparently doesn’t want to!

  • GettingOutAlive

    I’ve written a little app called HdmiYo that adds the hot key binding to application and automatically does the EDID when the machine wakes up. Hopefully other may find it helpful.

    HdmiYo 0.1.0

  • salvag

    thank you very much

  • Robin

    Thanks for this little and very usefull app.. I’d like to use it with my Harmony remote too ! Hello Georges, would you precise me the plugin and event that you used with EventGhost to do it ?

  • http://www.greenwireit.com Paul Rausch

    Holy Crap! This is golden, I’ve been battling with issue on my second panel for months now.

    Thank You!

  • Graeme

    LG32lx2r hd was working fine with w7 on cq61, then after a round of updates, I just can’t get the laptop to recognise the tv and wake it up.

    It does though still see the tv using dvi – hdmion didn’t work here unfortunately so am still looking for help – ati 4200hd card.

    Cheers tho

  • Jim

    THANK YOU!!!! I had the same HDMI problem. I searched all over and finally found this site. The program works GREAT!! thanks a TON!!!

  • jaggerwild

    You don’t know what your talking about, as Windows 7 has EDID issues no matter if it’s ATI or Nvidia. You got band aid surgery going on here. this is a BS program, don’t load it!!!!!!!!

  • http://protonus.ws Protonus

    Anyone got any advice for a very similar issue? See here:
    http://www.experts-exchange.com/Hardware/Components/Video_Cards/Q_25742055.html
    thanks in advance!

  • Jack

    Hi there,
    it only will turn off and on my main screen not the secondary that plays up, unfortunately.

  • Longbow

    Hey, I’ve got a Pioneer VSX1019AH and the problem isn’t that the video drops out and doesn’t come back but the audio drops out of the Sounds and Audio Devices default device and will not return without a reset of the PC. Unfortunately this program does not help with my problem. :(

  • Sinister9

    I tried HDMIon and it did not work. I didn’t have this problem until I installed the nvidia drivers (nvidia has NOT fixed this issue in their drivers). Any other suggestions?

  • Longbow

    Out of interest, is there a way to reset the audio devices list?

  • yao

    I have the same video loss issue on my Bravia and ATI MX550 card.
    However the issue disappeared after I installed an LG BD player to Bravia.
    For weeks I used the PC on Bravia happily. Until one day I accidentally unpluged the DVI/HDMI cable and re-plugged in.
    The issue appeared again and I cannot get it good again….

  • jeff

    Onkyo tx-sr506, Gateway fpd2185w monitor, gigabyte gah57m-usb3 mother board = no fix. :(

  • jeff

    NOTHING HELPS MY PROBLEM. ive tried for months now. i dont get how there is no solution to this. withoiut my fucking ati drivers it doesnt happen, but after sleep mode i cant get a signal back to my fucking tv. FUCK/ email [email protected] if you know an answer and ill toss you a few bucks on paypal

  • http://[email protected] majohnson

    ok

  • T0TTE

    I have the same issue with my Asus EeeBox EB1501U with nVidia ION.

    Unfortunately neither HDMIONn nor HDMIYo, solves the problem.

    HDMI Detective? (pretty expensive though, and yet another gadget…)

  • David

    Thank you ! Fantastic solution.
    This solved a very annoying problem when running an HDMI TV. If you turned off the TV, or switched inputs the video card went to sleep and it required a full reboot with the TV left on to bring it back.

    Windows XP Pro, VGA Monitor on motherboard, HDMI TV from ATI Radion 7000 secondary video-card

  • Alex Kintner

    You, my friend, are a gawd-dam genius. Where is your Donate button? You saved me weeks of googling and probably $100+ for an unnecessary hardware connector. Thanks for this kool tool. It works like a champ.

    Notes:

    Helpful hint for other Muggles. To assign the hdmiOn to a Windows shortcut hotkey, make sure the shortcut is CREATED ON THE WINDOWS DESKTOP. The hotkey will not work if the shortcut sits in some arbitrary folder (learned this the hard way).

    I have a ATI Radeon X300. I installed ATI Catalyst 9.3.1 drivers which is the latest version for this card (now legacy support only). DVI port gets turned off when the display LCD power is turned off, then I had to reboot. ATI is full of it when they say they fixed this in drivers 7.3 or higher.

  • ex

    Cant get it to work with Sony Bravia KDL-32W5800 and NVIDIA GTX 460. I have to reboot the PC.

    -.-

  • Alain

    Same problem : black screen when i leave hdmi2 (PC) to another source (hdmi1,..).
    win7 / radeon 4850 /Sony KDL37W5720 / Samsung 23″
    Interim solution: “windows key”+ P

  • Alain

    Try “windows key” + “P” and cycle.

  • ex

    Doesn´t work.

  • Alex

    Guys, can anyone help with the following issue?
    I got Dell Studio 1535 laptop and ATI 340o series in it. It alwasy worked fine with my HDTV Phillips, yesterday I plugged it into friend’s Samsung Blue ray player hdmi port to watch a movie in his home through my computer and the when I got home my computer will not have its display on.. I can only work through my HDTV’s display.. my laptop’s display is in either sleep mode or just black/blank… How do I turn it back on? thanks in advance…

  • faazers

    why my Anti-virus say its a malware ?? n removes it ?? any idea ?? isnt is scary ?

  • http://thydzik.com thydzik
  • Don

    I have been going nuts trying to solve this problem, and “hdmion” is the answer. It took me a little while to figure out how to make the shortcut, but now I can turn off my tv while the computer is on, then come back minutes or hours later, turn on the tv, hit “ctrl-f7″ and I’m back in business. No more hard resets!
    Thank you!

  • pionyrek

    Hi everyone, I have a problem consisting in flickering and some “snow” from time to time. The PC is connected to the LCD panel through a Pioneer A/V. I’m using an ATI 5450 card. Do you think this pieces of software could help to solve this handshaking problem?
    Thanks

  • Melraidin

    Any chance this might resolve the same sort of issues under Linux, specifically Ubuntu/Mythbuntu? If so, any chance of a port?

  • Chacha

    Try “windows key” + “P” and cycle with TAB.

    Ok for me.
    W7 + ATI 4850 + Sony Bravia KDL-37W5720

    AMD & M$: shame on you.

  • http://www.va3ep.net Eric Pierce

    I had the “video goes blank when sources switched awaym then back with ATI card feeding Flat Screen TV via DVI => HDMI” problem too.

    Your hdmiOn.exe works like a charm!

    Thanks!

  • Samir Shah

    For me it was working well when I had Vista – as soon as I upgraded to Windows 7 it stopped working – any thoughts?

  • Pingback: HTPC-AVR-TV (HDMI) Funktioniert bei euch die Audioerkennung beim Umschalten ? - MediaPortal Forum

  • http://bimma.me.uk Joe90

    Thanks for this little program. I used it on my Car PC (Acer Aspire One / W7) to bring the screen back to life after waking from sleep. So not just for hdmi ;)
    Great stuff :)

  • http://www.charlesconway.com Charles

    Brilliant! Thanks for this tool. I built an HTPC from older components, and this blank screen problem was driving me nuts…

  • Gfhg

    This works very nice! shortkey assigned via properties from a shortcut to the program. ctr-alt+left arrow. thanks a lot

  • Neaptide91

    Thank you, I linked up an old xp to my Vizio HDTV, hdmi of course went off when switching between hdmi inputs. Installed this, set up hot key, installed autohotkey, wrote script to run hockey from wireless mouse, all works fine. I know i could run program direct but hotkey was faster to set up. Don’t need keyboard and can do all from couch.

  • Pingback: Wenn der (HDMI-)Monitor beim An- und Umschalten dunkel bleibt « Wissenswertes

  • The Doctor

    YOU ROCK! Works with my NVIDIA GeForce 520 and Sony LCD TV. 

  • Guest32

    ATI Sucks

  • MarcDoyle

    Hi Travis,

    Is it ok to use your code in my software AVR Audio Guard (www.marcsapps.co.uk )? It also works for enabling HDMI audio devices that have become disabled which would make it a useful addition to my program.

    – i’ll give you a credit in my “about” window

    Thanks

    Marc

  • http://thydzik.com/ Travis Hydzik

    Marc, no problem at all.
    A very quick google returned the code for VB.NET as similar;
    http://www.dreamincode.net/forums/topic/148684-turn-off-your-lcd/

  • Jan

    I had similair problems with my i3 intel hd graphic through an onkyo receiver. Running your program after sleep mode solved my annoying issue !
    I thank you a lot

  • MarcDoyle

    hi, there are some compatibility problems with hdmion and Windows 8,
    and possibly Windows 7 as well, might be nvidia specific. Basically the
    sendmessage for turning the monitor off never returns so the program
    hangs, and the “on” command is never run. In Windows 8 the “on” command
    doesn’t actually do anything anyway, you have to move your mouse or
    press a key to turn it back on.

    You can fix this by using SendMessageTimeout instead, to return the command even if it hangs.

    CONSTANTS:
    Private Const TIMEOUT = 1000
    Private Const SMTO_ABORTIFHUNG = 2&

    DECLARATION:

    Private Declare Function SendMessageTimeout Lib “user32″ Alias
    “SendMessageTimeoutA” (ByVal hWnd As IntPtr, ByVal wMsg As Int32, ByVal
    wParam As Int32, ByVal lParam As Int32, ByVal fuFlags As Int32, ByVal
    uTimeout As Int32, ByRef result As IntPtr) As IntPtr

    CODE:
    SendMessageTimeout(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF, SMTO_ABORTIFHUNG, TIMEOUT, IntPtr.Zero)
    SendMessageTimeout(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON, SMTO_ABORTIFHUNG, TIMEOUT, IntPtr.Zero)

    Hope you find this useful :)

  • Brarquen

    Many thanks to both Travis and Chacha. Neither solution worked in its own but together they do. I first have to run hdmiOn. It will go off in a second if I don’t then press “winKey” + “P” I have to select “Duplicate Displays” and it then runs at a horrible resolution, so I then press “winKey” + “P” again and select “Extend display” and it finally runs in full HD. A bit fiddly but a lot better than having to crash the PC and re-boot. Thanks again.

  • Grisu_1968

    Tipp: hdmion Integration Windows Media Center (Win7/Win8) = Media Center Launcher Configurator. Link: http://chaddyess.com/2009-01/media-center-launcher-configurator/ Greetings from Germany from the mce-community.de

  • CroUser

    I don’t usually comment on sites..but i had to say my respect to you man! You saved me and you saved my money, i was off going to the store and buying more cables as i thought that something was wrong with my cables. And know i know that ATI is to blame.

    Thank you!

  • Pingback: Reversing Polarities » HDMI Problems?