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

Re: Does anyone know how to configure a Brother MFC-J5720DW with cups?

On Sat 12 Mar 2016 at 23:43:27 -0600, David Wright wrote:

> On Sat 12 Mar 2016 at 09:56:37 (+0000), Brian wrote:
> > The PDL of choice for AirPrint capable devices is PDF. A PDF document
> > sent to an Airprint capable printer is converted to BUL (the Brother
> > Unknown Language) as it would be if it was processed on a workstation by
> > CUPS.
> > 
> > Note that this is a conversion, not an interpretation. An interpreter
> > produces a raster image and this happens later when the RIP deals with
> > BUL.
> So you appear to be saying that what passes through the AirPrint wire
> or wifi link is a PDF. The printer then converts it to BUL, then raster.

The file type sent by Safari (say) from an iOS device is controlled by
Apple. Observation shows it is PDF.

> > The important word is "direct". The MFC-J5720DW doesn't have a  PDF
> > interpreter. Hence the silence.
> So if a PDF arrives by AirPrint, how does the MFC-J5720DW interpret it
> if it doesn't have a PDF converter? (I am genuinely ignorant and confused.)

I've said specifically it has a PDF converter. It must have; the printer
does not understand PDF.

> I'm used to this:
> Paper -> scanner -> PDF containing image -> [...wifi...] -> computer
> where the PDF is really just a container with an image in it.
> And then its converse (but not its inverse):
> Computer PDF -> CUPS -[convert]-> BUL -> [...wifi...] -> BrotherPrinter -[RIP]-> paper
> where the Computer PDF contains some postscript-like code mixed
> in with fonts etc which has to be "converted".
> So now with AirPrint we have:
> Phone PDF -[no-driver]-> [...wifi...] -> AirPrint -[convert]-> BUL -[RIP]-> paper
> Linux computer PDF -> CUPS -> [...wifi...] -> AirPrint -[convert]-> BUL -[RIP]-> paper

That last line is not correct for using Debian CUPS with an iOS device.
The process is:

iOS device -> CUPS (BUL out) -> Printer -> Print

With CUPS the process is:

            This is done by CUPS
| Input file -> convert to PDF -> Convert to BUL | -> Printer does something

Because the sending device is driverless all I am saying (I have no
special insight) is that with Airprint we have:

                                 Done on the printer
iOS device -> Sends PDF -> | Convert to BUL -> Printer does something |

One filtering stage has to be moved to the printer. I do not know how it
is done but it reasonable to guess the same method which CUPS uses is 
also used. What I am sure about is that there is no PDF interpreter on
the printer. Brother already have the technology to convert from PDF to
BUL and, as a practical point, an interpreter would raise the cost of
production of the printer.

Substitute PS, PCL, QPDL etc for BUL to see how other manufacturers 
might deal with AirPrint.

> but what does the backend of CUPS have to do? Why not just
> cp ~/my-file.pdf dnssd://Brother%20Printer...
> if you're not bothered about queueing/scheduling etc.

The part played by what is in the Bonjour broadcasts is crucial to the
whole thing working. Apart from the questionable use of cp, IPP is used
for printing and is what is advertised in the broadcasts.

The CUPS backend converts PDF to BUL. But, as it happens, you do not
need cupsd to print to an AirPrint printer.

Reply to: