Getting the Most Out of Your HTPC

Well, now that you have this wonderful Home Theater PC (HTPC), what do you do with it? In this article, I’ll provide some insight on how to configure your HTPC for maximum enjoyment. You paid a lot for this fancy piece of hardware. In fact, I paid as much for my HTPC as I did for my Denon 7.1 channel digital decoder and amplifier, and about half as much as I paid for my 720p projector. There’d better be a good reason for spending that much. Let’s explore…

Watching on the Big Screen

The first thing to consider is how you’ve connected your HTPC. Mine is not connected physically to my video system. That is, I have my HTPC sitting in another room of my home that I currently use as a den or study. It allows me the peace and quiet that I need to continue the on-going process of converting my movie collection into streamable media that I can serve from my HTPC.

I recognize that some people may want to connect their HTPC directly into their home theater system. Eventually, I’ll do this myself. But I have a problem, and you may also. Unless you have the latest video and audio equipment in your home theatre, you’re probably facing a physical connection issue that can’t simply be ignored. By this I mean that your slightly older video display (projector or TV) probably accepts, at most, analog component video (YPbPr) inputs. But the connection on the back of your HTPC (if you purchased the Gigabyte motherboard I mentioned in that first HTPC article) has only VGA, DVI-D and HDMI outputs.

Direct Digital Connection

If you’re lucky enough to have newer home theater equipment–a 1080p projector with HDMI inputs, and a newer 5.1 channel digital decoder/amp with HDMI video switching capability, then you’re really set. Just plug the HDMI output from the onboard ATI video circuitry into one of the free HDMI inputs on your amplifier, and start watching!

The nice thing about an end-to-end digital connection is that you’ll be able to watch your Blu-ray content in the highest resolution available to your display device. Such a connection between your HTPC and your TV will provide exactly the same home theater experience you’d get from your 350 dollar Blu-ray player.

Direct Analog Connection

As mentioned, to get the most out of a direct connection, I really need to use the digital (either DVD-D or HDMI) outputs. But, short of upgrading my amp and projector, I have little recourse here. My somewhat older Denon amplifier has component video switching capability for up to three inputs switched to one output, which is really nice for older devices and monitors. But unfortunately, none of this is compatible with modern digital signals. Until I come into some spare cash, I’m going to have to settle for an end-to-end analog signal between my HTPC and my projector.

To make matters worse, VGA has nothing whatsoever to do with component video, except that they’re both analog signals. Unfortunately these two analog signals operate in different color spaces, so there’s no ad-hoc wiring harness that you can solder together that will allow you to generate component video from the VGA signal at the back of your HTPC.

The solution to this problem is an inexpensive video transcoder. There are various devices available for reasonable prices that will actively convert from one color space to the other. Some of them have more capabilities–and are thus more expensive–than others. I’ve mentioned these devices briefly in my first HTPC article, but I’ll cover them in more detail here.

The device I’ve found that seems to be the best compromise between price and performance is one manufactured by Audio Authority called the 9A60 VGA to Component Video Transcoder. This is a sweet little device–the sweetest aspect of which is the price. In the first place, it does exactly what you want it to do, no more and no less. It converts an RGB signal from a VGA connector to YPbPr Component Video via the standard 3 RCA jacks, with no video scaling or dimensional transformations.

Incidentally, the best price I’ve found on the 9A60 is at mythic.tv for 105 dollars.

Setting Video Card Resolution

Regardless of the type of connection you establish, you’ll have to configure your HTPC’s video card to provide the exact resolution and format expected by your projector or television. An HDMI connection will make setting the computer’s resolution a bit easier, but it has to be done nonetheless.

The resolution expected by your viewing device of choice often depends on how you’ve configured it. For televisions, the resolution is somewhat hard-coded into the device, but projectors can usually be configured to display in different resolutions. Both types of devices can automatically handle a slightly varying range of resolution, regardless of configuration, the rendering quality of which depends on the quality of the display circuitry in the device.

