eXentric
December 13th, 2007, 06:45 PM
Some of you may have seen me post that I’m using an HTC touch and that even though I tell the device to turn the display off after 30 seconds, the display simply dims instead of actually turning it off. That’s okay for standard use of the pocket PC, but I’m actually using this as a dedicated NetRemote client most of the time. I have the device stay on unless I manually hit the power button so that WiFi is always connected and I don’t have to wait to use the remote. Unfortunately, if the display doesn’t turn off and sits on the same screen for a day or two the screen will burn in. So I set off to determine how to get the display to actually turn OFF.
I learned a lot about the Windows Mobile power subsystem. I won’t go deeply into the technical details here, but it appears the OS is actually telling the display to turn off (CEDEVICE_POWER_STATE D4). It seems HTC has actually programmed their hardware driver to dim instead of physically turning off. After learning a bit more about power profiles and the associated registry keys, I was able to get the device to behave the way I wanted.
The instructions below have been tested on an HTC touch, but based on what I’ve read I believe these steps should work for many other device that exhibit this same behavior. No promises though, your mileage may vary.
***Registry Warning***
Edit the registry at your own risk! If you don’t know what you’re doing you could potentially disable your device and require a reinstallation of the mobile OS (not something most users will be able to do). It’s recommended you backup any registry keys and values before proceeding.
Step 1
Assuming you’re comfortable editing the registry, open the following location on the device:
HKLM\System\CurrentControlSet\Control\Power\State
Step 2
Rename the key BacklightOff to BacklightOff.Original
Step 3
Copy the key ScreenOff (and all its sub keys and values) to BacklightOff
Step 4
Copy the Flags value (DWORD) from the BacklightOff.Original key to the BacklightOff key. This will overwrite the Flags value in the BacklightOff key, which is intended.
DONE!
Note: I found that after step 3 the backlight would will turn off, but 10 second after the backlight turned off the WiFi would also turn off. After step 4 (copying the original Flags value back) the backlight would turn off and the WiFi would stay on.
I learned a lot about the Windows Mobile power subsystem. I won’t go deeply into the technical details here, but it appears the OS is actually telling the display to turn off (CEDEVICE_POWER_STATE D4). It seems HTC has actually programmed their hardware driver to dim instead of physically turning off. After learning a bit more about power profiles and the associated registry keys, I was able to get the device to behave the way I wanted.
The instructions below have been tested on an HTC touch, but based on what I’ve read I believe these steps should work for many other device that exhibit this same behavior. No promises though, your mileage may vary.
***Registry Warning***
Edit the registry at your own risk! If you don’t know what you’re doing you could potentially disable your device and require a reinstallation of the mobile OS (not something most users will be able to do). It’s recommended you backup any registry keys and values before proceeding.
Step 1
Assuming you’re comfortable editing the registry, open the following location on the device:
HKLM\System\CurrentControlSet\Control\Power\State
Step 2
Rename the key BacklightOff to BacklightOff.Original
Step 3
Copy the key ScreenOff (and all its sub keys and values) to BacklightOff
Step 4
Copy the Flags value (DWORD) from the BacklightOff.Original key to the BacklightOff key. This will overwrite the Flags value in the BacklightOff key, which is intended.
DONE!
Note: I found that after step 3 the backlight would will turn off, but 10 second after the backlight turned off the WiFi would also turn off. After step 4 (copying the original Flags value back) the backlight would turn off and the WiFi would stay on.