Brother MFC-420CN print driver for OS/2: Linux - OS2

This is a discussion on Brother MFC-420CN print driver for OS/2: Linux - OS2 ; Managed to get this combination working the other day and thought I should pass along what I had learned. This all started when my Epson Stylus C84 died a few days ago. It reported "empty" on its Black cartridge and ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: Brother MFC-420CN print driver for OS/2: Linux

  1. Brother MFC-420CN print driver for OS/2: Linux


    Managed to get this combination working the other day and thought I
    should pass along what I had learned.

    This all started when my Epson Stylus C84 died a few days ago. It
    reported "empty" on its Black cartridge and I replaced it, but then
    the printer stopped feeding any black ink. After installing a
    second $20 cartridge and checking for an obviously loose vacuum hose
    I gave up on it.

    Unfortunately, in spite of several decades' worth of "Paperless
    Future" headlines I find I frequently need hard copy output. It
    seemed an opportune timeto see if I could get my sister Beth's
    Christmas present working: a Brother MFC-420CN multi-function
    peripheral with USB and Ethernet ports.

    http://solutions.brother.com/mfc420cn_us/en_us/

    The MFC-420CN has roughly the footprint of an 8.5x11 scanner and
    about twice its thickness. It has a paper feed on top, a front
    panel with a set of numeric/dial buttons, and a small 2-line LCD
    status display. It has a 100-sheet paper tray underneath and a set
    of front slots for digital media cards (CF/SD/xD/SM/MemoryStick).

    The MCF-420CN will perform most of its functions on its own. Using
    its front panel controls you can FAX to it or from it, use it as a
    B&W or color copier, and print JPEG images from -- or scan into
    PDF/JPEG files on -- a digital media card. In fact (although I
    haven't tested it) it appears that any computer and OS which can
    read and write (e.g.) CF cards can make full (if slighly
    inconvenient) use of this device. I didn't need all that -- I just
    wanted to use it as one of those "print when _I_ say Print"
    printers.

    The MFC-420CN does not come with OS/2 drivers (disappointing, but
    not all that unusual these days). I spent a few hours
    unsuccessfully searching the 'web for hints on possible alternate
    drivers before I connected the MFC's Ethernet port to my office
    network, set up its IP address as 192.168.0.99, and installed the
    MSWin32 drivers and software on my Win2k machine to make sure it
    printed. It did.

    I have a SuSE Linux machine ('manticore') on the same network which
    lets me create PDF files through a network (Samba) printer. This
    meant I could use the MFC-420CN by printing-to-PDF, copying the PDF
    file onto the Win2k machine, and printing the contents from the
    Win32 Acrobat reader. Usable in a pinch (and _much_ better than
    shuffling CF cards), but still inconvenient.

    From OS/2 I could PING the printer, but it didn't appear in a NET
    VIEW, and although I could set up a SHARE for the Win2k machine's
    "printer" I still didn't have an OS/2 driver to create the
    printstream it would require. I _did_ have a number of PostScript
    drivers already installed, though.

    Linux to the rescue (SuSE Linux 9.1 and Samba 3.0.8-1.1.1-SuSE, to
    be exact). Brother may not be developing OS/2 drivers but it _did_
    recently release Linux drivers for a number of its printers,
    including the MFC-420CN.

    http://solutions.brother.com/linux/en_us/index.html

    Brother offers an LPR driver and a CUPS "wrapper" file:

    MFC420CNlpr-1.0.0-1.i386.rpm
    cupswrapperMFC420CN-1.0.0-1.i386.rpm

    as well as SANE 1.0.7+ scanner support:

    brscan-0.0.12-0.i386.rpm
    brother-sane-src-1.0.0-r011.tar.gz

    After installing the print-related RPMs I defined the printer using
    SuSE's YaST2 configuration utility under Hardware->Printer as:

    Name: mfc420cn Descr: MFC420CN[*] Do Local Filtering
    Mfgr: Brother Model: MFC-420CN
    (which selected the CUPS PPD file)
    Connection: Direct TCP Port Printer
    Host name: brn_60fb75 Port: 9100

    (Note: the "host name" and other settings can be obtained from
    the MFC-420CN's front panel as the LAN Configuration Report by
    pressing [Menu/Set], [6], [6], and [BlackStart] )

    The host name brn_60fb75 had to be entered manually -- YaST2's
    [Lookup] button failed to find it.

    At this point, the [Test remote socket access] button reported
    success and the test page printed properly. Further, after
    restarting manticore's Samba daemons (smbd, nmbd) I could see a
    corresponding printer on my OS/2 desktop under "Samba Server" in my
    Connections->Network->File_and_Print_Client_Resource_Browser folder.
    From the icon's Properties notebook I chose the PSCRIPT.Tektronix
    Phaser 550 1200 icon and set up appropriate Job Property defaults.

    Close, but no see-gar. I could print to the MFC420 "printer"
    (LS:\\MANTICORE\MFC420CN), the job was visibly queued under OS/2,
    that job was requeued by the Linux CUPS printing system as shown by

    http://localhost:631/

    and the MFC-420CN reported "Receiving Data" on its LCD panel. All
    good evidence of activity, but but nothing ever printed. Jobs
    created on the Linux machine printed just fine, and their CUPS spool
    files _looked_ similar to what was spooled for OS/2 jobs.

    Here's the process:

    1) OS/2 application "prints" to the PSCRIPT driver, generating
    a PostScript stream to Samba on the Linux box.
    2) The PostScript stream is queued by CUPS, which then (courtesy of
    the Brother Linux driver) translates it to MFC-420CN-specific
    raster commands.
    3) This raster stream is sent to 192.168.0.99:9100.

    What was wrong? I'll compress three hours of fuzzy-headed thinking
    for you: by default, Samba was supplying CUPS with a 'raw' option
    for the incoming stream, so CUPS was dumping un-rasterized
    PostScript out to the MFC-420 and it was getting a bit confused.
    After using SWAT

    http://localhost:901/

    to clear out the "cups options" field in Samba's mfc420 printer
    entry and once again cycling power on the MFC-420CN everything
    worked just fine.

    It's wonderful! DeScribe prints just fine, and even crusty old
    WindowsDraw should be happy once I define an appropriate WinOS2
    remote printer.

    Is this a general solution? I don't know, but it's at least an
    option in some situations. If you have a printer but it doesn't
    have an OS/2 driver -- but the manufacturer offers a Linux driver
    for it or there's one at www.linuxprinting.org -- build yourself a
    Linux-based print server. Pick up one of those Dell run-forever
    Optiplex PII-300 machines which are selling for $25-50 these days,
    throw on SuSE, RedHat, or Debian Linux, and you have a print server
    with Ethernet, USB, and onboard video.

    Scanning? Works fine onto a 16 Mb CF card and stores the result in
    a folder on the card named Brother. FAXing? ... maybe tomorrow.


    Stuff I haven't looked into:

    1) The MFC-420CN's Network Configuration report lists
    (including FTP!) and . One of the Services is
    POSTSCRIPT_P1, which _seems_ to imply that the printer might
    accept PostScript directed at it in some fashion. I'm just not
    sure how to test it.

    2) Brother offers a Java-based 'web administration tool for Win32.
    It's not _entirely_ clear why this wouldn't run under Apache
    and Linux or OS/2, but it's a 25Mb download. If the protocol
    could be extracted an OS/2 or Linux tool could be created.

    Hope this helps...


    Frank McKenney, McKenney Associates
    Richmond, Virginia / (804) 320-4887
    Munged E-mail: frank uscore mckenney ayut minds pring dawt cahm (y'all)

  2. Re: Brother MFC-420CN print driver for OS/2: Linux

    Frnak McKenney wrote:
    > Managed to get this combination working the other day and thought I
    > should pass along what I had learned.


    To make a long story short: cool - congratulations!

    I'm pondering to setup a small (noise free) server box for tasks like
    yours. It looks like CUPS is another service to make such a project
    desirable.

    Ciao,
    Dani

+ Reply to Thread