You also need to understand the correlation between TV industry display resolutions and computer display resolutions. In the television industry, resolutions are defined in terms of number of scan lines and whether the signal is progressive or interlaced. Thus, you’ll often hear of TV’s that can display 480p, 720p, 1080i, or 1080p. The numeric values indicate the number of horizontal scan lines displayed, and the letter is either “i” for interlaced, or “p” for progressive (non-interlaced).

The number of scan lines directly corresponds to the vertical resolution on your HTPC. Thus, to generate a 1080p signal to your HD television, you’re going to have to configure your HTPC’s video card to display a resolution of (‘something’ x 1080). The ‘something’ is determined by back-calculating the horizontal resolution from the aspect ratio of your television.

The aspect ratio of US televisions (I mean NTSC/ATSC, rather than the European PAL standard) is either 4:3 or 16:9. So, on a wide-screen (16:9) US television, you would use the following formula to determine the horizontal resolution of your video card:

   Hr = Vr * 16 / 9

where ‘Hr’ stands for Horizontal resolution, and ‘Vr’ stands for Vertical resolution. Thus, the proper horizontal resolution for a 1080p display is 1080 * 16 / 9, or 1920.

The biggest problem you’re likely to run into in this process is actually finding a conforming resolution in the list handed to you by the Microsoft Windows video card configuration dialogs. Windows wants to query the monitor to find out what it can handle, and then transform this information into a set of resolutions compatible with your monitor, but when your monitor is effectively the Audio Authority 9A60, you’ll find it to be quite uninformative regarding what it can handle. Windows responds by giving you a minimal set of choices.

Fortunately, there is free software available in the form of an application called PowerStrip by a Taiwanese company called Entech, which allows you to manually choose your horizontal and vertical resolution, as well as color depth, and horizontal and vertical sync rates. These values must be chosen carefully, or you can damage your display device, but most TV’s and projectors are much more resilient than computer monitors. PowerStrip is pretty self-explanatory, and there are guides abounding on the Internet, so I’ll forego the details here.

Extender Technology

Before I’m ready to connect my HTPC directly to my home theater system, I’m going to use it for several months to convert my video collection, so I’ll want to use “Windows Media Center Extender Technology” and my home network to display my Media Center console on my home theater projector remotely.

Microsoft sells an extender device designed explicitly for this purpose, however, I already have an XBox 360 that I got for my family for Christmas last year, and the 360 has built-in WMC extender functionality. You activate it through the 360 console’s Media page. Look for the option to connect to a Windows Media Center PC.

When you select this “connect” option, the 360 displays an 8 digit random number on the screen, and tells you to use this number at the appropriate location when setting up the extender on your HTPC. In the Media Center setup menu of your HTPC, you’ll find an option for setting up an extender. During this setup wizard, an entry dialog will be displayed, where you’ll be asked to enter this 2-part, 8-digit value. Once you’ve entered this value, the rest is trivial, and your 360 will display your Windows Media Center console.

You can use your game controller to move about the WMC menus and select various options. There’s a cheat-sheet provided by Microsoft that will help you understand how the controller buttons map to Media Center functionality.

Watching Digital Television

TV cards–even digital TV cards–are so inexpensive these days, it would be a shame if you chose to forego that expense. I dare say a TV card costs less than the memory in your HTPC. With that TV card, you get the ability to watch digital TV in full definition.

Of course, if you’d rather spend 400 dollars on a stand-alone digital broadcast tuner, feel free. I much prefer the 80 dollar Hauppaugh WinTV solution. In fact, it’s so cheap, It’s worth considering purchasing two such tuners. Windows Media Center will recognize and consume both units. You can then use one of them to record from one channel, while you’re watching another channel on the other. You can even enjoy picture-in-picture features using both tuners–want to watch a movie while not missing the big game (or vice-versa)? Hmmmm. 400 dollars for a single stand-alone tuner, or 160 dollars for a couple of tuner cards? Not a tough choice.

In fact, the Hauppaugh WinTV 1800 card is actually two tuners in one; an analog tuner and a digital tuner. So even one card will let you do some of the fancy stuff–like recording a digital program while watching an analog program, each on different channels. But if you’re hooked on the realistic quality of digital TV, then you’ll probably almost forget that you have an analog tuner in your TV card. I didn’t even bother connecting the analog tuner to the antenna wire.

