Preface: The majority of printer models manufactured in the last 8-10 years (especially those less than $200-300) are “host-based” which means that formatting is done in the computer, not the printer. Formatting is the task which takes text, matches the characters to stored font outlines, scales and modifies the character for bold, italics, underline, etc, and then converts the character into a series of dots. These dots represent the ink on the paper and must be encoded to match the target printer.
This is the purpose of the (much larger and more compute-intensive) printer driver in Windows and Macs. However, there are no drivers for HP-UX (and many other Unix flavors). There is a freeware product called CUPS that may be able to help, but the only solution for native HP-UX printing is to use a printer which supports simple ASCII printing as a minimum. For older (and more expensive) HP printers, this is standard, and enhanced with control characters that are defined by the Printer Control Language (PCL). From PCL-1 through PCL-4, plain ASCII text will always print OK, but starting with PCL-5e, incompatibilities were introduced such that plain ASCII text can no longer be printed. PCL5e and PCL-6… are no longer backward compatible.
So before attempting to setup HP-UX to Windows printing, verify that the printer is compatible with plain ASCII text.
1. Make sure the Windows system has a Unix-compatible name for the printer. That means no spaces, commas, semicolons, or other special characters and limited to 12 characters or less. If the printer’s name is “LaserJet
p1606dn“, change it to lj1606
or something similar.
2. Add the Unix printing service to the PC (WinXP example):
Start Control Panel from the Start menu
Add/Remove Programs
Add/Remove Windows Components
Other Network File and Print Services
Print Services for Unix (check the box)
3. Right click on My Computer (may have to add My
Computer to the Desktop) then left-click on:
Manage
Services and Applications
Services (lengthen the window)
Right-click TCP/IP Print Server, then select Properties
Pulldown Automatic (not Manual) startup type, then click on Start
4. Test the PC service using HP-UX:
telnet mypcname 515
It should say:
Trying…
Connected to atldhcp30.
Escape character is ‘^]’.
This response means that the PC is working OK.
Close the connection with: ctrl ] (control and ])
At the telnet prompt, type: close
If the telnet command says “Connection
refused” then the Unix printer service is not running.
5. On the HP-UX system, create the printer queue with:
lpshut
then
lpadmin -plj1606 -v/dev/null -mrmodel -ormmypcname -orpmyprintername
where: lj1606 is the HP-UX name for the printer,
mypcname is the hostname of the PC and
myprintername is the name of the printer at the PC.
Don’t use spaces between option names and arguments (ie, use -plj1606, not -p lj1606)
6. Start and enable the printer on HP-UX:
accept lj1606
enable
lpsched
7. Check the status:
lpstat
It should show the remote printer name and IP address, ready and waiting
8. Test the printer with:
lp -dlj1606 /etc/fstab
If nothing is printed and the status (lpstat) is ready and waiting) the printer is ignoring the text as it is not compatible, and a different model printer will have to be used, one that supports ASCII and PCL (not PCL5e).
Here are a couple of references that may help on the PC side:
http:///service-it-direct.s7.devpreviewr.com.frogmorecs.com/arts/configure-lpdsvc
http:///service-it-direct.s7.devpreviewr.com.frogmorecs.com/faq/printdistributor/lpd_passthrough
NOTE: The PC hostname must follow the IP address in your DNS server. In other words, if the PC is rebooted and gets a new IP address, the DNS server must return the current IP address. If not, the PC must be changed to a fixed IP address.
– See more at: http://serviceitdirect.com/blog/hp-ux-remote-pc-printer#sthash.pCHJvcoK.dpuf
Tags: HP-UX