How do I get Brother DCPL2550DN printer to work on openSUSE?

Dear openSUSE’ers

I am looking for guidance in understanding and overcoming the following problem. I have a Brother DCPL2550DN laser printer and scanner. It is advertised to work under Linux. The drivers can be obtained from here (link to Brother DCP L2550 DN driver download page). The drivers for printer and scanner come either separatedly or both can be installed using an installer script. I tried both methods with same result (afterall the script is just a wrapper). The printer can print at test page from its own internal menu. It can also copy OK.

I got the scanner to work fine, for example using XSANE and GIMP. No problems. The scanner driver is 64 bit, last version was released in January 2021.

The printer on the other hand is giving me troubles and I cannot figure out how to overcome them. There are worrying signs: the driver is 32-bit and released in 2017 (4 years ago!). So I have installed the 32 bit vesions of libusb and glib as suggested in another recent thread (for another Brother printer).

Upon installing the rpm I get the message that the package is not signed, then the following message:

dditional rpm output:
lpadmin -p DCPL2550DN -E -v usb://Brother/DCP-L2550DN%20series?serial=E78285D1N988255 -P /usr/share/ppd/brother/brother-DCPL2550DN-cups-en.ppd
lpadmin: Printer drivers are deprecated and will stop working in a future version of CUPS.

Which is not auspicious at all. After installation using YaST, the test page will not print. I hear the printer waking up, and the small screen blinking “Receiving data”, but then it goes to sleep again and nothing happens.

The CUPS error log says:

W [20/Oct/2021:08:23:51 +0200] CreateDevice failed: org.freedesktop.DBus.Error.ServiceUnknown:The name org.freedesktop.ColorManager was not provided by any .service files
E [20/Oct/2021:08:26:23 +0200] [CGI] ippfind (PID 23601) stopped with status 1!
E [20/Oct/2021:08:26:23 +0200] [cups-deviced] PID 23592 (driverless) stopped with status 1!
E [20/Oct/2021:08:26:27 +0200] [CGI] ippfind (PID 23635) stopped with status 1!

Driverless? Am I missing something? I have the printer installed using YaST printer and it figures out the driver I installed. How can this be? My impression is that this driver may indeed not be working anymore with the current version of CUPS, as it is so old.

I tried other drivers from what I thought could be similar models (for example, from the package printer-driver-brlaser).

What else could I do?

Thanks in advance

Please post:

zypper se -si dcpl2550dnpdrv libusb glibc

Can you install the driver once more:

zypper in -f /PATH/TO/THE/RPM/dcpl2550dnpdrv-4.0.0-1.i386.rpm

Replace /PATH/TO/THE/RPM with your working path.
And post the output incl. the whole commandline?

Thank you for a fast response, @sauerland. Here comes the information:

# zypper se -si dcpl2550dnpdrv libusb glibc
Loading repository data...
Reading installed packages...

S  | Name                | Type    | Version     | Arch   | Repository
---+---------------------+---------+-------------+--------+----------------------
i+ | dcpl2550dnpdrv      | package | 4.0.0-1     | i386   | (System Packages)
i+ | glibc               | package | 2.34-2.1    | x86_64 | Main Repository (OSS)
i  | glibc-32bit         | package | 2.34-2.1    | x86_64 | Main Repository (OSS)
i  | glibc-devel         | package | 2.34-2.1    | x86_64 | Main Repository (OSS)
i  | glibc-extra         | package | 2.34-2.1    | x86_64 | Main Repository (OSS)
i  | glibc-lang          | package | 2.34-2.1    | noarch | Main Repository (OSS)
i  | glibc-locale        | package | 2.34-2.1    | x86_64 | Main Repository (OSS)
i  | glibc-locale-base   | package | 2.34-2.1    | x86_64 | Main Repository (OSS)
i  | libusb-0_1-4        | package | 0.1.13-37.2 | x86_64 | Main Repository (OSS)
i+ | libusb-0_1-4-32bit  | package | 0.1.13-37.2 | x86_64 | Main Repository (OSS)
i  | libusb-1_0-0        | package | 1.0.24-2.4  | x86_64 | Main Repository (OSS)
i+ | libusb-1_0-0-32bit  | package | 1.0.24-2.4  | x86_64 | Main Repository (OSS)
i+ | libusb-1_0-devel    | package | 1.0.24-2.4  | x86_64 | Main Repository (OSS)
i+ | libusb-compat-devel | package | 0.1.7-37.2  | x86_64 | Main Repository (OSS)
i  | libusbmuxd-2_0-6    | package | 2.0.2-1.6   | x86_64 | Main Repository (OSS)
i  | linux-glibc-devel   | package | 5.14-1.2    | x86_64 | Main Repository (OSS)

And then reinstalled driver, note that I first told it to retry and then ignore the information that the package is not signed:

# zypper in -f dcpl2550dnpdrv-4.0.0-1.i386.rpm
Loading repository data...
Reading installed packages...
Forcing installation of 'dcpl2550dnpdrv-4.0.0-1.i386' from repository 'Plain RPM files cache'.
Resolving package dependencies...

The following package is going to be reinstalled:
  dcpl2550dnpdrv

1 package to reinstall.
Overall download size: 129.7 KiB. Already cached: 0 B. No additional space will be used or freed after the operation.
Continue? [y/n/v/...? shows all options] (y): 
Retrieving package dcpl2550dnpdrv-4.0.0-1.i386                                                                                                           (1/1), 129.7 KiB (  3.1 MiB unpacked)
dcpl2550dnpdrv-4.0.0-1.i386.rpm:
    Package is not signed!

dcpl2550dnpdrv-4.0.0-1.i386 (Plain RPM files cache): Signature verification failed [6-File is unsigned]
Abort, retry, ignore? [a/r/i] (a): r
Retrieving package dcpl2550dnpdrv-4.0.0-1.i386                                                                                                           (0/1), 129.7 KiB (  3.1 MiB unpacked)
dcpl2550dnpdrv-4.0.0-1.i386.rpm:
    Package is not signed!

dcpl2550dnpdrv-4.0.0-1.i386 (Plain RPM files cache): Signature verification failed [6-File is unsigned]
Abort, retry, ignore? [a/r/i] (a): i

Checking for file conflicts: ...........................................................................................................................................................[done]
(1/1) Installing: dcpl2550dnpdrv-4.0.0-1.i386 ..........................................................................................................................................[done]
Additional rpm output:
ln: failed to create symbolic link '/opt/brother/Printers/DCPL2550DN/lpd/rawtobr3': File exists
ln: failed to create symbolic link '/opt/brother/Printers/DCPL2550DN/lpd/brprintconflsr3': File exists
ln: failed to create symbolic link '/etc/opt/brother/Printers/DCPL2550DN/inf/brDCPL2550DNrc': File exists
ln: failed to create symbolic link '/usr/lib/cups/filter/brother_lpdwrapper_DCPL2550DN': File exists
ln: failed to create symbolic link '/usr/share/cups/model/brother-DCPL2550DN-cups-en.ppd': File exists
ln: failed to create symbolic link '/usr/share/ppd/brother/brother-DCPL2550DN-cups-en.ppd': File exists
lpadmin -p DCPL2550DN -E -v usb://Brother/DCP-L2550DN%20series?serial=E78285D1N988255 -P /usr/share/ppd/brother/brother-DCPL2550DN-cups-en.ppd
lpadmin: Printer drivers are deprecated and will stop working in a future version of CUPS.

Additional info that may be useful:

printers.conf:

# cat /etc/cups/printers.conf
# Printer configuration file for CUPS v2.3.3op2
# Written by cupsd
# DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING
NextPrinterId 14
<Printer DCPL2550DN>
PrinterId 12
UUID urn:uuid:03e7f799-452d-3ac6-6db3-730209c3f141
Info DCPL2550DN
MakeModel Brother DCPL2550DN for CUPS 
DeviceURI usb://Brother/DCP-L2550DN%20series?serial=E78285D1N988255
State Idle
StateTime 1634714408
ConfigTime 1634714283
Type 8425492
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>

lpstat:

# lpstat -p
printer DCPL2550DN is idle.  enabled since ons 20 okt 2021 09:01:17

Does it work in cups:

localhost:631

No. I tried. It is the same result when printing a test page. CUPS reports the job as completed. Strange.

Well, I will think a bit more. I will report if I find something useful.

Thanks @sauerland for your interest and kind help!

Another USB-Port, another USB-Cable …

Another USB port did not improve things. Another cable I have not, but I will test later via ethernet.

Two questions:

  1. Don’t you think that the age of the driver may possibly be a problem here?

  2. Do you, or anyone else, know if there is a driver in the printer-driver-brlaser package that may be suitable?
    (I tried Brother DCP-L2500D series unsuccesfully)

