Printer Autodetection

John (J5) Palmieri johnp at redhat.com
Sun Nov 13 14:09:16 PST 2005


HAL already does this for USB although we don't merge the foomatics
database.  We use it in Fedora similar to the way you described since
FC-3 where we basically get the make and model and then run it trough
the foomatics database to get the driver.  It might be nice to merge via
FDI files but the database is huge so I don't know what the performance
would be like.  Also the foomatics database doesn't match the IEEE
strings exactly but I guess that heuristic could be added to the program
that converts it to FDI files.  As for parallel printers I think they
are mostly a lost cause since you need a bi directional parallel cable
and you need to probe.  I would think a small program that has a button,
probe for new hardware or something like that would be useful there but
otherwise it isn't something that can be auto-detected when the printer
is plugged in. 

On Sun, 2005-11-13 at 16:34 -0500, brendan powers wrote:
> Hello,
> 
> I wrote some some software a little while ago that used hal to find
> printers, and then determined their drivers from the foomatic driver
> database. It occured to me that this would be a usefull feature for
> hal to have. I looked at the hal 0.5.X spec and saw the printer
> namespace. It would be very usefull to have these fields filled in by
> the printers IEEE-1284 identifier. This identifier contains the
> make,model, and languages this printer supports. This is very usefull
> information to have when detecting printer drivers. the Foomatic
> printer driver database has autodtect informatino for some printers
> that maches the make/model of the IEEE-1284 string to a printer
> driver. It would be trivial to conver the database into a set of FDI
> files that would allow hal to show the appropriate driver, and a set
> of alternate ones. Also, the languages information in the IEEE-1284
> string can be used to mach a printer to a 'generic' driver on some
> cases. Postscript or PCL compatible printers are a good example of
> this. It is very easy to retrieve the printers IEEE-1284 string, for
> parralel printers, there is a file in /sys(i think) that has the data,
> for usb printers, you can use the 0x84005001 IOCTL to retrieve the
> string. So i would think this would be fairly easy to implement. I
> don't really know to much about hal internals, so how hard would this
> be? Is it a good idea?
> 
> Thanks for you time.
> Brendan Powers.
> www.resara.com
> _______________________________________________
> hal mailing list
> hal at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/hal
-- 



More information about the hal mailing list