F
Frantisek.Rysanek
Dear All,
I've tried to attach an old HP LaserJet III to a modern notebook PC
using a cheap USB-to-LPT dongle. I used the generic USB printing
support (driver for the dongle) in XP, installed a HP LJ III printer
manually (the stock XP driver) and pointed the printer profile to use
the virtual USB printing port.
The first result is, that it just doesn't work. The printing subsystem
in Windows keeps trying something for a while, then merely says that
the printing failed.
I am aware that maybe the stock XP driver still relies on physical LPT
hardware (or on LPT hardware-specific low-level driver in XP).
There's also a slight chance of some hardware mismatch (logic levels
mismatch, LPT/USB dongle under-powered, fuzzy PSU rails inside the
dongle etc). The dongle is based on this chip (Prolific PL2305):
http://www.prolific.com.tw/support/files/\IO Cable\PL-2305\Doc\Data Sheet\ds_pl2305_v1.3.pdf
The USB device is clearly alive - the dongle is detected by the XP OS
and the generic USB printing support driver gets loaded.
Do you have any explicit experience/knowledge that this should /
should not work?
In the past, I've been into various printing tricks: redirecting the
print jobs to a file, to a network printer via Samba or LPR (Microsoft
built-in or 3rd-party spooler), to a local XP-borne GhostScript
installation... I'm pretty sure I could redirect the HP LJ III
driver's output harmlessly into some sort of common "virtual pipe"
along those lines - and then maybe forward the traffic back to the USB
device by some other means.
At a first attempt, I can see that the USB device doesn't respond to
the PRN or LPT device names. Is there any way to reach the USB printer
port by some common device name from the Windows command line? Or, for
that matter, a simple way to open the raw USB LPT port from Windows
user space programmatically, via the Win32 API?
At the hardware level, I don't think the LJ III would use some non-
standard signaling, that would require direct software access to the
LPT hardware. Quite the contrary - to me, the LJ III is a "mother of
all printers", a reference printer implementation. If you attach just
anything to its Centronics port and start sending bytes of data, using
the Strobe and Busy signals in a vaguely standard way, you just have
to get some output I would expect that any USB/LPT converter
provides at least this much.
Any ideas are welcome
Frank Rysanek
I've tried to attach an old HP LaserJet III to a modern notebook PC
using a cheap USB-to-LPT dongle. I used the generic USB printing
support (driver for the dongle) in XP, installed a HP LJ III printer
manually (the stock XP driver) and pointed the printer profile to use
the virtual USB printing port.
The first result is, that it just doesn't work. The printing subsystem
in Windows keeps trying something for a while, then merely says that
the printing failed.
I am aware that maybe the stock XP driver still relies on physical LPT
hardware (or on LPT hardware-specific low-level driver in XP).
There's also a slight chance of some hardware mismatch (logic levels
mismatch, LPT/USB dongle under-powered, fuzzy PSU rails inside the
dongle etc). The dongle is based on this chip (Prolific PL2305):
http://www.prolific.com.tw/support/files/\IO Cable\PL-2305\Doc\Data Sheet\ds_pl2305_v1.3.pdf
The USB device is clearly alive - the dongle is detected by the XP OS
and the generic USB printing support driver gets loaded.
Do you have any explicit experience/knowledge that this should /
should not work?
In the past, I've been into various printing tricks: redirecting the
print jobs to a file, to a network printer via Samba or LPR (Microsoft
built-in or 3rd-party spooler), to a local XP-borne GhostScript
installation... I'm pretty sure I could redirect the HP LJ III
driver's output harmlessly into some sort of common "virtual pipe"
along those lines - and then maybe forward the traffic back to the USB
device by some other means.
At a first attempt, I can see that the USB device doesn't respond to
the PRN or LPT device names. Is there any way to reach the USB printer
port by some common device name from the Windows command line? Or, for
that matter, a simple way to open the raw USB LPT port from Windows
user space programmatically, via the Win32 API?
At the hardware level, I don't think the LJ III would use some non-
standard signaling, that would require direct software access to the
LPT hardware. Quite the contrary - to me, the LJ III is a "mother of
all printers", a reference printer implementation. If you attach just
anything to its Centronics port and start sending bytes of data, using
the Strobe and Busy signals in a vaguely standard way, you just have
to get some output I would expect that any USB/LPT converter
provides at least this much.
Any ideas are welcome
Frank Rysanek