This does bring up an interesting side issue for me. The TV card has four antenna inputs on the back: TV, DTV, FM, and QUAM. Okay, I can understanding separate inputs for FM radio and Satellite or Cable input, but was it really necessary to separate the inputs for Analog and Digital TV? I can get a really nice analog picture by connecting my digital antenna to my Analog antenna input. I suppose it’s conceivable that your area has digital and analog broadcast towers set up in different locations, which would preclude aiming TV and DTV antennas in different directions… What I’d really like to see is some sort of software switch or hardware jumper that bridges the DTV input to the TV input, so I don’t have to use an input cable splitter to connect my DTV antenna wire to both inputs.

Time-Shifting and the Media Center Programming Guide

One of the nicest features of Windows Media center is the ability to easily record a program for later viewing. I can sit down on Saturday afternoon, and check out the schedule for the coming week. In a few minutes, and with just a few clicks, I can schedule the recording of broadcast movies or shows I want to watch. If you always schedule tuner B to record, then you know you can always watch tuner A without worrying about bumping in to a recording session.

Remember when you had to get out the manual for your VCR whenever you wanted to record a program on TV. It was a fairly complex and time-consuming process to configure your VCR to record a program at a later time. If you just wanted to record something now, it wasn’t too bad. You could almost figure it out without the manual (just press the red record button and the play button at the same time–often this combination was highlighted on the remote for this purpose). But if you wanted to record a program that was scheduled to start when you were not home, now that was a different matter. How’d I do that last time? Dang! Where’s that VCR manual?!

Windows Media Center comes with an online programming guide for the United States. If you live in the US, you simply supply your zip code when you configure your tuner card (and, of course, agree to the online content use license), and Media Center will configure your TV viewing experience with an online programming guide. Recording any program is as simple as finding the upcoming program in the guide, and pressing the record button at the bottom of the screen. This isn’t perfect–it never has been. Last minute programming changes will always be sources of heartburn, but the media providers understand this, and try more then ever to ensure that the content is accurate.

You even have the option of recording an entire season of a program with one button. Do you like a particular television program, but you forget to record it half the time, so there are gaps in your understanding of the program plot? No problem. Let Media Center do the remembering for you. Just tell it to record the entire season, and then forget it. If you become busy with life and stuff (who doesn’t?), and are unable to watch your program for a few weeks, don’t worry–when the load lightens up again, the missed episodes will be there for you to watch.

You can also watch a program while it’s being recorded. Now, why would you want to do that?! Okay, you can perhaps understand that you might wish to save this program and watch it again later. But most people who record while watching do so for one reason: They want to skip commercials on the fly. Just start recording a program you want to watch, then go away for 15 minutes or so. When you come back, you’ll have enough recorded material so that when a commercial starts, you can fast forward over it to the show again. By the time you get to the next commercial, enough material has been recorded to allow you to skip this one as well. This is a common feature on 200 dollar Personal Video Recorder (PVR) devices. PVR functionality comes built-in to a Media Center PC with a tuner card.

DVD and Blu-ray Movies

My system includes a Blu-ray disc player, so I can watch my Blu-ray discs on my HTPC. At the time of this writing, Blu-ray players (not recorders) can be had for between 100 and 150 dollars, and they’re coming down in price fast. It won’t be long before, like internal DVD players, you can pick one up for about 20 bucks.

But Blu-ray players can also play DVD’s and CD’s, as well. This shouldn’t be too surprising, as DVD players can also play CD’s. Thus, for about 100 bucks, I have an HTPC-based replacement for my stand-alone Blu-ray/DVD player. Such a device would normally cost 350 dollars or more in today’s market. (It’s becoming easier and easier to justify the 1000 dollar cost of my HTPC!)

For complete instructions on how to create a playable archive of your purchased movie content, see my previous article, entitled, “Creating a Disk-Based Movie Archive”.

NetFlix Streaming Media

