Hardware

Create customized monitor drivers with PowerStrip

Using generic monitor drivers can cause display discrepancies for your users. Brien Posey shows you how to correct this problem by creating and implementing custom drivers with PowerStrip.


When you initially install Windows on users' machines (or change monitors), the OS will attempt to identify the monitor model in use. If Windows recognizes the monitor model, it will initiate the use of its built-in color profile for that monitor. (Windows will use a generic color profile for any monitors for which it does not have a corresponding color profile.)

Now, suppose your user has a generic monitor driver loaded on his or her system and needs to scan, edit, and print an image. During the editing process, he or she may not see the image's true color, which could lead to surprises when it comes time to print. With a custom monitor driver, however, Windows will know exactly what it needs to do in order to reproduce the exact image on that user's monitor.

I’ll show you how to create a custom monitor driver for your users with a shareware utility called PowerStrip from EnTech Taiwan. I’ll also explain how to use PowerStrip to compensate for any abnormalities in the way that users' monitors display colors. (You can download PowerStrip from CNET's Download.com for a $29.95 registration fee.)

Image Color Matching
Implementing a custom monitor driver also allows you to take advantage of Image Color Matching. With Image Color Matching, Windows ensures that the image on the screen is reproduced accurately on the printer. To make this process possible, scanners (and other input devices) must provide Windows with either an International Color Consortium (ICC) color profile or output the image using sRGB. Establishing a color profile for the image allows Windows to reproduce the image’s true colors.

Creating a monitor driver
To create a custom driver for your users' systems, click Options | Monitor Information in the PowerStrip menu (see Figure A).

Figure A
You'll use the Monitor Information dialog box heavily during the customization process.


It might at first appear that the Monitor Information dialog box is informational only, but in fact, your custom driver will be created via the options you select in this box. Before you’ll be able to modify any of the information, however, you'll need to go to the Options drop-down list and select Write Custom Monitor Driver. The dialog box that appears will be similar to the one shown in Figure B, and it will provide you with a summary of which fields you’ll be able to edit.

Figure B
The Custom Monitor Information File screen tells you which fields you can edit to create your custom driver.


As you can see in Figure B, PowerStrip asks you to get information such as the maximum scan frequencies and maximum resolutions from the monitor’s instruction manual. You may have to guess at some of these values, however, because the monitor's instruction manual typically does not provide all of the necessary information. If you find yourself in this situation, don’t panic: The values shown in Figure A will work for the vast majority of monitors.

The nature of the particular problem you're trying to solve by creating the custom monitor driver should determine which value(s) needs to be adjusted. For example, if the monitor is flickering, you should continue to adjust the scan rate to a lower value until you come up with one that alleviates the problem.

After you've noted which fields you will edit, click OK to close the Custom Monitor Information File dialog box. It’s now time to begin the editing process. First, fill in the Provider and Model ID fields in the Product Identifiers section of the Monitor Information box. You can put anything that you want in these fields, but they must contain unique values. It’s been my experience that if you don’t modify these values, you’ll be unable to load your custom driver later on. For my example, I used "Brien" as the Provider and "Custom Driver" as the Model ID.

Once you’ve filled in the Provider and Model ID values, you can skip over the Serial Number, Date Of Manufacture, Video Type, and Image Size values, as they are not required for a custom driver. The next values you must set are the Max. Resolution and Max. Scan Frequency values.

As you can see in Figure A above, the Max. Resolution and Max. Scan Frequency values are divided into two columns; one for Horizontal and one for Vertical. Setting the scan frequencies too high results in screen flicker. If your user happens to have a high-definition television as a monitor, you must set the vertical scan frequency to no higher than 60. Setting it any higher can damage the television. Computer monitors, on the other hand, can handle significantly higher frequencies. For example, in Figure A, the default vertical scan frequency was set to 85.

The next step in the process is to configure the Power Management settings. If your user's monitor supports DPMS (Display Power Management System), then select the DPMS check box under the Power Management section. After you’ve enabled or disabled the power management capabilities, you can use the Timing Descriptions section to make adjustments to the timing if necessary. Typically, you won’t have to bother with this since you’ve been configuring the other values manually.

You’ve now adjusted all of the necessary values. Although the values you choose will be different from mine, you can see my custom values in Figure C below and compare them to the default values in Figure A. When you’re satisfied with your new values, click the disk icon (Save Custom Monitor Information) to save your driver settings. Be sure to pay attention to which directory you save the custom driver to because you’ll need to know the location when you implement the driver.

Figure C
The custom values should be very different from the default values.


Implementing the custom driver
Once you’ve saved your user's custom values, click Close to close the Monitor Information dialog box. Now you’ll have to open the Device Manager and implement the custom driver. How you will implement the driver will depend on which version of Windows the user has, although the basic idea will remain the same. For example, to implement the custom driver in a Windows XP environment, begin by opening the Control Panel and clicking the Performance and Maintenance link, followed by the System link, to open the System Properties sheet. Select the Hardware tab and click Device Manager.

The Device Manager will display a list of all of the hardware installed in the system. Click the plus sign next to Monitors to reveal the current monitor driver. Now, right-click on the current monitor and select the Update Driver command from the resulting context menu to open the Hardware Update Wizard.

The wizard’s initial screen allows you to choose whether to install the software automatically or to install it from a specific location. Click the Install From A Specific Location (Advanced) radio button and click Next.

The next screen you’ll encounter allows you to select which locations will be searched for drivers. Click the "Don’t search. I will choose the driver to install." radio button, as shown in Figure D and click Next to continue.

Figure D
You'll have to manually select the custom driver.


The following screen will allow you to choose whether to use the Default Monitor or a Plug and Play Monitor. Rather than accepting either of these choices, however, you'll need to click Have Disk and specify the location of the custom driver. The resulting screen will ask you which driver you want to install. Notice in Figure E that the Manufacturer is listed as Brien and the Model is listed as Custom Driver, just as I specified earlier. Now, you must click Next to install the driver and complete the installation process.

Figure E
Your custom driver should appear on the list of drivers to choose from.


Customizing colors
I hope that at this point, you'll see that your custom driver has now alleviated any color discrepancies. But in the event that the monitor colors are incorrect, simply return to the Monitor Information dialog box and adjust the color. You may have noticed the Color Characteristics section in Figures A and C. As you adjust the colors, the first thing you’ll want to look at is the Color System drop-down list. By default, Typical CRT is selected. For most systems, this is the desirable choice. However, other options—including NTSC, HDTV, and Secam-PAL—may be better suited to some monitor types. Check the user's monitor instruction manual for details on the correct setting.

You may also want to adjust the Gamma control. By raising and lowering the Gamma control, you can control the intensity of the colors. A very low Gamma setting will modify the colors in such a way as to make only about six different colors available for use. A midrange Gamma setting will provide a very large number of colors, while a really high Gamma setting will give you about three different colors. Typically, you will want to use a midrange Gamma setting, but experiment with various midrange values to see which value provides the best color reproduction.

When you finish making the color adjustments, you’ll have to save them to a new driver and then update the system to use the new driver. If you simply click the Close button, your changes will be lost.

Conclusion
When a user complains that what he or she sees on screen is not what is output on a printer, a generic Windows monitor driver could be the culprit. As I've just shown you, you can use PowerStrip to fine-tune the user's system by creating a custom monitor driver to get a better match between the two outputs.

Editor's Picks