AirPrint

Brother HL-L2321D does one thing and does it well. It is fast, prints duplex, and is lean on cartridge usage. Despite that it has one USB port for interface (and no network port), making this printer accessible (a) over network and (b) on iOS devices is easy. This requires setting up a print server, and the missing networking features in a non-network printer can easily be overcome.

Setting up a print server on a Raspberry Pi

Connecting it to a SBC on your home LAN to enable sharing requires a little work, but when done, it makes this printer not only a network printer, but also an AirPrint enabled printer. Here is how:

  1. Prep the SBC to download and install CUPS, compile and install Brother laser printer specific drivers, kindly made available by @pdewacht.

    sudo apt update && sudo apt upgrade -y
    sudo apt install cups libcups2-dev libcupsimage2-dev -y
    sudo usermod -a -G lpadmin <piusername>
    sudo cupsctl --remote-admin --remote-any --share-printers
    git clone --depth=1 https://github.com/pdewacht/brlaser.git
    cd brlaser/
    cmake .
    make
    sudo make install
    sudo systemctl restart cups
    

    In the above, be sure to replace <piusername> with an actual username you use on Raspberry Pi.

  2. Access the CUPS administration page on the home network at http://<raspberrypi's address here>:631/admin/. (Ignore the http browser warning and proceed to the page, since you are on your own home network.) Click on Add Printer button. When prompted for username and password, provide those you access with on raspberry pi.) Select Brother HL-L2320D series in Local Printers, and press continue.

  3. Note the name (typically Brother_HL-L2320D_series unless you change it). Enable Share This Printer, and press continue.

  4. Under Model, select Brother HL-L2300D series, using brlaser v6 (en), and press Add Printer button.

  5. In the next page, set default options as you require, and click on Set Default Options button.

  6. Under Printers tab, select second pull down menu under Administration and select Set as Server Default.

On iOS

No additional setup necessary, the printer is duly recognised once it is setup as above. Here is how it looks.

AirPrint enabled on Brother HL-L2321D USB-only printer.
AirPrint enabled on Brother HL-L2321D USB-only printer.

On MacOS

Once a print server is set up, install the printer on MacOS in the usual way. Bonjour auto-finds the printer, pulls-in the required drivers, and sets it up.

On Windows 10

Once a print server is set up, print drivers for Windows 10 are readily available, and therefore setting this up is pretty straight forward too. To install on Windows 10, select shared printers option under Add printers, and add the following URL:

http://<pi_ip_address>:631/printers/Brother_HL-L2320D_series