Brother HL-2270DW

Posted Thursday, February 19th 2015 in FreeBSD - Permalink

Getting printing to work with a networked Brother printer was kind of a pain. I have set up the printer to use Ethernet. To get it to work, you will need the following ports:

cups-1.7.3_1                   Common UNIX Printing System: Metaport to install complete system
cups-base-1.7.3_4              Common UNIX Printing System: Server
cups-client-1.7.3_4            Common UNIX Printing System: Library cups
cups-filters-1.0.62_1          Backends, filters and other software (was part of the core CUPS)
cups-image-1.7.3_3             Common UNIX Printing System: Library cupsimage
cups-pstoraster-8.15.4_8       Postscript interpreter for CUPS printing to non-PS printers
foomatic-db-20150214           Database for integrating printer drivers with common spoolers
foomatic-db-engine-4.0.12,2    Foomatic database engine
foomatic-filters-4.0.17_2      Foomatic wrapper scripts
ghostscript9-9.06_10           Ghostscript 9.x PostScript interpreter
gutenprint-base-5.2.10         GutenPrint Printer Driver
gutenprint-foomatic-5.2.10     GutenPrint Printer Driver

You can access your CUPS settings at


Now, add a printer. Set up your printer to use the following connection setting.


In the next page, give your printer an intuitive name. On the next screen, select the following driver.


You should now be able to print a test page!


I was able to get the Brother Linux drivers to work with FreeBSD.  Download both the CUPS wrapper and the LPR driver from the Brother website.  Then, untar them, as the .deb files are simply .tar files in hiding.

After you have them unpackaged, edit the file usr/local/Brother/Printer/HL2270DW/cupswrapper/cupswrapperHL2270DW-2.0.4 and replace all paths in it with FreeBSD-appropriate paths. Now, execute the script. It should create the .ppd file in /usr/local/share/ppd. You can now add this with a new printer.

Another problem was that one of the scripts ran by the filter was not executing properly. It did not have execute permissions set on it. This was the file /usr/local/libexec/cups/filter/brlpdwrapperHL2270DW.

Finally, I had a problem with duplex not working right. The settings in the print dialog in programs was not applying to the printer, nor were the default settings in the CUPS admin interface. I was able to change the settings by modifying the file /usr/local/Brother/Printer/HL2270DW/inf/brHL2270DWrc and changing the Duplex setting.

List Posts Newest Posts Page 1Next Page