[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: usb/cups printer problem after etch upgrade



On Sat, May 05, 2007 at 07:34:30 -0700, Nick Jacobs wrote:
> Graham Seaman wrote:
> > 
> > After upgrading the server to etch (without any major problems) cups no 
> > longer sees the printer. Cups is running ok, and knows about the 
> > printer, but the web interface always displays the message:
> > 
> > " HL5040 (Default Printer) "Printer not connected; will retry in 30 
> > seconds..."
> > 
> > lsusb shows that the printer is there, and visible over wireless:
> > 
> > snoopy: lsusb
> > Bus 003 Device 002: ID 13fd:0540
> > Bus 003 Device 001: ID 0000:0000
> > Bus 002 Device 001: ID 0000:0000
> > Bus 001 Device 028: ID 04f9:0016 Brother Industries, Ltd
> > Bus 001 Device 001: ID 0000:0000
> > 
> I had a similar problem and found that what happens is that Etch can assign
> a different lp device number to the printer every time it's turned on. So if
> your CUPS printer is set up as /dev/usb/lp0, CUPS won't see anything on lp0.
> lsusb tells you what the device number is. In your case, it seems to be 28
> (from above). So if you had reconfigured the printer as /dev/usb/lp28, it
> would have worked. This means you have to reconfigure the printer every time
> you turn it on and off again, which sucks. But at least you will be able to
> print.

We had addressed possible udev problems already, see here:

http://lists.debian.org/debian-user/2007/04/msg04804.html

Udev had created /dev/usb/lp0 with the correct permissions (as far as we
could tell). Nevertheless CUPS did not recognize the printer, not via
usb:/dev/usb/lp0 and not via usb:/<maker>/<model>?serial=<serial number>
either. Strangely enough, /usr/lib/cups/backend/usb did list the printer
correctly as "Brother HL-5040 series".

As far as I understand udev, it should always use the lowest free lpX
node for a new printer. That can still cause problems if you have
several printers that are plugged in or switched on in random order, but
you should only ever get "lp28" if there are really 28 other (USB)
printers connected already to occupy lp0 to lp27. The maker/model/serial
method of specifying the DeviceURI was introduced to avoid the problem
of changing lpX numbers. (You can also write your own udev rule to give
each printer an additional symlink in /dev/ as an unambiguous
identifier; see Andrew's earlier mail.)

-- 
Regards,            | http://users.icfo.es/Florian.Kulzer
          Florian   |



Reply to: