We help IT Professionals succeed at work.

HP Laserjet P3000d - can't make it work both as local and LPD/LPR printer

The printer is connected to my Vista 32bit Intel PC via USB cable. It was working for both local Windows printing and for LPD printing (I have a server on the network that requires LPD service), but I uninstalled and reinstalled the print driver, now it only works as a local Windows printer.

UNIX print services are installed. I tested from the server and can connect to my PC port 515, indicating that there is no firewall issue and the service is running. But when I print from my server application my PC is rejecting the print job.

From my notes, I seem to recall this being useful:


I think I need to setup a "port", but can't remember how to implement this.
Watch Question

If you are using 'lpr' to print direct to a printer (usually via a TCP/IP port), then 'lpr' requests will be dealt with by an LPD responder within the printer (or JetDirect card, to be more accurate).

As your device is connected, via a USB port, to a separate 'system' (a Windows Vista PC in your case) this latter system must act as the LPD responder, and then pass on the print request from your server to a printer controlled by the local Vista 'print server'.

So the problem is probably either that the LPD service has not been set up fully, or there is something not yet configured to enable the Windows spooler to 'pass on' the request to a real device.

On a Windows Vista system, under:

Control Panel | Programs and Features | Turn Windows Features On or Off

the 'Print Services' feature offers three items (disabled by default?):

- Internet Printing Client
- LPD Print Service
- LPR Port Monitor

... and (distilled from various Microsoft documents):

The Line Printer Daemon (LPD) Service installs and starts the TCP/IP Print Server (LPDSVC) service, which enables UNIX-based computers or other computers that are using the Line Printer Remote (LPR) service to print to shared printers on this server.
On Windows 7 (not sure about Vista) it also creates an inbound exception for port 515 in Windows Firewall with Advanced Security.

No configuration is necessary for the LPD service. However, if you stop or restart the Print Spooler service, the TCP/IP Print Server service is also stopped, and it is not automatically restarted.

To print to a printer or print server that uses the LPD protocol, you can use the Network Printer Installation wizard and a Standard TCP/IP printer port. However you must install the Line Printer Remote (LPR) Port Monitor feature to print to a UNIX print server.
I suspect that by reinstalling the driver, the server lost the mapping to the printer on your PC. I suggest creating a new TCP/IP port on the server, with the correct details, i.e. the IP address of your PC and the name of the printer. You can check the existing TCP/IP port to see what the settings should be (and compare to the settings on your PC).

There is no problem with having more than one TCP/IP port with the same IP address. You can give them different names to make it easier to see which is which.
I added a Generic/Text only printer using the same DOT4 port that the laser printer was using, I made the share name the same as my print queue name on the LPR client side and it started working!


I marked my solution as "Best" so that future visitors can see the exact solution that worked for me, but I also awarded points to those who gave some troubleshooting tips.

Explore More ContentExplore courses, solutions, and other research materials related to this topic.