Wrong printer model is preselected when adding a printer

Bug #54362 reported by Michal Suchanek
24
Affects Status Importance Assigned to Milestone
gnome-cups-manager (Ubuntu)
Invalid
Low
Unassigned

Bug Description

For autodetected (ie USB printers) the printer model information is available. Thus it should be possible to automatically preselect a driver that matches the printer or is very close.

For HP DeskJet 5440 the first DeskJet driver is selected. This is clearly suboptimal, a driver >= 5000 should be selected (which is quite a few screenfuls lower).

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

I'm using Dapper 6.06 LTS.
I have the same problem with my HP DeskJet 3820.

Step to reproduce:
1) Start gnome-cups-manager.
2) Click "New printer".
3) Under "Use a detected printer" select the printer that was detected by the HPLIP backend, usually this entry has an underscore in it. In my case HP DESKJET_3820.
4) Click Forward.

Now you see that the wrong printer model is (pre)selected by gnome-cups-manager (see screenshot in attachment).
DeskJet is (pre)selected while DeskJet 3820 is available in the list!

This problem only appears for printers that use the HPLIP backend. When I choose the CUPS USB backend entry under "Use a detected printer" the right printer model is (pre)selected.
So it looks like gnome-cups-manager handles the hplip backend different than the usb backend.

This bug affects nearly everyone with a HP InkJet printer, since the HPLIP backend should be used with HP printers to allow printer maintenance.

Changed in gnome-cups-manager:
status: Unconfirmed → Confirmed
Revision history for this message
Till Kamppeter (till-kamppeter) wrote : Re: Wrong printer model is preselected when adding a HPLIP printer

The problem is that often the model information which a printer reports back on an auto-detection request (device ID) is not in printer database at it is not known to us. And as it often does not match the exact writing of the human-readable printer name in the printer list, the matching sometimes fails.

In printerdrake which I have developed at Mandriva in the last 6 years, I have implemented a fuzzy matching which succeeds in very many cases (but is also not 100% perfect). If we replace the unmaintained gnome-cups-manager by printerdrake, probably many of these issues will go away.

See feature request:

https://features.launchpad.net/distros/ubuntu/+spec/printerdrake

Changed in gnome-cups-manager:
importance: Undecided → Low
Revision history for this message
Mikel Ward (mikelward) wrote :

Couldn't we at least try to do a case insensitive match on the device id against the model list? In this case, the name is so obviously correct.

Alternatively, would it be worthwhile to have a map from device ids to models?

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Case-insensitive matching probably helps in many cases, but as gnome-cups-manager is not maintained any more it will probably not be implemented there. printerdrake does case-insensitive matching, it is one of the many methods to improve the correct model assignment.

The map from the device ID to the models already exists and is used by the gnome-cups-manager. It is foomatic-db, the Foomatic database from linuxprinting.org. Unfortunately this map is not complete, as we do not have the device IDs of all listed printers.

Revision history for this message
Mikel Ward (mikelward) wrote : Re: [Bug 54362] Re: Wrong printer model is preselected when adding a HPLIP printer

Cool.

Does this mean that the hp 3550 is not in foomatic-db, or that
gnome-cups-manager doesn't look the device id up in foomatic-db?

If it's the first, should I submit a bug/patch against foomatic-db?

Revision history for this message
Till Kamppeter (till-kamppeter) wrote : Re: Wrong printer model is preselected when adding a HPLIP printer

The HP DeskJet 3550 is in the database:

http://www.linuxprinting.org/show_printer.cgi?recnum=HP-DeskJet_3550

and it has even the device ID strin registered. So it seems to be a problem of gnome-cups-manager. Perhaps it does not extract the right bits from the CUPS auto-detection output.

Can you do

sudo rmmod usblp
sudo modprobe usblp
sudo lpinfo -l -v

and post the output here?

Revision history for this message
Mikel Ward (mikelward) wrote :
Revision history for this message
Mikel Ward (mikelward) wrote :
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

The strange thing here is that the device IDs reported by "lpinfo -l -v" are different for the "hp:/..." and the "usb:/..." URIs. This explains why with the "usb:/..." URI the correct model gets chosen and with the "hp:/..." URI not. The device ID for the "usb:/..." URI seems to match the ID in the Foomatic database entry exactly. The only difference for the manufacturer and model parts of the IDs is the lower-case "hp" versus the upper-case "HP", so a case-insensitive matching would probably already help here.

How well does the matching by the CUPS web interface work? Go to http://localhost:631/ with a browser, then choose "Administration" and then "Add printer". Follow the steps of the wizard. Once choose the USB URI in the "Device" step and see whether CUPS chooses the right model in the following step. Then choose the HP URI in the "Device" step and see what CUPS chooses in the next step. If asked for user name and password enter your user name and password.

Changed in gnome-cups-manager:
status: Confirmed → Needs Info
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for gnome-cups-manager (Ubuntu) because there has been no activity for 60 days.]

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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