Hello, On Sep 14 20:58 Suffield, David wrote (shortened): > Yes having all the HPLIP supported product-ids available is a good idea. > > We are entering all HPLIP product-ids into the data/models/models.dat > file. Should be in the next HPLIP release. The 55-hpmud.rules file will > be generated from the data file. The default udev privileges will be > MODE=0666 for tar ball installs, but the distros can create there own > rules file(s) and policy. > > In order to help distros set their own user policies, we are including > the script file for generating the 55-hpmud.rules file in the tar ball.
Fine! Obviously such a fixed list of USB IDs makes it impossible that it works out-of-the-box for new but compatible models. Therefore I thought I could improve /etc/udev/rules.d/55-hpmud.rules by testing for the USB device class but it seems to be really tricky (or impossible) because different devices result very different USB device class values: "lsusb -v" shows e.g. for my DeskJet 3320c: ------------------------------------------------------------------- bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x03f0 Hewlett-Packard idProduct 0x7004 DeskJet 3320c ... bInterfaceClass 7 Printer bInterfaceSubClass 1 Printer bInterfaceProtocol 2 Bidirectional ------------------------------------------------------------------- so that one needs to find out the device class at interface level. But how should this work for a device with several interfaces like e.g. my LaserJet 1220: ------------------------------------------------------------------- bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x03f0 Hewlett-Packard idProduct 0x0417 ... bInterfaceClass 7 Printer bInterfaceSubClass 1 Printer bInterfaceProtocol 3 IEEE 1284.4 compatible bidirectional ... bInterfaceClass 7 Printer bInterfaceSubClass 1 Printer bInterfaceProtocol 2 Bidirectional ... bInterfaceClass 7 Printer bInterfaceSubClass 1 Printer bInterfaceProtocol 1 Unidirectional ------------------------------------------------------------------- here all interfaces belong to the same class "printer" (but the LaserJet 1220 is in fact a printer+scanner all-in-one-device). In contrast an OfficeJet 7210 printer+scanner+cardreader+fax all-in-one-device shows up as ------------------------------------------------------------------- bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x03f0 Hewlett-Packard idProduct 0x4111 ... bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 204 bInterfaceProtocol 0 ... bInterfaceClass 7 Printer bInterfaceSubClass 1 Printer bInterfaceProtocol 2 Bidirectional ... bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol ... bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 212 bInterfaceProtocol 0 ... bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 Bulk (Zip) ------------------------------------------------------------------- I cannot imagine how generic udev rules could be found so that HPLIP supported devices match but no other devices. Therefore it seems all one can do is to use a fixed list of the currently known USB device IDs. But this will force unexperienced users to update HPLIP (and request the newest HPLIP from the distributors) for each new model :-( Kind Regards Johannes Meixner -- SUSE LINUX Products GmbH, Maxfeldstrasse 5, 90409 Nuernberg, Germany AG Nuernberg, HRB 16746, GF: Markus Rex ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ HPLIP-Help mailing list HPLIP-Help@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hplip-help