One of my favorite services (and a primary motivation for me to build an HTPC in the first place) is NetFlix streaming video. I’ve had a NetFlix subscription for a couple of years now. Last year when NetFlix came out with free streaming video for current subscribers, I thought Christmas had come early for me.

If you’ve got your Media Center PC connected directly to your television, then you have a several options. The most obvious option is to open a browser window from your HTPC desktop, and navigate to netflix.com. In this case, you’re accessing NetFlix streaming video just as you always have (if, that is, you’ve used NetFlix streaming video in the past), except that now you’re watching it on your television, instead of your computer monitor.

If you’re using an WMC extender, or if you simply want to configure WMC as your only desktop (by making it non-minimizable), then you have fewer options. Since you can’t access your browser application from the extender console, you’ll have to find a way to access NetFlix streaming video through WMC itself. There are two approaches you can take.

One of these is a free software project hosted by Google code, called VMCNetFlix. VMCNetFlix is basically a Windows Media Center application that makes the NetFlix Web API available through the Windows Media Center interface. To use VMCNetFlix, you must be using Windows Vista Media Center (thus, the ‘VMC’ portion of the name), which comes packaged with Windows Vista Home Premium, Business or Ultimate editions. Assuming you are, simply go to the VMCNetFlix project download page, and download the package appropriate for your hardware architecture (32- or 64-bit).

Install the package by double-clicking on it, and then bring up Windows Media Center. Navigate up or down to the “Online Media” menu, and select the “Program Library” option. If you’ve seen this screen before, then you should see a new item in the list with the familiar NetFlix motif. Select the NetFlix program, and the VMCNetFlix application will help you configure your Media Center to access your NetFlix account.

I like this option because it’s easy to use, fully functional, and best of all–free. In sharp contrast, the other option for accessing NetFlix streaming content through WMC is just plain stupid. I’m sorry, but I just don’t understand how normally intelligent people can conceive of what they deem to be viable business models that fly in the face of reality. If you’re using an XBox 360 as a Media Center extender, then you can also access NetFlix streaming content through your XBox Live! account, if you have one. This would be fine, except that you have to have a Gold account, which means you’ll be charged a monthly fee to use a service that you already pay a monthly fee to use. Now, of course, if you’re an avid gamer, and you already pay for an XBox Live! Gold account, then this requirement probably won’t bother you (much).

The sad part about the XBox Live! method is that it’s the only officially sanctioned way of accessing NetFlix streaming content from the Media Center console. To be sure, there’s nothing illegal about using VMCNetFlix. It’s just that it’s a bit of a hack, which means that anytime NetFlix decides to change their web API, VMCNetFlix will have to be updated to accommodate the modifications.

Additional Features

You can also play games and execute other pc-based software. You’re not limited to using your HTPC as a media center. Unless you’ve configured WMC to be non-minimizable, you can simply click the usually minimize button in the upper-left corner and you’re looking at the Windows Vista PC screen on your TV. This means that any software you have installed is available from your TV. There are a few Windows games that can be played through the “Online Media/Program Files” menu.

There is on-line content available through Windows Media Center. Most of this is subscription based, but you’ll have to decide whether it’s worth the price. And finally, you can do most of the usually things with Media Center that you can do with media on your PC, including playing music. If you have a really nice stereo, this could be a great way to use your PC-based music collection.

Since PC’s are naturally extensible, having a PC as a component in your home theater makes your home theater extensible. Whenever a new PC-based media experience becomes available, you’ll be ready to take full advantage of it.

Advertisements

On Personal Internet Security…

I have over a hundred accounts on the Internet. I do a lot of online shopping for everything from books to computer hardware to toys for my kids. I also have accounts on various social networking sites like linked-in, facebook, myspace, plaxo, pulse and naymes. I use online authoring sites like wordpress, freesoftwaremagazine, digg, technorati and others. I like to personalize google news and various product support sites to my own tastes. I like it when sites like this allow me to create a profile – essentially a login account.

I also work in the software industry and write a fair amount of open source code, so I have accounts at locations like sourceforge.net, which manages separate authentication materials for mailing list accounts, primary site access, shell access, etc – and often for each project they support. This means literally dozens of passwords for a single site.

These places are all pretty benign as far as security issues are concerned. Frankly, I don’t really care if someone knows my middle name, or my phone number for that matter. But I do most of my banking online , and some web-based store fronts keep track of my credit card information these days. I have the option of not giving it to them, but if I trust them, I like to use this feature, and that presents a real security problem for me. Some of these sites have fairly good identity security–others do not. I don’t know which ones do and which ones don’t.

I used to use the same password everywhere – so I wouldn’t forget it. When I started doing online banking and storing credit card information at various store fronts, I used one password for these places, and another one for everywhere else. But lately the number of security classifications I use has increased significantly, making it difficult to remember all of the passwords I use.

If a hacker can break into one of these weaker sites, and capture account information and passwords, they can then access more sensitive personal information at many other sites where I have accounts. Now, I’m not a conspiracy theorist. I don’t believe there are groups of people out to get me personally. But I do believe in bad guys. And I know for a fact that there are bad guys out there “phishing” for random authentication materials. If they find a way to access one (like mine) and if they then find that I use the same password at my bank, I really do believe they’ll go after my cash. After all, they don’t really care whose money they take.

KeePass

Recently, I was introduced to the KeePass project on SourceForge.net. What a gem of a little project! KeePass allows you to store passwords and other account information in an easily accessible hierarchical format within an encrypted database on your hard drive. You only need to remember a single master password to get into the database.

Some people might balk at the idea of another layer of indirection between themselves and their online banking web site. I’d agree myself, if it weren’t for some of the really cool usability features in KeePass. For instance, KeePass can copy a password to the clipboard from an entry in its database, which means you need only click on the password entry field and press Ctrl-V to paste it in. If you care to take this to the next level, KeePass will also fill in login forms automatically with a configurable hot-key press on the login page of your sites.

KeePass also contains a small area in each password entry for notes and such. I have an AT&T cell phone account which allows me to connect to the Internet on my laptop through my phone over a high-speed connection. But configuring this connection initially was a real pain in the neck! Once I got it figured out, I wrote down the steps for configuration so I wouldn’t forget them. The next time I needed to reconfigure my laptop, I forgot where I’d written down these instructions. Now, I have them in the notes section for my AT&T wireless account in KeePass.

Another nice feature is that KeePass will automatically generate a high-security password for you, with a single click. When I create a new account on a web-site these days, I just pull up KeePass and create the account and the KeePass entry at the same time. When the site asks me for a password, I don’t waste time thinking about what I should use–I just tell KeePass to give me a good one, then cut and paste it in.

Finally, KeePass will stay resident on your Windows machine, adding a little icon to the system tray while it’s running. Click the icon and you have instant access to your password database. With highly configurable security policy tailored to your personal tastes, you can decide how often you want to type in your master password: Once at login, each time you click the system tray icon, only when you lock it, when you lock your computer screen, etc. You can also configure it to minimize to the tray, or to close to the tray.

Taking It With You

This is all well and good if you only work on one machine. I work on multiple machines. I have one at home where I spend time shopping, and I have one at work where I access my sourceforge.net accounts. I have a laptop that I take with me to sneak in some work or play while I’m waiting at the repair shop for my car to be fixed. Sometimes I use my wife’s laptop–just because it’s handy. Sometimes I use a kiosk computer at the airport or at the library. Sometimes I use a colleague’s computer in another office at work.

KeePass has a solution for this problem as well. If you wish, you can store the database on a removable media device, like a USB drive. You can pick up a 1G USB drive these days for 10 to 20 bucks. And this is 100 times as much memory as you need for a password store.

But the database does you little good if you can’t access it with the KeePass program when you need a password. The designers of KeePass understood this. You can store a portable version of the program itself on the USB drive. Portable, in this context, means programming in such a way that the software requires no explicit installation. It creates no registry entries, or special file system objects. This means you can access your password database from any Windows machine with a USB port. Just plug it in and run the program right from the USB drive.

What, Now Linux Too?!

What more could I ask for? Well…recently, I installed Linux on my desktop machine at work. Since moving to OpenSUSE 10.3, I’ve been very satisfied with what I’ve been able to accomplish using only free software. It’s been a whirlwind romance, and I’ve loved every minute of it, but it’s the first time I’ve been without a Windows machine handy to…you know, do the stuff I can only do on Windows. Sad to consider it that way, but it’s been true for me, so I’m guessing it’s true for most everyone else, as well.

Unfortunately, KeePass is a Windows program. “Well, I’m in love with the concept, not the program”, I told myself. So I went looking for a more portable alternative. One that was perhaps not as functional as KeePass, but at least ran on Windows and Linux. And I found it–KeePassX. This is a spin off of the original Windows open source program found on SourceForge.net.

KeePassX is written using QT and compiled under mingw on Windows, so its interfaces on both platforms are nearly identical. The people who did the port stayed true to the original KeePass look and feel as much as they could in this portable version. I’m very pleased, because now I can carry copies of KeePassX for Windows and Linux, as well as the database which, of course, both versions will open and process.

The only glitch I ran into with KeePassX was that it requires the mingwm10.dll, which fact is not advertised anywhere on the KeePassX web site that I could find, and the win32 package didn’t ship with this library. In fact, the only reference to it that I could find was an entry by a user in their forums indicating that they should probably mention the requirement somewhere. Personally, I think it’s an oversight, and that the Windows bundle should just install it.

To get the library, I just did a Google search for mingwm10 and found a myriad of places from which I could download it. I did that, placed the library in the same directory as the executable and all was well again.

Setting It All Up

To set all this up, I first formatted the USB key under Windows (because Linux has no problem reading FAT-formatted drives, and typically Windows only does Windows). Then I created a directory structure like this on the USB key:

Win32\
   ...unpacked files from KeePassX Win32 bundle
Linux\
   ...unpacked files from KeePassX Linux bundle
Install\
   ...bundles for both platforms, plus mingwm10 bundle, still packed
Passwords.kdb
Autorun.inf

Now, I like to do things up right. On Windows XP, when you insert a USB key, it acts like a removable drive–a CDROM or a USB hard drive. On these types of media, you can place a file at the root of the volume called Autorun.inf, which describes for Windows some things you’d like to have happen when the volume is mounted. I added the following text to an Autorun.inf file on the root of my USB key:

[autorun]
action="Run KeePassX"
open=Win32\KeePassX.exe
icon=Win32\KeePassX.exe
shell\keepassx=&KeePassX
shell\keepassx\command=Win32\KeePassX.exe

The “action” keyword allows Windows to display an option called “Run KeePassX” in the list of stuff to do when a drive is mounted that contains mixed media. Unfortunately, the graphic files (icons, bitmaps, etc) on a QT application are stored separately from the binary, so Windows interprets them as picture files. Since there are both pictures AND executables on the USB key, Windows doesn’t know what you really want to do, so it asks you every time you insert the USB key.

On Vista, you have a few more options. You can add more entries under a “[Contents]” section that tells Vista exactly what to do in the case of a conflict. To me, it’s a no-brainer to have done this in XP, but that’s not the way things came out, so we have to put up with the confusion. Most often, CDROM’s that contain executables designed to be run when the disk is inserted are installation CD’s for software you purchase. These have all sorts of media, but they often come packaged up in CAB or ZIP files, so Windows is not confused. There are only executables, so there’s no ambiguity. Windows just runs the setup.exe or install.exe program, as specified in the “open” tag.

When specifying an “action”, the “open” option tells Windows what to do if you select the “Run KeePassX” option in the pop up menu when the key is inserted. The “icon” option is really neat because it not only tells Windows what icon to display next to the action in the pop up, but also what icon to display in file explorer when the drive is mounted. The “shell” option is used to add a context menu option to the menu that comes up when you right-click on the drive in file explorer.

Look here at msdn.microsoft.com to learn more about Autoplay on Windows platforms.

Now, I’ve got the best of both worlds, and access to my password database from either place. Could I be any happier about the state of my personal Internet security? I don’t think so.

