# Brother MFC-L2750DW printer



## txerrenak (Apr 10, 2021)

Hello
I have a Brother MFC-L2750DW printer and FreeBSD version 12.2. I have not found a driver for the printer and I can't get it to print on both sides. There is a brlaser driver, but it does not work correctly for this printer.
Can you give me a solution?
Thanks in advance.


----------



## mononote (Apr 11, 2021)

Hello,
I'm not sure it would work, but you could try to use the brlaser port.
See also the github repository, your model has not been reported yet but it's worth a shot (use the usb cable).
Good luck.

Edit:
correction, it has been reported to work.


----------



## aragats (Apr 11, 2021)

Did you try using its .ppd file in your CUPS' configuration?
I think, that's the only "driver" they suggest for Linux, if you unpack the corresponding package (e.g. .deb), you'll find it:
	
	



```
./opt/brother/Printers/MFCL2750DW/cupswrapper/brother-MFCL2750DW-cups-en.ppd
```


----------



## txerrenak (Apr 11, 2021)

mononote said:


> Hello,
> I'm not sure it would work, but you could try to use the brlaser port.
> See also the github repository, your model has not been reported yet but it's worth a shot (use the usb cable).
> Good luck.
> ...


Yes, on Linux it does work. No problem. But on FreeBSD does not work. By using usb uri the printer is out of memory. As I said in my message, the brlaser driver is malfunctioning, it prints only strange characters.
Thanks.


----------



## txerrenak (Apr 11, 2021)

aragats said:


> Did you try using its .ppd file in your CUPS' configuration?
> I think, that's the only "driver" they suggest for Linux, if you unpack the corresponding package (e.g. .deb), you'll find it:
> 
> 
> ...


I don't understand what you are saying, I am not a computer scientist. I don't have any ppd file. I have tried installing the Linux driver for this printer, but it doesn't work. If I choose usb address, the printer is out of memory; if I choose dns, it prints only strange characters.
When I install the Linux driver, I get many error messages about files and directories not found (/var/db/dpkg/status, /usr/share/ppd/*.ppd no such file or directory, etc.).
Thanks.


----------



## aragats (Apr 11, 2021)

txerrenak said:


> I don't understand what you are saying


I thought you're using it over the network. USB may be different, I'm not sure how it appears when connected via USB.
Here is what I meant: you download its Linux driver from the official page ad .deb. Then unpack the archive by running:
	
	



```
mkdir printer
cd printer
ar x ../mfcl2750dwpdrv-4.0.0-1.i386.deb
tar xf data.tar.gz
```
You'll see the following directories structure:
	
	



```
% ls -1
control.tar.gz
data.tar.gz
debian-binary
etc
opt
usr
var
```
Now copy the corresponding .ppd file to the CUPS config directory:
	
	



```
cp opt/brother/Printers/MFCL2750DW/cupswrapper/brother-MFCL2750DW-cups-en.ppd /usr/local/etc/cups/ppd/
```
and let CUPS using that file when you add/modify printer via the web interface at http://localhost:631.


----------



## mononote (Apr 11, 2021)

txerrenak said:


> Yes, on Linux it does work. No problem. But on FreeBSD does not work. By using usb uri the printer is out of memory. As I said in my message, the brlaser driver is malfunctioning, it prints only strange characters.
> Thanks.


Sorry, somehow I missed the line on brlaser. I have a MFC-L2710DW and it works with that driver (and I tried to use Brother's ppd file with cups without success, but maybe I messed something).
Are you printing a pdf file (and how)? Are you using cups?


----------



## scottro (Apr 11, 2021)

The ppd idea is a good one. I got my Samsung printer working on FreeBSD that way. Installed a provided Linux driver on Linux, then just copied over the ppd file to my FreeBSD workstation. Scanning was a separate issue but sane.d has a configuration for my Samsung.  But as far as printing, I think that aragats explained the process well, and it's definitely worth trying, in an effort to get printing to work.


----------



## txerrenak (Apr 11, 2021)

mononote said:


> Sorry, somehow I missed the line on brlaser. I have a MFC-L2710DW and it works with that driver (and I tried to use Brother's ppd file with cups without success, but maybe I messed something).
> Are you printing a pdf file (and how)? Are you using cups?


Yes.
I tried to print a PDF file from Firefox by choosing the printer configured with cups. Error. I have tried with this printer driver for Linux and it prints but not duplex. I have tried it with a ppd and it gives me error.


----------



## txerrenak (Apr 11, 2021)

aragats said:


> I thought you're using it over the network. USB may be different, I'm not sure how it appears when connected via USB.
> Here is what I meant: you download its Linux driver from the official page ad .deb. Then unpack the archive by running:
> 
> 
> ...


I followed your very clear instructions step by step. But at the end I get an error.
Attached is an information file about this error.


----------



## mononote (Apr 11, 2021)

txerrenak said:


> Yes.
> I tried to print a PDF file from Firefox by choosing the printer configured with cups. Error. I have tried with this printer driver for Linux and it prints but not duplex. I have tried it with a ppd and it gives me error.


That's a shame. It prints only on one side and only "weird characters", as you said before? I wonder if it prints images correctly.

Sorry for stating obvious things, did you also try to use another application to print?
With zathura (zathura + zathura-pdf-mupdf) you can open a pdf file with "zathura file.pdf" and then press Ctrl+p to open the print dialog, then select the Brother printer and then there should be an option for Two Sided on Page Setup.
In the cups webpage you can configure the default printer options, but it shouldn't be necessary (it's just a default value).

Edit:
just to clarify, you have installed cups and bslaser and added your printer selecting one model with "bslaser" in the name?
Going in http://localhost:631/printers/ and selecting the printer that you have added, could you copy Description, Driver, Connector and Defaults?

Edit2:
it seems that the port of brlaser is using v6, but there have been changes since then (and that could be why some new printers are working).
Moreover, there is a pull request to add configurations of the new printers. You could try to clone the corresponding repository








						GitHub - QORTEC/brlaser: Brother laser printer driver
					

Brother laser printer driver. Contribute to QORTEC/brlaser development by creating an account on GitHub.




					github.com
				



and compile from source (in the readme it is stated that you would need some other packages, I'm not sure if those are ported on freebsd).
If it works then you would have your exact printer on CUPS.


----------



## aragats (Apr 12, 2021)

It's expecting the following file:
/usr/local/libexec/cups/filter/brother_lpdwrapper_MFCL2750DW.
There is postinstall script in the .deb package which creates that file by symlinking another file from the package.
You can just copy it:
	
	



```
cp opt/brother/Printers/MFCL2750DW/cupswrapper/lpdwrapper /usr/local/libexec/cups/filter/brother_lpdwrapper_MFCL2750DW
```
If everything will be working properly, you can indeed put necessary files in /opt and create symlinks in the corresponding locations ― just for clearness.
However, there are a couple of Linux executables in the package, hopefully you won't need them, otherwise it will be really hard to make the driver working.


----------



## memreflect (Apr 12, 2021)

It looks like your printer supports the Internet Printing Protocol (IPP) based on the specs I see on the Brother website, so you might try setting it up as a network printer using IPP if you're comfortable doing that.  No Linux emulation was required for me to get my Brother MFC-L3770CDW printer working over IPP since IPP is "driverless":

Below is what I did to get my printer working with CUPS:

Install the print/cups and print/cups-filters packages
Use `sysrc cupsd_enable=YES` to enable the CUPS service to start when booting the system
Use `service cupsd start` to start the CUPS service now
Navigate to http://localhost:631/admin and click Add Printer
Enter the username and password of either the root user or anybody belonging to the _wheel_ group when prompted
Select *Internet Printing Protocol (ipp)* and click Continue
In the Connection field, type *ipp://<ADDR>/*, replacing _<ADDR>_ with the host name or IP address of your printer, and click Continue
Type whatever name, description, etc. you want and click Continue
Select *Generic* make/manufacturer and click Continue
Select *{current_make_and_model} - IPP Everywhere™ *and click Add Printer
You may also try *Generic IPP Everywhere Printer*, though it didn't work as well for me.  This is technically the PWG Raster driver provided by cups-filters.

Select whatever options you want and click Set Default Options
Under the Maintenance menu, select Print Test Page
Btw, the host name advertised by the printer simply did not work for some reason when I tried it, and Avahi did not help either.  My solution/workaround was to add a DHCP reservation in my router for the printer's MAC address and use that IP address in CUPS instead of the non-working host name advertised by the printer.  There are probably better ways, but that's the one that worked for me.  Doing that (or giving the printer a static IP) also meant I could bookmark my printer's web interface, so I can continue to configure the printer's settings in my browser instead of using the tiny screen on the printer.

You can also perform steps 4-11 with a single lpadmin(1) command and step 12 can be done using a command as well, though you need to specify the full path to the executable since FreeBSD has its own /usr/bin/lp that will likely take precedence:

```
lpadmin -p 'printer-name' -D 'Printer Description (e.g. Brother MFC-L2750DW)' -L 'Printer Location (e.g. Lab 1)'  -m everywhere -v ipp://<ADDR>/ -E
/usr/local/bin/lp -d 'printer-name' /usr/local/share/cups/data/testprint
```

If you get a command not found error on an `lpadmin` command, it's because some commands like lpadmin(1) are located in /usr/local/sbin, and your PATH does not include that directory.

If you want to try the PWG Raster driver provided by cups-filters, replace `-m everywhere` with `-m 'drv:///cupsfilters.drv/pwgrast.ppd'` instead.


----------



## txerrenak (Apr 12, 2021)

I have tried printing a two-sided PDF file from an application other than Firefox (ePDFviewer) and found that it prints correctly without problems. Why doesn't the same thing happen in Firefox?
I am very grateful to all of you who have helped me with this problem.
A lot of thanks.


----------

