MFC-7820N

MFC-7820N

MFC-7820N Foomatic/Postscript PPD / print driver issues

The Brother MFC-7820N Foomatic/Postscript PPD driver often displays an error when printing graphics (including in PDF files) and sometimes freezes altogether:

  • ERROR NAME;
    • ioerror COMMAND;
      • fill
    OPERAND STACK;

It is not recommended to use this PPD driver. (Note: The Foomatic/Postscript driver issue has been reported - see Bug #175449 )

MFC-7820N BR-Script3 PPD / print driver issues

While the Brother MFC-7820N BR-Script3 will successfully print graphics, it can be very slow (up to 4 minutes per image) and occasionally also freezes.

It is possible, but not recommended, to use this PPD driver.

MFC-7820N CUPS print drivers

  • The BR-Script3 and Foomatic/Postscript PPD driver files do not work well with graphics (the Foomatic/Postscript PPD often doesn't work at all). Printing graphics can take longer than 4 minutes, or can freeze altogether.

Install the Brother CUPS drivers instead:

sudo apt-get install brother-lpr-drivers-laser brother-cups-wrapper-laser

These CUPS driver packages also work for these Brother laser models: DCP-7010 DCP-7020 DCP-7025 DCP-8060 DCP-8065DN FAX-2820 FAX-2920 HL-2030 HL-2040 HL-2070N HL-5240 HL-5250DN HL-5270DN HL-5280DW MFC-7220 MFC-7225N MFC-7420 MFC-7820N MFC-8460N MFC-8660DN MFC-8860DN MFC-8870DW.

  • My printer is on a network (at LAN IP address 192.168.0.125 which is set manually from the printer console). (K)Ubuntu will find the printer on the network automatically (assuming all firewalls are turned off) and install the correct drivers.

Menu -> System -> System Settings -> Printer configuration -> New Printer -> New Network Printer

At this stage my printer was automatically recognized and the device URI filled in for me as

socket://192.168.0.125:9100

I was able to name the printer and select the printer driver:

-> Brother -> MFC-7820N for CUPS

Avoid the "MFC-7820N -> BR-Script3" and the "MFC-7820N -> Foomatic/Postscript" options (see above).

  • In my firewall, I allowed all traffic to/from 192.168.0.125. On networks where I have multiple Brother printers, I opened port 9100 (in and out) for the entire subnet 192.168.0.1/24 (i.e. 192.168.0.1 - 192.168.0.255).

Other models

My 7820N model is installed by (K)Ubuntu automatically, but other models may need the installation of the LPR and cupswrapper drivers individually.

Search the package manager for a package that corresponds to your model first. If none is available, then .deb packages for the drivers for each model can each be downloaded from the Brother website. Then install them (this example uses the MFC-7340 drivers):

sudo apt-get install ia32-libs

sudo dpkg -i --force-all brmfc7340lpr-2.0.2-1.i386.deb

sudo dpkg -i --force-all cupswrapperMFC7340-2.0.2-1.i386.deb

Scanner

These instructions are for a networked scanner/printer. There are other instructions for a USB-connected scanner/printer.

  • Install pre-requisites (if not already installed):

sudo apt-get install sane-utils

  • The 7820N uses a brscan2 driver, as listed here. Download the .deb package for the drivers for the printer (use the appropriate 64-bit or 32-bit version -- replace amd64 with i386 if needed) and install them:

sudo wget -O brscan_driver.deb http://www.brother.com/pub/bsc/linux/dlf/brscan2-0.2.5-1.amd64.deb

sudo dpkg -i brscan_driver.deb

If you would like to use the Scan key on the scanner/printer itself, then also install the scankeytool:

sudo wget -O brscan_scankeytool.deb http://www.brother.com/pub/bsc/linux/dlf/brscan-skey-0.2.1-3.amd64.deb

sudo dpkg -i brscan_scankeytool.deb

  • Check to see if the driver is installed:

sudo dpkg -l | grep Brother

  • Add a network scanner entry for your model. (brsaneconfig2 is the command for the brscan2 driver.)

brsaneconfig2 -a name=SCANNER model=MFC-7820N ip=192.168.0.125

  • Check to see if the network scanner is recognized:

brsaneconfig2 -q | grep SCANNER

sudo cp /usr/lib64/libbrscandec2.so.1.0.0 /usr/lib

sudo cp /usr/lib64/sane/libsane-brother2.so.1.0.7 /usr/lib/sane

sudo cp /usr/lib64/sane/libsane-brother2.so.1 /usr/lib/sane

sudo cp /usr/lib64/sane/libsane-brother2.so /usr/lib/sane

sudo cp /usr/lib64/libbrcolm2.so.1.0.1 /usr/lib

sudo cp /usr/lib64/libbrcolm2.so /usr/lib

sudo cp /usr/lib64/libbrscandec2.so.1 /usr/lib

sudo cp /usr/lib64/libbrscandec2.so /usr/lib

sudo cp /usr/lib64/libbrcolm2.so.1 /usr/lib

(As of Precise Pangolin 12.04 LTS my scanner is working using these steps.)

sudo kate /lib/udev/rules.d/40-libsane.rules

and add either (the second one is for the MFC-7820N specifically, which I used, whereas the first one is generic for all Brother scanners):

# Brother scanners

ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"

or

# Brother 7820N scanner

ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="0181", ENV{libsane_matched}="yes"

then reboot.

  • Install a scanning utility, such as Xsane:

sudo apt-get install xsane

then start it:

Menu -> Applications -> Graphics -> Xsane Image Scanner

Scan a sample image using the Scan button. If it works then setup is complete.

Scanning utilities

There are many utilities for use with scanning.

Xsane

Xsane is the standard scanning utility for Linux. Install:

sudo apt-get install xsane

gscan2pdf

Gscan2pdf scans directly to a PDF document. Install:

sudo apt-get install gscan2pdf

Tesseract

Tesseract is a command-line OCR. Install:

sudo apt-get install tesseract-ocr

Fax

  • If using a firewall, make sure traffic to the IP address of the scanner/printer (in my example 192.168.0.125) is enabled.

  • Note: The following steps are no longer necessary if you have installed the packages:

sudo apt-get install brother-lpr-drivers-laser brother-cups-wrapper-laser

  • Install pre-requisites if using a 64-bit OS:

sudo apt-get install ia32-libs

  • Create spool directory and Cups directory if they do not exist:

sudo mkdir /var/spool/lpd

sudo mkdir /usr/share/cups/model

  • Download drivers and install them.

sudo wget -O brfax_lpddriver.deb http://www.brother.com/pub/bsc/linux/dlf/brmfcfaxlpd-1.0.0-1.i386.deb

sudo wget -O brfax_cupsdriver.deb http://www.brother.com/pub/bsc/linux/dlf/brmfcfaxcups-1.0.0-1.i386.deb

sudo dpkg -i --force-all brfax_lpddriver.deb

sudo dpkg -i --force-all brfax_cupsdriver.deb

  • Check to see if the driver is installed:

sudo dpkg -l | grep Brother

  • Copy the PPD files:

sudo cp /usr/share/cups/model/brfax_cups.ppd /usr/share/ppd

sudo /etc/init.d/cups restart

  • Secure the brfax CUPS filter file:

sudo chmod 755 /usr/lib/cups/filter/brfaxfilter

sudo /etc/init.d/cups restart

  • Check the CUPS settings to see if the BRFAX shows up as a listed printer (usually with the Device URI of usb:/dev/usb/lp0). If it does, then you are done. If not, use the next step to complete configuration.

  • Configure the Fax options through a web-browser interface:

http://localhost:631/printers

-> BRFAX -> Modify Printer -> Other network printers: LPD/LPR Host or Printer (ticked) -> Continue -> Connection: lpd://192.168.0.125/binary_p1 -> Continue -> Description: BRFAX -> Location: Home network -> Continue -> Make: Brother -> Continue -> Model: Current Driver - BRMFCFAX for CUPS -> Modify Printer

  • Send a test fax to make sure the driver is functioning correctly:

brpcfax -o fax-number=(fax-number) (filename)

(Note: You will need Java installed to use brpcfax. The easiest way to install Java is to install kubuntu-restricted-extras, which also installs other programs, or install openjdk-6-jre alone:)

sudo apt-get install kubuntu-restricted-extras

:or, alternatively

sudo apt-get install openjdk-6-jre

Sending Faxes

The brpcfax utility only will send files in Postscript (.ps) format. The easiest way to accomplish faxing is to create a Kubuntu menu item (in the Office submenu, for example) entitled Send Fax with the Command:

brpcfax sendfax.ps

Any program can then print to a file named sendfax.ps.

Starting the menu item will then invoke the brpcfax utility to send the file.

Associate brpcfax with Postscript files as an output option

This method entails associating Postscript files with the brpcfax utility.

Menu -> System -> System Settings -> Advanced -> File Associations -> Configure file associations -> application -> postscript -> Application preference order: Add -> Select the program for the file type: brpcfax -P BRFAX -o PAPER=A4 -> Ok -> Apply

Now any document saved as a Postscript (.ps) file can be faxed from the Dolphin (or Nautilus) file manager. Right-click on the saved Postscript file and use the "Open With -> brpcfax" option.

Sending faxes from Firefox

  • Print as a Postscript file.
  • Using the "Open With -> brpcfax" method as described in the preceding section, fax the saved file from Dolphin (or Nautilus).

Sending faxes from OpenOffice

  • Run spadmin doing from the command-line interface terminal:

/usr/lib/openoffice/program/spadmin

-> New Printer -> Connect a fax device -> Next -> Use the following driver for this fax connection: A specific driver, to adapt the format to another printer (ticked) ->

-> Please select a suitable driver: Generic Printer (ticked) -> Please enter a command line appropriate for this device:

/usr/bin/brpcfax -o fax-number=(PHONE)

-> Next -> Please enter a name for the fax connection: Fax printer -> Finish

Troubleshooting

  • ia32-libs allows 32-bit drivers to be used on 64-bit systems. Some printer drivers are only available in 32-bit versions. If so, install ia32-libs first:

sudo apt-get install ia32-libs

This is useful if your printer only has a 32-bit driver available (designated by i386 in the name. 64-bit drivers are designated with amd64 or x86_64 in the name).

If you don't know whether your system is a 32-bit or 64-bit system:

uname -a

You should see either i386 or x86_64 somewhere in the result.

Other Resources

HardwareSupportComponentsPrintersBrother/MFC-7820N (last edited 2012-05-22 23:38:59 by perspectoff)