# zypper if printer-driver-brlaser
Loading repository data...
Reading installed packages...


Information for package printer-driver-brlaser:
-----------------------------------------------
Repository     : Main Repository (OSS)
Name           : printer-driver-brlaser
Version        : 6+git20200420.9d7ddda-2.7
Arch           : x86_64
Vendor         : openSUSE
Installed Size : 328.5 KiB
Installed      : Yes
Status         : up-to-date
Source package : printer-driver-brlaser-6+git20200420.9d7ddda-2.7.src
Summary        : Driver for (some) Brother laster printers
Description    : 
    Most Brother printers support a standard printer language such as
    PCL or PostScript, but not all do. If you have a monochrome Brother
    laser printer (or multi-function device) and the other open source
    drivers don't work, this one might help.

    It is known to support these printers:

        Brother DCP-1510 series
        Brother DCP-1600 series
        Brother DCP-7030
        Brother DCP-7040 Brother DCP-7055
        Brother DCP-7055W
        Brother DCP-7060D
        Brother DCP-7065DN
        Brother DCP-7080
        Brother DCP-L2500D series
        Brother DCP-L2520D series
        Brother DCP-L2540DW series
        Brother HL-1110 series
        Brother HL-1200 series
        Brother HL-2030 series
        Brother HL-2140 series
        Brother HL-2220 series
        Brother HL-2270DW series
        Brother HL-2375DW
        Brother HL-2390DW
        Brother HL-5030 series
        Brother HL-L2300D series
        Brother HL-L2320D series
        Brother HL-L2340D series
        Brother HL-L2360D series
        Brother MFC-1910W
        Brother MFC-7240
        Brother MFC-7360N
        Brother MFC-7365DN
        Brother MFC-7420
        Brother MFC-7460DN
        Brother MFC-7840W
        Brother MFC-L2710DW series
        Lenovo M7605D

I am glad to report that I managed to get this printer working. After almost giving up in despair, I tried using different drivers available in CUPS, starting with those ending up with “DN”. After a few fails, I finally managed to get the printer working using this one: Brother DCP-8085DN BR-Script3. Do not ask me why.

https://support.brother.com/g/b/spec.aspx?c=eu_ot&lang=en&prod=dcpl2550dn_eu

PCL6, BR-Script3, PDF Version 1.7

Any of this formats may work.

Thanks for this useful comment. I had not payed attention to that info on the specifications. This somehow reinforces my belief that the official driver supplied by Brother is no longer working. It is just too old. Until an updated driver is available, it is my suggestion to others using this printer to go with a reasonably similar model driver that uses one of those compatible formats.

My drivers for Brother HL2140 will be shown in the Yast/Hardware/Printer list as last ones…

https://www.krauttranslate.de/~sauerland/Auswahl_006.png

Right, @sauerland. That was my case too.

The question in my case was not whether the particular driver was shown or not (it did show), but whether it worked or not (it didn’t work). That’s why I conclude that in the particular case of the Brother DCP L2550 DN printer, the official drivers, which were last updated in November 2017, are not longer working with current CUPS.

Also for this reason, and taking into account the compatible formats supported by the printer, as reported by @Svyatko, I would recommend others in my situation to use a driver for another similar machine that supports one of the supported formats.

Try installing this package.

| libusb-0_1-4 - libusb-1.0 Compatibility Library for libusb-0.1
|

|


 A compatibility layer allowing applications written for libusb-0.1 to work with libusb-1.0. libusb-compat-0.1 attempts to look, feel, smell and walk like libusb-0.1.


Thank you. Those packages are installed. Read the whole thread you will see that the culprit is the official driver.

Yep now I see apology, I have problem reading too much due to eye surgery on my both eyes.
What if the ppd file installed is not seen by the installer, can that be possible if it stored
outside the proper ppd directory.
Can you try locating it.

locate brother

maybe from the terminal.
If you find the file you can manually point yast2 to it during printer configuration I guess.

ILL cupsFilter in PPD file is too old.

Only reasonable for using BR-Script3 technology. For PDF printing you may use Generic PDF Printer, for PCL6 - Generic PCL6 Printer or Generic PCL XL Printer (different kinds).

You may get working ppd by changing cupsFilter in old non-working ppd file to PCL (Foomatic)/PDF or something about that.

Thanks everyone for your input. I will have a look at all those specs and potential fixes.

have a nice weekend!