Photosmart C4280 -- usb control msg requesting serial id descriptor returns error (patch attached).

Bug #209721 reported by Isaac Mushinsky
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
HPLIP
Triaged
Undecided
Unassigned

Bug Description

I use FreeBSD, but the problem does not seem to be OS-specific. My system setup and symptoms:

1. This is an all-in-one device. (I did not try the scanner setup yet)
2. ulpt, umass, uscanner modules are not in kernel and not kld-loaded.
3. Machine is FreeBSD 7-stable/amd64.
4. hplip is 2.8.2

$ usbdevs
addr 1: UHCI root hub, Intel
addr 1: UHCI root hub, Intel
addr 1: UHCI root hub, Intel
addr 1: EHCI root hub, Intel
 addr 2: Photosmart C4200 series, HP
addr 1: UHCI root hub, Intel
addr 1: UHCI root hub, Intel
addr 1: UHCI root hub, Intel
addr 1: EHCI root hub, Intel

There is a ppd file for these series with the hplip distribution.

hpssd, cups started in the order needed. hp-setup detects the printer, and then says 'Unable to create queue'. CUPS web interface actually adds the printer, but then cannot print test page to it. cups user runs hpssd (I tried root too).

/var/log/messages has:
Mar 25 23:57:56 omsk python: io/hpmud/musb.c 135: unable get_string_descriptor -5: Input/output error
Mar 25 23:57:56 omsk python: io/hpmud/musb.c 1951: invalid serial id string ret=-5

hp-info finds the printer but fails to get the correct serial id number (i.e. the iSerialNumber USB descriptor):

HP Linux Imaging and Printing System (ver. 2.8.2)
Device Information Utility ver. 3.4

Copyright (c) 2001-7 Hewlett-Packard Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

device: hp:/usb/Photosmart_C4200_series?serial=0

This problem is hard to debug, because it does not occur if you run the backend in a debugger. The printer seems to have a hard time responding to usb control requests in rapid succession. My workaround is to have get_string_descriptor in musb.c retry upon error up to 3 times, sleep a bit in between.

Patch is attached.

The full ordeal can be found on freebsd-questions mail list: http://lists.freebsd.org/pipermail/freebsd-questions/2008-March/171994.html

Revision history for this message
Isaac Mushinsky (itz) wrote :
Changed in hplip:
status: New → Triaged
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.