[Edit: I lost my password database the other day – it was corrupted when I pulled the USB key out of my Linux machine while the program was open. I think the corruption occurred because I popped it into a Windows machine, opened the database, and then put the key BACK into the Linux USB socket, and saved the database. In any case, I HIGHLY recommend you backup your password database once in a while. Luckily, I had a recent copy saved off somewhere, and I was able to get back about 95 percent of my data. Now, I keep a backup of the database on the same USB key in a “Backup” directory, which I overwrite quite often. I also keep a backup on another disk that I backup once a week or so, if I’ve made changes during the interim.

One person I know stores his database in a subversion repository, and updates it on any of his machines. That’s nice to get the latest version on any of your own machines, but it doesn’t help you when you want to access your store on a machine that’s not yours. Still, it’s a good idea to keep it in a repository like this.]

Nagios and XP Printing Troubles

Well, since I posted my troubles with Linux installation last month, a lot has happened in my life. I’ve accepted a position with the LDS church to work on open source software projects. Seemed to be a nice fit and, while I loved working at Novell for 16 years, it was time for a change.

The project I’m currently working on is called DNX, which is an acronym for Distributed Nagios eXecutor. DNX is a Nagios plugin that evenly distributes the network checks traditionally done by a single Nagios monitoring system among a group of worker nodes. DNX has the potential to add incredible scalabilty to Nagios.

In the process of moving, I’m now back on a Windows machine – the Church ICS department standard is Windows XP Pro. It’s a sad, but true fact that if your company has a number of OTS software products that are used in its daily processes, then you will have trouble running Linux. I love Linux, and we code to it, and use it on our servers at work – Nagios itself is a Linux/Unix network monitoring tool – as far as I know, it’s never even been ported to Windows (although that would be an interesting project, but I digress… I’ll have more to say about Nagios later, I’m sure).

The short story is that I now have to run Windows on my laptop. With the setup they gave me, I can do most of my work from home. Using the Cisco VPN, I’m able to access all of the resources I need behind the firewall at work. I’ve used VPN’s before, but frankly, I never really needed it like I do now. Most of the services I needed at Novell were actually outside the firewall anyway. I mostly used it to access my linux box on my desk at work from home.

The only real problem I’ve had so far is printing from my new laptop to my home machine’s networked printer. It’s an HP Laserjet 1200 which is shared by my home XP Pro machine. I’ve never had trouble getting to it from any of my other home machines, nor from my wife’s Dell Inspiron laptop. But I just could not connect to the printer from my Dell D830 from work.

One significant difference between the two laptops is that my work machine (not a little ironically) is running the Novell client – something I hadn’t done at Novell for over 7 years!

I spent a couple of hours this morning googling for the error message that Windows was giving me when I attempted to add the printer:

“Operation could not be completed. Either the printer name was typed incorrectly, or the specified printer has lost its connection to the server. For more information, click Help.”

I finally found a single entry on one of the Microsoft tech forums where someone was having a similar problem, and he was persistent enough to figure out a work-around for this issue. Interestingly, the issue is not in Microsoft’s own knowledge base.

The work-around was to treat the printer as a local device, but specify its port as a UNC path. It appears that the Windows network printing subsystem has problems with networked printers that that the local printer subsystem does not have. Here’s what you do:

  1. click the Add Printer wizard icon in the Printers and Faxes pane of explorer.
  2. add a *local* printer (even if it’s not on the local machine)
  3. on the next screen choose “Create a new port” and leave the default “Local Port” in the drop down list.
  4. when you click Next, you’ll get a dialog asking for a port name – type in the UNC path for the printer (eg., \\home-machine\hplj1200)

This actually works. Apparently one valid type of port in the local printing subsystem is a UNC path to a remote printer! You gotta love those Microsoft engineers – they thought of everything when it comes to integration. Too bad they didn’t work together a bit more on the actual implementation of their versions of these subsystems.

To be clear, I can print to my home printer now from my laptop when I’m working at home. It’s amazing how you miss something that you take for granted when it works.