Incorrect work with network printer attached via usb to remote machine

Bug #570545 reported by Pavel Shirshov
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
HPLIP
Confirmed
Undecided
Unassigned

Bug Description

I'm using HP JaserJet P2015 printer, connected to my router by USB

I've CUPS installed on my router. The printer is configured with hp-setup from HPLIP.

Here is my /etc/cups.d/printers.conf:

# Printer configuration file for CUPS v1.3.11
# Written by cupsd on 2010-04-27 12:27
<DefaultPrinter ljet>
Info
Location
DeviceURI hp:/usb/HP_LaserJet_P2015_Series?serial=XXXXXXXX
State Idle
StateTime 1272346050
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>

On my pc connected to router I've CUPS and HPLIP installed. I've changed /etc/cups/client.conf to

ServerName router.mynet

So, printer is visible by lp-stat:

# lpstat -a
ljet accepting requests since Tue 27 Apr 2010 12:37:29 PM

And printing working. By when I try to run "hp-check -t" I get the following error:

----
Type: Printer
Device URI: hp:/usb/HP_LaserJet_P2015_Series?serial=XXXXXXXX
PPD: /etc/cups/ppd/ljet.ppd
PPD Description: HP LaserJet Plus Foomatic/ljetplus (recommended)
Printer status: printer ljet is idle. enabled since Tue 27 Apr 2010 11:54:14 AM
error: Unable to communicate with device (code=12): hp:/usb/HP_LaserJet_P2015_Series?serial=XXXXXXXX
error: Device not found
error: Communication status: Failed

As you can see, such Device URI can't be correct for remote machine.

So, when I run hp-toolbox, I get "Device communication error 5012" with tons of annoying popups and can't manage printer queue/options.

this bug in cups bugtracker: http://www.cups.org/str.php?L3569+Qversion:1.4

Pavel Shirshov (pi-es)
description: updated
Revision history for this message
Pavel Shirshov (pi-es) wrote :

I've received the following mail related to this issue:

> HPLIP's tools like hp-toolbox do not support this kind of
> network connected printers, see
> http://hplipopensource.com/node/286
> -------------------------------------------------------------------
> Does HPLIP support networked printers?
> Answer:
> Yes, HPLIP supports printers that are directly network connected
> (via a built-in Ethernet port) or connected to a network
> via a JetDirect.
> -------------------------------------------------------------------
> and
> http://hplipopensource.com/node/287
> -------------------------------------------------------------------
> What network print servers are supported?
> Answer:
> Currently we have only tested HP JetDirect devices with HPLIP.
> No other network print servers are supported.
> -------------------------------------------------------------------
>
> What you do is network printing via CUPS and this limits the
> supported functionality to what is provided by CUPS.
>
>
> For example if a HP all-in-one device was connected as you do it,
> you could not use its scanner unit with HPLIP's tools from the
> remote machine but you could set up "Scanning via Network" see
> http://en.opensuse.org/SDB:Configuring_Scanners_from_SUSE_LINUX_9.2
> which results scanning via network via SANE and limits the
> supported scanning functionality to what is provided by SANE.
>
>
> To use HPLIP's special functionality from a remote machine you need
> to have the device "directly network connected" as described above.
>
> The reason behind is:
> HPLIP's special functionality (e.g. get the device status - do not
> confuse the actual device status with a remote print queue status)
> needs a direct bidirectional communication with the device
> and not whatever kind of indirect communication.
>
>
> Kind Regards
> Johannes Meixner

I've read pages on hplipsource.com and I still insisting that that behavior
like this is certainly HPLIP's bug.

I think that HPLIP should give more descriptive error message at least.
And it's certainly shouldn't show tons of useless popup notifications.

Revision history for this message
Johannes Meixner (jsmeix) wrote :

The general issue behind is that HPLIP should be
better prepared to deal with the case when the
current actual CUPS server is a remote machine.

There are various ways for a user to define the current actual
CUPS server, e.g. the admin can set a ServerName entry
in /etc/cups/client.conf but any normal user can set a different
CUPS server in his ~/.cups/client.conf file, see
http://www.cups.org/documentation.php/doc-1.4/ref-client-conf.html
or the environment variable CUPS_SERVER
is set to whatever else server.

An environment variable CUPS_SERVER overwrites
a ServerName entry in ~/.cups/client.conf and this
overwrites a ServerName entry in /etc/cups/client.conf

Since CUPS 1.4 there is the new 'lpstat -H' option which shows
the current actual CUPS server regardless how the user had
defined it.

If 'lpstat -H -r' does not show
something like
--------------------------------
/var/run/cups/cups.sock
scheduler is running
--------------------------------
or
--------------------------------
localhost:631
scheduler is running
--------------------------------
or something like
--------------------------------
LocalHost:631
scheduler is running
--------------------------------
or
--------------------------------
127.0.0.1:631
scheduler is running
--------------------------------
or something like
--------------------------------
127.000.000.001:631
scheduler is running
--------------------------------
then the current actual CUPS server is a remote machine.

In this case HPLIP should behave accordingly - i.e.:
Show a meaningful warning message that some functionality
does not work via a remote CUPS server and fall back
to the functionality which is still possible with a remote
CUPS server (e.g. only plain printing and show only
the remote print queue state but do no longer provide
an actual remote USB device status).

Revision history for this message
Jim Brumbaugh (bleumyst) wrote :

Finally realized that this is also my problem.

Have Ubuntu 10.04 and downloaded hplip-3.10.5-plugin.run and hplip-3.10.5.run from:

http://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/

Client has HP Professional P1102w attached to a Windows XP machine via USB. Other Windows machines print through network fine.

Installing through System->Administration->Printer locates the printer just fine and I can install the driver for it.

However.. printing to device gives error stating:

****
There are status messages associated with this queue.

Errors are listed below:
Printer 'HP-Laserjet-Professional-p1102w": printer requires a binary plugin, run hp-setup'.
****

hp-setup CANNOT locate the printer. Apparently a network printer attached via USB (not using wireless) cannot be utilized by the hplip driver as a SAMBA share as could a previous HP printer setup through the standard Ubuntu supplied printer utility.

So this printer can apparently be shared to other Windows machines but not to Linux machines at this time.

Additional problems. After running these utilities, synaptic reports that the only hplip on the system is version 3.10.2 and IT IS NOT INSTALLED..

Where is the HP installation utilities putting this stuff?

****
topdog@UbuDogs-351:~$ dpkg -l hplip
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Description
+++-==============-==============-============================================
rc hplip 3.10.2-2ubuntu HP Linux Printing and Imaging System (HPLIP)
topdog@UbuDogs-351:~$ ^C
topdog@UbuDogs-351:~$
****

Revision history for this message
wribeiro (wribeiro) wrote :

Samething here:

Ubuntu 10.10
Client has HP Professional M 1132 MFP attached to a Windows Server 2003 machine via USB. Other Windows machines print through network fine.
Installing through System->Administration->Printer locates the printer just fine and I can install the driver for it.
However.. printing to device gives error: 'printer requires a binary plugin, run hp-setup'.

HP Device Manager Setup does not find the printer.
CUPS Web Interface find and add the printer, but it doesn't work.

Can somebody help me?

Revision history for this message
Alberto Vidal (edgard72) wrote :

Same problem here. Server is a Debian 7.0 machine, and I'm making tests also with a Raspberry Pi. Both computers print fine locally. Sharing the printer whith a windows machine via IPP works fine. But I can't print on a Ubuntu 12.04 using local CUPS, I must use ServerName x.x.x.x in /etc/cups/client.conf to print on the remote printer, but that isn't a nice solution.

I donwloaded and installed manually latest HPLIP drivers and plugins (3.15.11) on RaspberryPi and on Ubuntu 12.04 sucessfully, can add the printer to Ubuntu also, but an error "/usr/lib/cups/filter/hpcups failed" is shown on cups printer status, and no print is done.

Printer is a Laserjet Pro1132MFP

Revision history for this message
Alberto Vidal (edgard72) wrote :

wribeiro, I've found the solution: use IPP as your printer connection, provide cups with your printer server uri, and use as driver the one provided in foomatic/2xqx for HP LaserJet M1005 MFP. Works like a charm.

HPLIP is tryng to connect to USB instead of the remote server.

Changed in hplip:
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.