Unable to work with Brother HL-L2370DW printer after the Xubuntu upgrade

My printer Brother HL-L2370DW is connected to my desktop directly via the USB port. I used the Brother hll2370dwpdrv driver in the past, and it worked fine with Xubuntu 18.04. After the Xubuntu upgrade to 20.? the printer just stopped working. I don't know exactly when it happened cause I print not every day. I tried to reinstall the printer driver, but it didn't help. That's what I did:

  1. I've downloaded the driver installation script linux-brprinter-installer-2.2.3-1 from the Brother site and ran it. I can see the hll2370dwpdrv:i386 driver now:

    hekto@ubuntu:~$ dpkg -l|grep hll2370
    ii hll2370dwpdrv:i386 4.0.0-1 i386 Brother HL-L2370DW printer driver (lpd/cups)
  2. I've added this printer to the CUPS using the web interface . The printer appeared in the Printers pane:

Printers

  1. I was able to print a test page from this pop-up window, but only once - this window started to show a message Processing - the printer is not responding right after this first printing:

Printer-Default

  1. I looked at the /etc/cups/printers.conf file - everything is fine AFAIK:

    hekto@ubuntu:/etc/cups$ sudo more printers.conf
    # Printer configuration file for CUPS v2.3.1
    # Written by cupsd
    # DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING
    NextPrinterId 23
    <DefaultPrinter HL_L2370DW_series>
    PrinterId 17
    UUID urn:uuid:db3166ba-689b-3259-66f1-e600ca66fed8
    AuthInfoRequired none
    Info HLL2370DW
    Location
    MakeModel Brother HLL2370DW for CUPS
    DeviceURI ipp://HL-L2370DW%20series._ipp._tcp.local/
    State Idle
    StateTime 1645829084
    ConfigTime 1645221136
    Type 8425492
    Accepting Yes
    Shared Yes
    JobSheets none none
    QuotaPeriod 0
    PageLimit 0
    KLimit 0
    OpPolicy default
    ErrorPolicy retry-job
    Option cups-browsed-dest-printer "330 ipp://HL-L2370DW%20series._ipp._tcp.local/ apple-raster 600dpi"
    Attribute marker-levels 100
    Attribute marker-low-levels 9
    Attribute marker-high-levels 100
    Attribute marker-types toner
    Attribute marker-change-time 1645829061
    </DefaultPrinter>

So, I can't print anymore. The strange thing - sometimes the printer prints one job after the desktop turning on, then it stops again.

I have almost zero experience with the CUPS configuring. What should I do to make the printer to work? Where to look? What diagnostic commands can I try?

My OS:

 hekto@ubuntu:~$ uname -a Linux ubuntu 5.4.0-104-generic #118-Ubuntu SMP Wed Mar 2 19:02:41 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
10

3 Answers

3 things:

1 - It seems that ippusbxd is no longer supported according to this... And seems to have been replaced by ipp-usb, if I am reading that correctly..

2 - My 20.04 print server works fine but does NOT have ippusbxd installed on it. So I decided to test on my MATE 20.04 box that does have ippusbxd.

When I use the localhost:631 (cups) to configure a printer. The printer automatically shows under "Local Printers", if i select the printer, it creates the "Connection" as USB and takes me through the configuration to add the drivers.

It added it to my printers.conf as usb://Canon/MX490%20series?serial=A3BD69&interface=1.

I was not able to figure out how to end up with a DeviceURI like yours. (I don't know how are you doing that?) I don't think that yours is "wrong" per se, but it may be part of a configuration that may not work for you anymore.

I think some ippusbxd configurations are still going to work, but according to that document it lost support right around 2020, so I am thinking there is a chance that some things for some people are going to start falling off. The answer may end up accepting that ippusbxd is just not going to work for you any more. I'd be curious to see the result if you did a fresh install of 18.04 on a dual boot (because, preferably that specific machine) or test machine and see if you were to quickly get it working.

Because of my print server working, I believe there is clearly other options for you to be able to print. My server only has cups-ipp-utils installed on it. One solution may be to remove ippusbxd and try to configure your printer without it.

OR

3 - My print SERVER uses the usb connection to the printer, and my CLIENTS are talking to the server via IPP.

So when configuring my server (or even the above test machine), I am selecting the "Brother"/"Canon" drivers to configure that DIRECT USB connection.

...But when I configured a printer on my client, I selected the IPP driver because it is utilizing IPP to connect to the server... Specifically the "Generic IPP Everywhere Printer" driver. I don't know if your connection being defined as ipp://etc/etc (vs usb://etc/etc) on your local machine is going to require you to use the IPP driver, and I cannot get mine to be defined that way to test it.... but that may be worth trying. (if this turns out to be it, then my bad, I just rediscovered this during testing)

ippusbxd is a very troublesome and suboptimal package that has been removed from Ubuntu. It may not be the cause of your issue but its author strongly advises that it be removed.

apt purge ippusbxd

Re-plug the printer into USB afterwards.

1

I'm answering my own question - this answer might help somebody in the future.

According to @WU-TANG and @brian_p advice I've purged the ippusbxd package from my box:

sudo dpkg -P ippusbxd

Also I've found about potential problems with the AppArmor (in some chat) and recalled that I saw suspicious messages about it in the dmesg output. So I've installed the apparmor-utils package and ran the following command:

sudo aa-complain cupsd

After that I decided to remove all the printer configuration files, which I installed before, and rerun the Brother driver installation script linux-brprinter-installer-2.2.3-1. That's what I got:

hekto@ubuntu:~/soft$ sudo ./linux-brprinter-installer-2.2.3-1 HLL2370DW
You are going to install following packages. hll2370dwpdrv-4.0.0-1.i386.deb
OK? [y/N] ->Y
dpkg -x hll2370dwpdrv-4.0.0-1.i386.deb /
dpkg-deb: building package 'hll2370dwpdrv' in 'hll2370dwpdrv-4.0.0-1a.i386.deb'.
dpkg -b ./brother_driver_packdir hll2370dwpdrv-4.0.0-1a.i386.deb
dpkg -i --force-all hll2370dwpdrv-4.0.0-1a.i386.deb
Selecting previously unselected package hll2370dwpdrv:i386.
(Reading database ... 219522 files and directories currently installed.)
Preparing to unpack hll2370dwpdrv-4.0.0-1a.i386.deb ...
Unpacking hll2370dwpdrv:i386 (4.0.0-1) ...
Setting up hll2370dwpdrv:i386 (4.0.0-1) ...
lpadmin -p HLL2370DW -E -v usb://Brother/HL-L2370DW%20series?serial=U64965D8N393964 -P /usr/share/ppd/brother/brother-HLL2370DW-cups-en.ppd
lpadmin: Printer drivers are deprecated and will stop working in a future version of CUPS.
#
The security level of AppArmor has been lowered. (aa-complain cups)
aa-complain cupsd
Setting /usr/sbin/cupsd to complain mode.
Will you specify the Device URI? [Y/n] ->N
Test Print? [y/N] ->Y
wait 5s.
lpr -P HLL2370DW /usr/share/cups/data/testprint

This script has created everything I needed, so I didn't have to use the CUPS web interface or the lpadmin command to add the printer. The test page has been printed correctly, also I could print PDF files directly from the editor (!).

The script called the aa-complain program to set the "complain" mode for the cupsd daemon (as I've already did manually). I didn't see this call in the script log before - apparently it appeared after I've installed the apparmor-utils. Please install this package before you run the Brother installation script.

I was surprised by the printer URI, which has been generated by this process - it's not the IPP protocol as it was before, so the IPP-over-USB conversion (AFAIK supported by the ippusbxd package) is not needed at all. The printer setup is:

PrinterSetup

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like