If you’re trying to hook up an old printer or other device with a parallel port (DB25) or Centronics (CN36) interface, but you have a newer computer without a parallel port, there are easy-to-use adapters available for a few bucks that will give you the required port. These ports are also sometimes called IEEE 1284 ports.
Types of Adapters
There are two types of USB -> parallel port adapters. Both have a USB plug on the computer end, but some give you a parallel port (DB25F) connector on the printer end, while others have a Centronics (CN36) connector on the printer end.
The adapters with a DB25F connector are useful if you are trying to connect to something other than a printer. Examples are scanners or tape drives with parallel interfaces, dongles used to activate certain old software, or old-style data-transfer applications such as InterLink, included with some versions of DOS. Some of these require additional cables or adapters.
You can also use this type of adapter to connect to printers with Centronics interfaces by use of a standard old-fashioned printer cable (DB25M to CN36).
The adapters with a Centronics (CN36) connector will plug directly into a printer and avoid the complication and expense of a printer cable. This is what you need if you’re simply connecting to a printer and do not expect to use the port for other things.
Installing and Using the Adapter
Most of these adapters will just plug into a USB port and work — later versions of Windows have drivers for them built in. Most adapters also come with one of those annoying mini-CDs with drivers for other OSs or older versions of Windows.
Load the CD if necessary (read the instructions that came with the adapter, perhaps on the CD), then plug the adapter into your USB port. Windows should load the necessary driver(s) and create a USB virtual printer port.
Generally Windows will not recognize printers plugged into one of these adapters. You’ll have to create a printer device manually. Go to Devices & Printers -> Add a printer and pick “Add a local printer”. Then pick “Use an existing port”, and scroll down to find a port named something like “USB001 (Virtual printer port for USB)”. If there are more than one “USBnnn” ports shown, use the highest number for your first try. It’s probably the one Windows created last.
Finish creating the printer device by selecting the correct printer driver. It won’t happen automatically and you may have to find and download one if Windows doesn’t have one built in. Print a test page and be amazed (or not).
These adapters are fussy. Generally once you get them set up they will just work, but like most computer things, it may take some fiddling to get it right.
In this context “works” means that trying to print makes something happen, even if it isn’t what you want. You may find that there are driver settings that control margins, orientation, paper feed, or other parameters, that need to be adjusted to get exactly what you want.
You’re on your own here, since there a wide variety of printers out there and each driver has its own peculiarities. If you got here from another of my articles, that article may have what you need.
Windows Won’t Load the USB Driver
You may get a popup error message when you plug in the adapter, instead of the desired “Your device is ready to use” message. If this happens try again a couple of times.
Try a different USB port. Try connecting directly to one of the computer’s USB ports without going through a hub or other USB adapter. Try without using an extension USB cable, if you’re trying to use one.
Try ignoring the error and see if you can create a printer device as described above, and then see if it works. Sometimes it will.
If nothing will work, try a new adapter from a different manufacturer. These adapters are cheap and not every adapter will work with every computer/OS combination.
More Than One “USBnnn” Virtual Printer Port
If you follow these instructions once and they work, and you only have one such adapter (or other USB printer device) installed, you’ll end up with a “USB001” virtual printer port, and that’s the one you need to use.
However, if you do a lot of fussing or you have multiple adapters, you’ll end up with more than one “USBnnn” virtual printer port. Unfortunately there is no good way to figure out which port goes with which adapter.
As described above, start by trying the highest-numbered one; that will be the last one installed. But if that one doesn’t work, try the others one at a time. I recommend rebooting after each change; see below.
Alternatively, unplug the adapter, delete all the “USBnnn” ports, reboot, and start over. Hopefully you’ll end up with just one.
Windows sometimes doesn’t recognize printer driver port assignments right away. I recommend rebooting after each change you make. It is a giant pain, but saves a lot of wasted effort. Blame Microsoft.
Printer Goes Offline Sometimes
If you get the adapter to work the way you want, you may still find that once in a while it will stop working and the printer won’t print. If this happens enough to be a problem, try a different adapter.
If you’re willing to live with this, try unplugging the USB connector from the computer, waiting a couple of seconds, and plugging it back in, to the same USB port. After doing this the printer is likely to begin printing, although there may be a delay of a minute or two for the spooler to retry the operation. Be patient.
Using These Adapters for Things Other Than Printing
If you are trying to get something like a scanner, Zip drive, dongle, or tape drive to work, or you’re trying to use a data-transfer application like InterLink, you may have to try several of these adapters to get one that will work, or you may find that none of them will. The adapters are emulating a parallel port, not reproducing one perfectly, and devices that depend on characteristics of hardware ports that are undocumented or are side effects will not always work.
The Adapter Has the Wrong Connector
Please read the section early in this post about the two kinds of USB-to-printer adapters.
The most common problem of this type is when you’re trying to plug the adapter into your printer and the adapter has a DB25F connector and the back of the printer has a CN36 connector. With this type of adapter you also need a standard parallel printer cable.
There are a wide variety of other connector combinations you might encounter, especially if you’re trying to do something besides just hooking up a printer. Go to a cable supplier like Monoprice and find a cable with the ends you need.
Generally, you should try a different adapter if you have problems that you can’t solve. They’re cheap, and it’s no big deal if you end up with two or three of them to try.
Please let me know by commenting on this post if you find it useful, or if you have suggestions for improving it. I’m particularly interested in anything I haven’t covered that will help others get these adapters to work.
3 thoughts on “USB Parallel Port Adapters”
Great info on usb interface cable to printer with dB-25 connectors.
In the past I developed a qbasic program which interfaced with the parallel port address H378(lpt1) to send/receive data. Will this program work with the “right” usb to parallel port adapter cable? Or should my code be modified to interface to the USB adapter address? Thanks for any help that you can provide me on this subject.
I don’t know the answer to this. I’d experiment a little, starting with trying your program as is.
I have a similar situation, a need to get an old backup drive working that has a parallel port interface. I’m not too hopeful…
My suspicion is that these adapters depend on Windows printer support to work.