Bug 244334

Summary: Printing to a USB printer fails silently.
Product: [Fedora] Fedora Reporter: Carl Speare <carl>
Component: hplipAssignee: Tim Waugh <twaugh>
Status: CLOSED CANTFIX QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: 7   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-08-01 10:00:20 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Carl Speare 2007-06-15 04:20:14 UTC
Description of problem:
The printer configuration tool (system-config-printer) correctly detects and
configures a USB-attached HP LaserJet (model 1020) printer. After all final
tweaks are applied (paper size, etc), clicking on "Print Test Page" will result
in a successful submission to cups, and clicking on "Refresh" evens shows the
printer state as "Processing". Alas, no printer activity, or output. See below
for the messages in /var/log/messages. (And yes, the printer is powered on,
connected, and even working.)

Version-Release number of selected component (if applicable):
hplip-1.7.2-10.fc7

How reproducible:
Always.

Steps to Reproduce:
1. Connect an HP 1020-class printer via a USB cable (the only choice) to the
Fedora 7 desktop. Power on printer.
2. sudo -u root -H system-config-printer
3. Ensure that the printer shows up as a local printer and that the right model
is picked (foomatic/hpijs).
4. Set paper size to Letter.
5. Click on "Print Test Page" button.
6. sudo -u root -H tail -30f /var/log/messages
  
Actual results:
Lots of errors in /var/log/messages, like so:

Jun 15 00:10:13 f7 hpiod: invalid Device::DeviceStatus: Connection timed out
hp:/usb/HP_LaserJet_1020?serial=JL14NEH io/hpiod/device.cpp 818
Jun 15 00:10:13 f7 hpiod: unable to read Device::GetDeviceStatus: Connection
timed out hp:/usb/HP_LaserJet_1020?serial=JL14NEH io/hpiod/device.cpp 1081

Another interesting snippet:

Jun 15 00:09:43 f7 hpiod: invalid Device::DeviceStatus: Connection timed out
hp:/usb/HP_LaserJet_1020?serial=JL14NEH io/hpiod/device.cpp 818
Jun 15 00:09:43 f7 hpiod: unable to read Device::GetDeviceStatus: Connection
timed out hp:/usb/HP_LaserJet_1020?serial=JL14NEH io/hpiod/device.cpp 1081
Jun 15 00:09:43 f7 hpijs: WARNING: printmode mismatch with pen, tray, etc.
Jun 15 00:09:43 f7 hpijs: STATE: -marker-supply-low-warning
Jun 15 00:09:43 f7 HP_LaserJet_1020?serial=JL14NEH: INFO: Printing...

Again, this printer works (under Windows and even Mac OS X).

Expected results:
A test page of some sort, hopefully even one that looks like things are working.

Additional info:
Whatever is necessary. This is a fresh install of F7 plus one run of updates
excluding the kernel, a 2nd run shows nothing printing-related. (Or at least
that's what I interpreted the output to be.)

Comment 1 Tim Waugh 2007-06-15 08:22:15 UTC
Please click on the 'Change...' button next to the device URI (hp://...), and
choose 'HP LaserJet 1020 USB #1'.  Does a test page work then?

Comment 2 Carl Speare 2007-06-17 00:55:17 UTC
Unfortunately, it does not.

The Device URI was set to:

usb://HP/LaserJet%201020

after following your suggestion. I assume that's what is expected.

Comment 3 Tim Waugh 2007-06-17 11:02:19 UTC
What does 'dmesg' say after you have tried to print?

Comment 4 Carl Speare 2007-07-08 14:39:00 UTC
From dmesg:

ppdev0: claim the port first
ppdev1: claim the port first
ppdev2: claim the port first
ppdev3: claim the port first
ppdev0: claim the port first
ppdev1: claim the port first
ppdev2: claim the port first
ppdev3: claim the port first
ppdev0: claim the port first
ppdev1: claim the port first
ppdev2: claim the port first
ppdev3: claim the port first
ppdev0: claim the port first
ppdev1: claim the port first
ppdev2: claim the port first
ppdev3: claim the port first
ppdev0: claim the port first
ppdev1: claim the port first
ppdev2: claim the port first
ppdev3: claim the port first
ppdev0: claim the port first
ppdev1: claim the port first
ppdev2: claim the port first
ppdev3: claim the port first
ppdev0: claim the port first
ppdev1: claim the port first
ppdev2: claim the port first
ppdev3: claim the port first


Comment 5 Tim Waugh 2007-07-09 14:30:36 UTC
Please try the test update:

  yum --enablerepo=updates-testing update 'hplip*' 'hpijs*' 'libsane-hpaio*'

Does the problem still occur?

Comment 6 Carl Speare 2007-07-26 19:06:24 UTC
I'm going to try this again this weekend. I'll do the full install, yum 
update, and the yum update with --enablerepo and let you know what happens. 
 
Thank you. 

Comment 7 Carl Speare 2007-07-30 02:42:41 UTC
[root@f7 ~]# yum --enablerepo=updates-testing update 'hplip*' 'hpijs*'
'libsane-hpaio*'
Loading "installonlyn" plugin
Setting up Update Process
Could not find update match for hplip*
Could not find update match for libsane-hpaio*
Could not find update match for hpijs*
No Packages marked for Update/Obsoletion
[root@f7 ~]#

The system is fully updated as of today (2007-07-29). Result is still the same,
dmesg tells us:

ppdev: user-space parallel port driver
ppdev0: claim the port first
ppdev1: claim the port first
ppdev2: claim the port first
ppdev3: claim the port first
ppdev0: claim the port first
ppdev1: claim the port first
ppdev2: claim the port first
ppdev3: claim the port first

This is after I set the printer URI to be usb://HP/LaserJet%201020 (as per
comment 1).

Comment 8 Tim Waugh 2007-07-30 09:20:20 UTC
What does 'rpm -q hplip' say now?

Comment 9 Carl Speare 2007-07-30 23:50:37 UTC
[carls@f7 ~]$ sudo -u root rpm -q hplip
hplip-1.7.4a-4.fc7
[carls@f7 ~]$

Newer than the version I originally reported with.

Comment 10 Tim Waugh 2007-07-31 08:41:29 UTC
Does this work, as root?:

cat /usr/share/cups/data/testprint.ps >/dev/usb/lp0


Comment 11 Carl Speare 2007-08-01 00:05:22 UTC
No good:

root@f7 ~]# lpstat -t
scheduler is running
system default destination: HP_LaserJet_1020
device for HP_LaserJet_1020: usb://HP/LaserJet%201020
HP_LaserJet_1020 accepting requests since Sun 29 Jul 2007 10:39:36 PM EDT
printer HP_LaserJet_1020 is idle.  enabled since Sun 29 Jul 2007 10:39:36 PM EDT
[root@f7 ~]# lpq
HP_LaserJet_1020 is ready
no entries
[root@f7 ~]# cat /usr/share/cups/data/testprint.ps >/dev/usb/lp0
[root@f7 ~]# lpq
HP_LaserJet_1020 is ready
no entries
[root@f7 ~]# lpstat -t
scheduler is running
system default destination: HP_LaserJet_1020
device for HP_LaserJet_1020: usb://HP/LaserJet%201020
HP_LaserJet_1020 accepting requests since Sun 29 Jul 2007 10:39:36 PM EDT
printer HP_LaserJet_1020 is idle.  enabled since Sun 29 Jul 2007 10:39:36 PM EDT
[root@f7 ~]#



Comment 12 Carl Speare 2007-08-01 00:07:37 UTC
If I send a test page (which doesn't work) from the GUI, I do get this:

[root@f7 ~]# lpq
HP_LaserJet_1020 is ready and printing
Rank    Owner   Job     File(s)                         Total Size
active  carls   6       KDE Print System                15360 bytes
[root@f7 ~]#                      

But alas, nothing. 

Comment 13 Carl Speare 2007-08-01 00:17:53 UTC
Also, in comment 11, while I didn't expect lpstat -t to say much about a job
(since no job entry would occur), I did expect to see "HP_LaserJet_1020 is
printing" after the "cat ... lp0" line.

No output was produced.

[root@f7 ~]# ls -al /dev/usb/lp0
crw-rw---- 1 root lp 180, 0 2007-07-31 19:57 /dev/usb/lp0
[root@f7 ~]#                                                        

From /proc/bus/usb/devices:

T:  Bus=05 Lev=01 Prnt=01 Port=02 Cnt=02 Dev#=  4 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=03f0 ProdID=2b17 Rev= 1.00
S:  Manufacturer=Hewlett-Packard
S:  Product=HP LaserJet 1020
S:  SerialNumber=JL14NEH
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 98mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=07(print) Sub=01 Prot=02 Driver=usblp
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms



Comment 14 Tim Waugh 2007-08-01 10:00:20 UTC
Looking at this page:

http://openprinting.org/show_printer.cgi?recnum=HP-LaserJet_1020

it appears that this host-based printer needs firmware to be uploaded after
power-on.

(Unfortunately foo2zjs can't be shipped in Fedora due to licensing restrictions
as I understand it.)