Friday, December 12, 2008

Linux and Brother MFPs

I've spent some time at my parents' lately. My dad has a huge beast called Brother DCP-9045CDN in the basement office. It's a "MFP", or multi-function printer. It's a scanner/colour printer combo that can also copy. It has a 35 page automatic paper feeder tray.

Ages ago when multifunction devices were introduced it was the age of "winprinters" and "winmodems" - dumb printers and modems that needed pretty advanced and hardware close drivers to work. The multifunction devices were exactly the same. Some of these worked with Linux but everyone were better off avoiding the win* hardware. Winmodems have since gone the way of the dinosaur it seems. I've not researched MFPs in general but this Brother device is very Linux friendly. So friendly is that Brother provides drivers in both RPM and DEB formats.

I'm plesantly surprised and happy :-)

Looking into this device I found that the printer supports PCL and BR-Script. BR-Script seems a very capable Postscript clone. No need for downloading drivers: just open your CUPS (the Linux/Unix/OS X printer software) configuration interface and configure it as a br-script brother device. This printer has the IP address 192.168.2.45, so I tell CUPS the printer URL is lpd://192.168.2.45/AUTO/ (does anyone know what the IPP URL for these devices are?) CUPS has a good set of Brother drivers and I selected the one described as "Brother DCP-8040 BR-Script3". Once set up it printed at once.

To use the scanner I needed to go to Brother.com and follow the links do support/download drivers and select Linux. I downloaded the .deb package, ran dpkg -i on it on my Ubuntu 8.04 (Hardy) machine. I guess if I hadn't fiddled with this Firefox would have run a GUI installer on the package for me so I just would have had to click "OK". The package contained SANE drivers. SANE is the standard scanner framework on Linux. I just had to run "brsaneconfig2 -a name=dcp9045 model=DCP-9045CDN ip=192.168.2.45" as root - very clearly documented on the site. Then I ran "kooka" (KDE scanner program) from the KDE menu, it asked me what scanner I wanted to use, I selected the Brother one. Insert paper in the scanner press "scan" and it just worked.

*grumble* When Linux is as easy as 1-2-3 - where is the fun in it? >:-)

No comments: