This has nothing to do with ubicomp, but I just spent 3 hours figuring this out and thought I would share.
I have an ancient Declaser 5100, a laser printer that was made in 1993 and has run continuously ever since. It's a total tank, works great, and, coincidentally, was one of the first TCP/IP network appliances (it had an Ethernet card in it before just about any other printer).
I just upgraded the local network, and the printer, which I had used in its TCP/IP mode, was still stuck on its old internet address. As a first generation product, changing the IP address on one of these printers is ridiculously difficult and I banged my head against the problem for a couple of hours before the solution came to me.
The short answer is AppleTalk. In addition to TCP/IP, this particular printer also speaks AppleTalk, Apple's now-abandoned networking protocol (it also speaks Novell's Netware protocol, another abandoned protocol.
Now the important thing about AppleTalk is that it allows for autodiscovery and autoconfiguration. TCP/IP, by definition, does not. This meant that the Macs in my household, which still speak AppleTalk, had no problem finding the printer, but the nearly as ancient Windows 2000 (which I don't upgrade for fear of bricking an already dicey box) was not so lucky. I struggled with various network configurations for a long time before realizing that it can also speak to the printer in AppleTalk, it's just that the incantation is arcane.
Here's what you do:
- Go to the Network control panel and open the local network connection that's shared with the printer
- Click on Properties
- Click on "Install..."
- Select "Protocol"
- Select AppleTalk, Click OK. It'll ask you to reboot your computer. Reboot.
- When the computer reboots, open the Printers folder and open "Add Printer"
- Select "add a local printer" (yes, you select "local printer", even though you're adding a network printer--hello Microsoft!). Click next.
- On the next page, it'll ask you select a port. Click on "Create a new port" and select "AppleTalk Printing Devices" from the list. It may have a weird name, but odds are there's only one AppleTalk device on your network, so choose that one. Click next.
- It will then search for a local AppleTalk printer and, if everything is working right, find yours.
- When it asks whether you want to "Capture this AppleTalk device," say no.
- It will then give you a list of printers. Hopefully, it selected the right one (thank you AppleTalk autodiscovery), but if not, scroll through the list to find yours. Click next. The rest is the same as adding any other printer.
- If it asks you about whether to keep the existing driver, say yes. Click next.
- Name the printer and make the default, if that's appropriate on the next screen. Click next.
- When it asks whether you want to share this printer, probably "no." Windows 2K device sharing is dicey.
- Congratulate yourself on circumventing bad configuration UI on the part of Digital and bad device management UI on the part of Microsoft using good protocol design (for certain things) on the part of Apple.
I suspect this technique will also work for any number of other AppleTalk network printers, such as Apple's early-90s LaserWriters and HPs printers of the same era. You may even be able to get an old Imagewriter dotmatrix printer working on your network if you have an Ethernet-LocalTalk media converter. Woohoo. Retro "fun," yes. In the middle of a workday, no.