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

Re: Apple raster, PWG raster and non-free filters/drivers



Thank you for this level of detail. I think I've now absorbed most of it
and could explain it to others. Just a few inline comments to clarify my
thoughts.

On Fri 16 Dec 2016 at 17:44:23 -0200, Till Kamppeter wrote:

> On 12/16/2016 04:15 PM, Brian Potkin wrote:
> >In
> >
> > https://lists.debian.org/debian-printing/2016/12/msg00089.html
> >
> >Till Kamppeter wrote
> >
> > > So if you really want to have a Brother printer, make sure that
> > > it does IPP Everywhere or AirPrint. These are driverless printing
> > > methods which are in Ubuntu from version 17.04 (Zesty) on and
> > > they are also in current Debian Experimental.
> >
> >We are looking at fairly recent printers, of course, and choosing one
> >with AirPrint is not hard.
> 
> AirPrint exists already for several years. It was originally inteneded to
> allow driverless printing from iOS devices. AFAIK also Mac OS X supports
> printing on such printers. Thre are more than 2600 models listed by Apple:
> 
> https://support.apple.com/en-us/HT201311
> 
> The printer from the cited mail thread, the Brother DCP-J925N is on this
> list, meaning that it works as an AirPrint printer (at least when connected
> via network).
> 
> By the way, if someone has access to this printer, can he connect it via USB
> and run
> 
> sudo /usr/lib/cups/backend/usb
> 
> and post the output here? This will tell me whether the printer can also do
> driverless via USB.
> 
> >There will probably be a logo on the box and
> >the specifications will advertise AirPrint as a language or under
> >"mobile printing".
> 
> I did not check but it is probably the case as AirPrint exists already for
> longer time.

I did check and the manufacturers do seem to make a point of mentioning
AirPrint in their specs most of the time.

> >But what about IPP Everywhere? How is a user easily
> >to know the printer is capable of it? Looking at the specifications for
> >the ones listed at www.pwg.org (the DesignJet T830, for example) I can
> >see nothing which indicates PWG raster is supported.
> >
> 
> There is also a list for IPP Everywhere:
> 
> http://www.pwg.org/dynamo/eveprinters.php
> 
> with currently 25 model entries from HP (actually 7 distinct printers, the
> 25 names come from regional variations, like for example different power
> plugs, front panel languages, ...).
> 
> Printers get added here whenever a manufacturer self-certifies their
> appropriate new (or firmware-updated) models.
> 
> Note that the standard is only some weeks old and therefore there are not
> may models listed yet.

Hopefully manufacturers will see that adding their IPP Everywhere
printers to this list and putting it in their literature as important.

> The PWG has issued a logo which the manufacturers can put on their
> IPP-Everywhere self-certified products.
> 
> >Then there is the matter of whether a printer which does support PWG
> >raster is an IPP Everywhere printer. Apparently the Lexmark CS720de
> >understands PWG raster (https://github.com/apple/cups/issues/4932), but
> >does this make it an IPP Everywhere printer?
> 
> I am in contact with Lexmark developer Aveek Basu (who also represents
> Lexmark on PWG meetings). I am working together with him so that he tests
> whether Lexmark's printers work with the current development state of the
> art of the Linux printing stack, especially AirPrint and IPP Everywhere
> support and he will also run the self-certification for IPP Everywhere soon.
> The Lexmark CS720de is actually working as an IPP Everywhere printer, Aveek
> only needs to run it through the self certification.
> 
> The CUPS bug report is a result from my collaboration with Aveek. The tests
> serve both for Lexmark to know that their printers work driverless (AirPrint
> and/or IPP Everywhere) and for Mike Sweet and me that the support we
> implement in CUPS and cups-filters is working correctly.
> 
> >On the other hand, it seems
> >that a PDL key with "image/urf" means it is (almost?) certainly an
> >AirPrint printer. Or does it matter when it comes to driverless methods
> >if "image/pwg-raster" in the PDL is equated with "IPP Everywhere"?
> >
> 
> The raster formats Apple Raster and PWG Raster were developed to implement
> driverless printing. Formerly, only complex high-level Page Description
> Languages (PDLs) were standardized and due to their complexity not always
> cleanly implemented in all printers. There was no simple raster format to
> make up a standardized raster language for cheaper printers. So cheap
> printers always used proprietary raster formats requiring a driver and even
> higher-end printers needed a driver because their language implementations
> had quirks and one also could not poll printer-specific capabilities from
> the printers.
> 
> With one of the two raster formats as PDL, IPP 2.0 to allow for querying the
> capabilities info from the printer, and Bonjour/DNS-SD to find the printers
> in the network we have everything for driverless printing.
> 
> Keep in mind that a driver is any kind of printer-model-specific software or
> data.

It has taken me some time to really appreciate that. "driver" is such a
well-used word in the printer world that no one bothers to explain it.
 
> Apple Raster came first and was the raster PDL of AirPrint. Later the PWG
> created a public standard with the more sophisticated PWG Raster as raster
> PDL. The rest of AirPrint and IPP Everywhere is practically identical:
> Bonjour to advertise printers on the network, IPP 2.0 for polling capability
> info and send option settings as IPP attributes, and PDF and JPEG as further
> allowed PDLs (the raster PDL is required, the others are optional, clients
> are supposed to prefer PDF if the printer supports it).
> 
> Even Apple Raster and PWG Raster are very similar. The difference is that
> PWG Raster has more sophisticated page headers.
> 
> So as implementer as a good part of the client (cups-filters) I can consider
> AirPrint and IPP Everywhere simply as "driverless" printing with both PWG
> Raster and Apple Raster as supported PDLs (in addition to PDF and JPEG).
> 
> Also as the two raster formats are developed for being used for driverless
> printing, you can assume that a printer supporting them supports also the
> corresponding driverless printing method.

This was a main part of what I wanted. I think you are saying that if
avahi-browse shows image/pwg-raster the rule-of-thumb would indicate it
is an Everywhere printer.

That still leaves (for me) the lack of information in a vendor's
literature. Taking the Lexmark CS720de as an example. It's specs do not
mention pwg, so how is a user to know it could be an Everywhere printer?
How did you get to learn it had image/pwg-raster support?

> >A user can always use avahi-browse to get the printer's capabilities but
> >this is an after the event method. Some vendors do specfify PWG in their
> >literature but many don't, even when it is present.
> >
> 
> To recognize a driverless printer via avahi-browse, check the "pdl" entry in
> the TXT record. It lists the MIME types of the supported PDLs.
> "image/pwg-raster" stands for PWG raster and so for IPP Everywhere, and
> "image/urf" stands for Apple Raster and so Airprint.
> 
> Both are supported in both Debian Experimental and Ubuntu Zesty and they
> need a lot of testing.
> 
> cups-browsed sets up driverless printers completely automatically if in
> /etc/cups/cups-browsed.conf
> 
> CreateIPPPrinterQueues driverless
> 
> or
> 
> CreateIPPPrinterQueues all
> 
> is set.
> 
> With http://localhost:631/ or system-config-printer one can set up
> driverless printing by selecting the printer under the discovered network
> printers using the entry containing "driverless" and in the step to select
> the PPD/driver also select the entry containing "driverless" (requires
> Debian Experimentsl or Ubuntu Zesty with all the latest updates).

A final point. The quality of printing using driverless methods in all
cirumstances on Debian and Ubuntu is as yet untested extensively. My
experience so far has been good but there is more testing to do.

Cheers,

Brian.


Reply to: