Brother MFC 420CN/Cups

From Gentoo Linux Wiki

Jump to: navigation, search
Note: If you have another Printer from Brother that works with these instructions, please update the "Other Models that work" section on the main page of this article with the model of your printer. This will help keep this section as clean as possible without adding clutter, and will still inform other users that your model works.

Contents

[edit] Setup MFC 420CN printer drivers

Brother: Linux Driver Homepage

First go to the web site linked above and you'll need to download both the CUPS wrapper driver as well as the LPR driver. Note that these instructions may work for other models, however I can only test them on the model that I have.

As a reminder.. Filenames will vary with the model printer you are installing. Be carefull to substitute names with those that are appropriate for your model

Note: It is VERY important that you emerge the LPR driver first. If you accidently installed the cupswrapper first, then please let us know how you got it working. This is an ongoing unresolved issue. So PLEASE install the LPR driver, THEN the cupswrapper. It must be done in that order.

[edit] Install the MFC drivers

If it complains about folders not existing then create them, and rerun this command.

rpm -ihv --nodeps MFC210Clpr-1.0.0-1.i386.rpm

If cupswrapper complains about cupsd, ignore it.

rpm -ihv --nodeps cupswrapperMFC210C-1.0.0-1.i386.rpm

Here we simply copy the filter where Gentoo expects it to be.

cp /usr/lib/cups/filter/brlpdwrapperMFC420CN /usr/libexec/cups/filter/brlpdwrapperMFC420CN

If you are using a x86_64 system, you also need to move the 32 bit library to where Gentoo expects to find 32 bit libraries:

 mv /usr/lib/libbrcomplpr2.so /usr/lib32/

[edit] Restart CUPS

/etc/init.d/cupsd restart
Note: If you are using this plugged into the USB then you are done. If you have it plugged into the builtin ethernet, then continue on to the next section.

[edit] Configure MFC for ethernet access.

This next section is not intended to be all inclusive. If you need help with cups then this wiki offers other great articles to help you through.

[edit] Starting CUPS configuration

Open you favorite web browser

/usr/bin/firefox

Then put this in the URL field

[edit] Configure CUPS

You'll be presented with several options, you want to choose "Modify Printer" It will then pop up a dialog box asking you to log in.

  • enter root for name
  • enter root password for password

Now on the next window you will be presented with two text boxes

  • Location can be left blank, but can have something in it for reference sake.
  • Description can be left blank, but can also have something in it for reference sake.

Now click continue

Now you will have to choose a device.

  • Appsocket/HP JetDirect

Make sure this is selected from the drop down list. Then click continue

Now you will have to set the device URL

  • socket://192.168.0.10:9100

In my case this is the IP address that I chose. (Read the MFC's manual to learn how to set the IP address.) Click Continue

Select the make. In this case Brother

  • Brother

Click Continue

Select the printer In my case it is

  • Brother MFC-420CN CUPS

Click finish

[edit] Restart CUPS

/etc/init.d/cupsd restart

[edit] Toubleshooting

  • PID XXXX stopped with status 22!

If you can't print and are getting an error in /var/log/cups/error_log,"PID XXXX stopped with status 22!" There are two things we can try.....

1: Change the first line of /usr/lib/cups/filter/brlpdwrapperMFC210C to

#! /bin/tcsh

2: Copy the filter from /usr/lib to /usr/libexec

cp /usr/lib/cups/filter/brlpdwrapperMFC420CN /usr/libexec/cups/filter/brlpdwrapperMFC420CN 
/etc/init.d/cupsd restart
  • PID XXXX stopped with status 2!

If you can't print and are getting an error in /var/log/cups/error_log,"PID XXXX stopped with status 2!" Try reinstalling the cupswapper, and copying the filter to libexec.

rpm -ihv --nodeps --force cupswrapperMFC420CN-1.0.0-1.i386.rpm
cp /usr/lib/cups/filter/brlpdwrapperMFC420CN /usr/libexec/cups/filter/brlpdwrapperMFC420CN
/etc/init.d/cupsd restart
  • set: Variable name must begin with a letter.

If you get the error "set: Variable name must begin with a letter." You can try:

tcsh /usr/local/Brother/cupswrapper/cupswrapperMFC420CN-1.0.0 -i
  • filter 'xxxxx' for 'xxxxx' cannot be found

If you get the error "filter 'xxxxxx 'xxxxxx' cannot be found" Try copying the filter from /usr/lib to /usr/libexec

cp /usr/lib/cups/filter/brlpdwrapperMFC420CN /usr/libexec/cups/filter/
/etc/init.d/cupsd restart
  • unable to print, printer lights up and says receiving data but immediately says sleep again

This problem suddenly happened after a world update. After investigation the problem turned out to be that the print process was deleting the /usr/local/Brother/inf/brMFC7820Nrc file (MFC7820N in my case, file name will vary). I fixed this by first uninstalling everything (may not be necessary):

rpm -e cupswrapperMFC7820N-2.0.1-1.i386
rpm -e brmfc7820nlpr-2.0.1-1.i386
rm -rf /usr/local/Brother
rm -f /usr/libexec/cups/filter/brlpdwrapperMFC7820N

Then follow the install instructions all over again, but before attempting to print change some permissions like this:

chmod a-w /usr/local/Brother/inf
chmod a-w /usr/local/Brother/inf/brMFC7820Nrc

The file will now no longer be overwritten and printing should work again!

  • Error: "Printer not connected; will retry in 30 seconds..."

With some Printers CUPS put out this Message after trying to print the testpage. The Problem can be solved with a change in /etc/cups/cupsd.conf. Simply add the following line in it.

FileDevice YES

Then do the following and use the new created printer.

lpadmin -p DCP-115C -E -v file:/dev/usblp0 -P /usr/share/cups/model/brmfc210c_cups.ppd
Personal tools