# [Solved] Brother MFP

## Cyril Graf

Greetings, dear fellows!

I'd be glad to hear any advises on the following issue.

I've sold my good old Xerox 3117 and bought an MFP Brother DCP-L2500DR with duplex and scanner. Scanner works. As for printer it works normally on spare partition with Debian, but doesn't print on Gentoo at all.

I've tried different configurations but no way.

At the moment there is a such configuration:

 - usb printing option in the kernel is disabled;

 - usb flag in package.use is enabled;

 - user added to groups lpadmin, lp, sys;

 - MFP set as a default printer;

 - all necessary directories were created;

 - CUPS daemon works;

 - the printer is detected;

 - the kernel IA32_EMULATION option is enabled;

 - statically compiled x86 32-bit binaries installed, scripts modified.

All seems to be done well, but all jobs in queue are "paused/stopped by user" and the printer is idle.

```

$ lpstat -a

Brother_DCP-L2500D принимает запросы с момента Вт 08 май 2018 21:44:38

$ lsusb

(...)

Bus 001 Device 004: ID 04f9:0321 Brother Industries, Ltd DCP-L2500D

(...)

# lpinfo -v

file cups-brf:/

network ipps

network https

network ipp

network http

network beh

network socket

direct usb://Brother/DCP-L2500D%20series?serial=(...)

network lpd

# lpinfo -m | grep brother

brother-DCPL2500D-cups-en.ppd Brother DCP-L2500D for CUPS

lsb/usr/brother/brother-DCPL2500D-cups-en.ppd Brother DCP-L2500D for CUPS

$ ls /usr/libexec/cups/filter/brother*

/usr/libexec/cups/filter/brother_lpdwrapper_DCPL2500D

$ ls /usr/lib64/cups/filter/

brother_lpdwrapper_DCPL2500D

```

PS  :Sad: 

Sincerely,

Cyril Graf.

St.-Petersburg, Ingria.Last edited by Cyril Graf on Tue Oct 30, 2018 6:28 pm; edited 1 time in total

----------

## grumblebear

For my old Epson multifunction device udev created the corresponding device node with group set to scanner instead of lp. Maybe the same is true for Brother. Find the device node with lsusb and check.

----------

## Cyril Graf

 *grumblebear wrote:*   

> For my old Epson multifunction device udev created the corresponding device node with group set to scanner instead of lp. Maybe the same is true for Brother. Find the device node with lsusb and check.

 

There are only the mouse and the printer:

```
# lsusb -t

/:  Bus 09.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M

/:  Bus 08.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M

/:  Bus 07.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/2p, 12M

/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/3p, 12M

/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/3p, 12M

/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/3p, 12M

    |__ Port 2: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M

    |__ Port 2: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 12M

/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/3p, 12M

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M

/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M

    |__ Port 1: Dev 5, If 0, Class=Printer, Driver=, 480M

    |__ Port 1: Dev 5, If 1, Class=Vendor Specific Class, Driver=, 480M

# lsusb

Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 001 Device 005: ID 04f9:0321 Brother Industries, Ltd DCP-L2500D

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 004 Device 002: ID 046d:c534 Logitech, Inc. Unifying Receiver

Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 009 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

```

----------

## grumblebear

And what does 'ls -l /dev/bus/usb/001/005' say? It should belong to group lp.

----------

## Cyril Graf

 *grumblebear wrote:*   

> And what does 'ls -l /dev/bus/usb/001/005' say? It should belong to group lp.

 

It belongs.

----------

## mir3x

Maybe try printing with another program ? I spent few hours trying to set my printer, then I tried with Evince or FoxIt Reader and it worked ( KDE Okular is not printing for me)

----------

## Cyril Graf

 *mir3x wrote:*   

> Maybe try printing with another program ? I spent few hours trying to set my printer, then I tried with Evince or FoxIt Reader and it worked ( KDE Okular is not printing for me)

 

I tried to print with different programs including lpr and Evince as well but all the same: the printer is idle, all jobs are "completed", but the printer is not printing ((

----------

## mir3x

So if the job is completed - it must be drivers issue

if you used brother-overlay - try from brother website, 

if u used from website try brother-overlay ( I checked there  is brother-dcpl2500d-bin package)

----------

## Cyril Graf

 *mir3x wrote:*   

> So if the job is completed - it must be drivers issue
> 
> if you used brother-overlay - try from brother website, 
> 
> if u used from website try brother-overlay ( I checked there  is brother-dcpl2500d-bin package)

 

Now I removed rpm-drivers and installed brother-overlay driver (dcpl2500d-bin).

```
# lpstat -a      

Brother принимает запросы с момента Ср 09 май 2018 20:41:40

# lpinfo -v            

direct usb://Brother/DCP-L2500D%20series?serial=(...)

file cups-brf:/

network ipps

network ipp

network http

network https

network beh

network lpd

network socket

$ lsusb -t

/:  Bus 09.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M

/:  Bus 08.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M

/:  Bus 07.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/2p, 12M

/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/3p, 12M

/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/3p, 12M

/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/3p, 12M

    |__ Port 2: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M

    |__ Port 2: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 12M

/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/3p, 12M

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M

/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M

    |__ Port 1: Dev 2, If 0, Class=Printer, Driver=, 480M

    |__ Port 1: Dev 2, If 1, Class=Vendor Specific Class, Driver=, 480M

$ ls -l /dev/bus/usb/001/002

crw-rw-r-- 1 root lp 189, 1 май  9 20:43 /dev/bus/usb/001/002

$ sudo dmesg | grep -i Brother

[    1.143431] usb 1-1: Manufacturer: Brother

$ /usr/sbin/lpinfo -m | grep -i brother

brother-BrGenML1-cups-en.ppd Brother BrGenML1 for CUPS
```

No any difference, all jobs complete, printer is silent ((

----------

## Cyril Graf

 *Cyril Graf wrote:*   

> No any difference, all jobs complete, printer is silent ((

 

But something new appeared in the log-file:

 *Quote:*   

> [CGI] Unable to execute ippfind utility: No such file or directory

 

but why do I need it, the printer is set locally..

----------

## Cyril Graf

I have added zeroconf globally then reemerged world with --newuse, the error with ippfind is gone, but printer is steel silent. Such a difficult issue, just dont know what to do.. (((

----------

## mir3x

ipp, avahi are needed for network printers only.

Have u checked troubleshooting->Generic LPR printer driver on amd64 section there ?

https://wiki.gentoo.org/wiki/Brother_networked_printer

( thats messy  :Very Happy:  I'm happy I dont use Brother, but I heard a lot of good things about Brother  :Very Happy:  )

As I understand it  requires glibc exaclty 2.25.12 ? Dont try compiling just download it.

----------

## Cyril Graf

 *mir3x wrote:*   

> ipp, avahi are needed for network printers only.

 

Yep, it didn't help.

When a job is completed, there is a phrase "paused by user"(instead of username) in the column "user".

Is it normal? May be it is not a driver issue?

 *mir3x wrote:*   

> Have u checked troubleshooting->Generic LPR printer driver on amd64 section there ?

 

I did as it is said, but i chose correct driver for my printer, not generic, and did the rest as prescribed in the article.

 *mir3x wrote:*   

> ( thats messy  I'm happy I dont use Brother, but I heard a lot of good things about Brother  )

 

I've got lots of different printers and plotters on my job (highproductive, wideformat...), and I can say that every vendor has good and bad models, and every model has good and bad sides. Generally, the newest is the worst )) Old xeroxes were bulletproof, new ricoh and kyocera are not bad, but only in high-productive niche. HP806DN is good as a printer, but as an MFP (hp enterprise 830) it's a fiasco...

As about Brother i cannot say nothing at all, i chose it for home and what is it - we'll see.  :Smile: 

 *mir3x wrote:*   

> As I understand it  requires glibc exaclty 2.25.12 ? Dont try compiling just download it.

 

Nothing is said about the specific version. May be I misunderstood, but i thought its just an example.

----------

## mir3x

OK about pause, It might be just stupid message ( or maybe something is wrong in gentoo prining wiki ) ,

I have "withheld" instead paused, but its printed: ( withehld ~ stop, suspend, withhold, cease, discontinue )

eg:

http://localhost:631/jobs?which_jobs=all

```
ID                                Name         User      Size        Pages        State                                                    Control

KM_bizhub_C35_PPD-245            Unknown    Withheld    142k    1    completed at nie, 13 maj 2018, 18:38:45                             [Reprint]

```

I would run those binaries from brother (rawtobr3, brprintconflsr3) if they dont seg fault, dont say about missing libs I would say they are good with glibc.

Try prining as root ?

eg.

lpr /etc/fstab

or just:

cat file > /dev/usb/lpX ( X is some number) 

( or it might be  /dev/bus/usb/Y/Z) 

- from[/quote][/code] cups web page log as root and try printing test page ?

- delete printer and add again via webpage ( maybe u  miswrote something via command line ? )

- dunno, click whatever u can in webpage, maybe there will be some usefull message  :Very Happy: 

----------

## apiaio

Hi Cyril.

I have in operation Brother DCP-L2500D more then one year. 

I think, that I installed printer as described in https://wiki.gentoo.org/wiki/Brother_networked_printer#Installing_the_drivers, but I am not sure.

If you want, we can compare configuration files.

----------

## Cyril Graf

 *mir3x wrote:*   

> OK about pause, It might be just stupid message ( or maybe something is wrong in gentoo prining wiki ) ,
> 
> I have "withheld" instead paused, but its printed: ( withehld ~ stop, suspend, withhold, cease, discontinue )
> 
> 

 

It's ok then. Witheld, that's right, I didn't know exactly how it is called on the CUPS web-interface in English.

 *Quote:*   

> Try prining as root ?
> 
> eg.
> 
> lpr /etc/fstab
> ...

 

I tried it all...   :Smile: 

----------

## Cyril Graf

 *apiaio wrote:*   

> Hi Cyril.
> 
> I have in operation Brother DCP-L2500D more then one year. 
> 
> I think, that I installed printer as described in https://wiki.gentoo.org/wiki/Brother_networked_printer#Installing_the_drivers, but I am not sure.
> ...

 

Hi!

Happy to hear such a good news. It means that my printer is able to print in gentoo.

The best help would be if you tell me what driver exactly did you chose? If you remember of course  :Smile: 

----------

## apiaio

 *Cyril Graf wrote:*   

> 
> 
> The best help would be if you tell me what driver exactly did you chose? If you remember of course 

 

This is copy and paste from CUPS

```
Description:   Brother DCP-L2500D series

Location:   Local Printer

Driver:   Brother BrGenML1 for CUPS (grayscale, 2-sided printing)

Connection:   usb://Brother/DCP-L2500D%20series?serial=E73915F6N597495

Defaults:   job-sheets=none, none media=iso_a4_210x297mm sides=one-sided
```

----------

## Cyril Graf

 *apiaio wrote:*   

>  *Cyril Graf wrote:*   
> 
> The best help would be if you tell me what driver exactly did you chose? If you remember of course  
> 
> This is copy and paste from CUPS
> ...

 

Thanks!

I suppose there's no difference:

```
Описание:   Brother DCP-L2500D series

Расположение:   Локальный принтер

Драйвер:   Brother BrGenML1 for CUPS (черно-белый, дуплексная печать)

Подключение:   usb://Brother/DCP-L2500D%20series?serial=E73916M7N897355

По умолчанию:   job-sheets=none, none media=iso_a4_210x297mm sides=one-sided
```

----------

## mir3x

SO maybe its all about that:

 *Quote:*   

> - usb printing option in the kernel is disabled;

 

apiaio How your kernel usb prining options ?

----------

## apiaio

 *mir3x wrote:*   

> SO maybe its all about that:
> 
>  *Quote:*   - usb printing option in the kernel is disabled; 
> 
> apiaio How your kernel usb prining options ?

 

```
 # cat /usr/src/linux/.config | grep PRINT

CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13

CONFIG_PRINTK=y

CONFIG_PRINTK_NMI=y

# CONFIG_SND_VERBOSE_PRINTK is not set

# CONFIG_USB_PRINTER is not set

# CONFIG_PRINT_QUOTA_WARNING is not set

CONFIG_PRINTK_TIME=y

# CONFIG_BOOT_PRINTK_DELAY is not set

# CONFIG_TEST_PRINTF is not set

CONFIG_EARLY_PRINTK_USB=y

CONFIG_EARLY_PRINTK=y

CONFIG_EARLY_PRINTK_DBGP=y

# CONFIG_EARLY_PRINTK_EFI is not set

# CONFIG_EARLY_PRINTK_USB_XDBC is not set

CONFIG_BINARY_PRINTF=y

```

----------

## Cyril Graf

```
uname -r

4.9.95-gentoo-may-2018
```

cat /usr/src/linux/.config | grep PRINT 

```
CONFIG_PRINTK=y

CONFIG_PRINTK_NMI=y

# CONFIG_SND_VERBOSE_PRINTK is not set

# CONFIG_USB_PRINTER is not set

# CONFIG_USB_CONFIGFS_F_PRINTER is not set

# CONFIG_USB_G_PRINTER is not set

# CONFIG_PRINT_QUOTA_WARNING is not set

CONFIG_PRINTK_TIME=y

# CONFIG_BOOT_PRINTK_DELAY is not set

# CONFIG_TEST_PRINTF is not set

CONFIG_EARLY_PRINTK=y

CONFIG_EARLY_PRINTK_DBGP=y

CONFIG_BINARY_PRINTF=y

```

----------

## apiaio

```
sed '/#/d'  /usr/src/linux/.config | grep  USB

CONFIG_USB_NET_DRIVERS=y

CONFIG_MEDIA_USB_SUPPORT=y

CONFIG_USB_VIDEO_CLASS=m

CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y

CONFIG_USB_GSPCA=m

CONFIG_DVB_USB_V2=m

CONFIG_DVB_USB_AF9015=m

CONFIG_SND_USB=y

CONFIG_SND_USB_AUDIO=y

CONFIG_USB_HID=y

CONFIG_USB_HIDDEV=y

CONFIG_USB_OHCI_LITTLE_ENDIAN=y

CONFIG_USB_SUPPORT=y

CONFIG_USB_COMMON=y

CONFIG_USB_ARCH_HAS_HCD=y

CONFIG_USB=y

CONFIG_USB_PCI=y

CONFIG_USB_ANNOUNCE_NEW_DEVICES=y

CONFIG_USB_DEFAULT_PERSIST=y

CONFIG_USB_MON=y

CONFIG_USB_XHCI_HCD=y

CONFIG_USB_XHCI_PCI=y

CONFIG_USB_EHCI_HCD=y

CONFIG_USB_EHCI_ROOT_HUB_TT=y

CONFIG_USB_EHCI_TT_NEWSCHED=y

CONFIG_USB_EHCI_PCI=y

CONFIG_USB_OHCI_HCD=y

CONFIG_USB_OHCI_HCD_PCI=y

CONFIG_USB_UHCI_HCD=y

CONFIG_USB_STORAGE=y

CONFIG_EARLY_PRINTK_USB=y
```

```
uname -r

4.12.12-gentoo

```

----------

## Cyril Graf

 *apiaio wrote:*   

> [code]sed '/#/d'  /usr/src/linux/.config | grep  USB
> 
> (...)

 

Well, the option values are the same, the issue probably has nothing to do with the kernel.

Thanks a lot anyway!

----------

## Cyril Graf

I don't know what I did, but now even the scanner is missing by xsane, and when I try to download a driver from the brother web cite, firefox gives me an error "you have no rights to save file". Qtransmission doesn't work as well. I think I did nothing and I don't understand what happened. And maybe it is the reason why the printer doesn't printing.

The only one thing I did lately: i added a rule

/etc/polkit-1/rules.d/10-udisks.rules

```
polkit.addRule(function(action, subject) {

        if (action.id == "org.freedesktop.udisks2.filesystem-mount" && subject.isInGroup("plugdev")) {

                return "yes";

        }

});
```

 - but if I remove it nothing is changing... ((

----------

## mir3x

1 parenthesis is too much '}' probably that one in last line.

No ideas about printer ... maybe some 'typo' also somewhere  :Very Happy: 

----------

## Cyril Graf

 *mir3x wrote:*   

> 1 parenthesis is too much '}' probably that one in last line.

 

The last one is must to be, it closes the JS-function.  :Wink: 

https://wiki.archlinux.org/index.php/Polkit

 *mir3x wrote:*   

> No ideas about printer ... maybe some 'typo' also somewhere 

 

Something wrong with my gentoo: Dolphin window closes silently while I browse it. I must repair this first.

----------

## Cyril Graf

 *Cyril Graf wrote:*   

> 
> 
> Dolphin window closes silently while I browse it. I must repair this first.

 

Now I see why. it's because of zeroconf use flag in my make.conf

```
cyril@gentoo ~ $ dolphin

(...)

kf5.kio.core: KSambaShare: Could not find smb.conf!

dolphin: symbol lookup error: /usr/lib64/libkdeinit5_dolphin.so: undefined symbol: _ZN9KFileItemaSEOS_
```

removing...

----------

## Cyril Graf

Dolphin works now but only after manually unmerging  and merging.

It wasn't because of samba, but because of old modules using by vlc+dolphin+phonon...

and the scanner is not working now because of this:

```
--- /etc/sane.d/dll.conf        2018-05-06 22:32:42.883080392 +0300

+++ /etc/sane.d/._cfg0000_dll.conf      2018-05-09 21:21:51.420164825 +0300

@@ -98,4 +98,3 @@

 hpaio

 # Add support for the Epson-specific backend.  Needs media-gfx/iscan installed.

 epkowa

-brother4
```

 - why these changes are necessarily I don't know, but I have to undo it back to my old config  :Mad: 

----------

## Cyril Graf

The printer is working!

May be the reason is that I removed all 32-bit glibc libraries in /usr/local/lib32 and the directory as well.

Thanks everyone!  :Very Happy: 

----------

