X

Setup Brother 1110 Printer on Raspberry Pi as Network Printer

BrotherPrinterRaspberryPi

I had this printer which is not a wifi built-in printer but nevertheless its a laser printer and I wanted to use it to print from any machine on my local network. I thought to myself why not use a raspberry pi and use cups. Thus my post on how to Setup Brother 1110 Printer on Raspberry Pi, I actually reuse the pi I had that is running pihole to block all the ads coming into my home network. Long story short I thought CUPS would be easy to setup and hoped everything will work, well of course things don’t just work without me tinkering on it, so here are the steps I used to finally to get it to work and hopefully it may help you also in your journey 🙂

First things first what is CUPS?

CUPS is a modular printing system for Unix-like computer operating systems which allows a computer to act as a print server. To install CUPS on a PI you can use the commands below.

Install cups and drivers from the Brother website
Login to your pi

pi@raspberrypi:~/ $ sudo apt-get update
pi@raspberrypi:~/ $ sudo apt-get upgrade
pi@raspberrypi:~/ $ sudo apt-get install qemu binfmt-support qemu-user-static cups a2ps

Brother only provides i386 driver but as you may know Pi is a Arm processor so we need to somehow get them to work but first lets download the deb packages.

pi@raspberrypi:~/ $ mkdir driver
pi@raspberrypi:~/ $ cd driver
pi@raspberrypi:~/driver $ wget http://download.brother.com/welcome/dlf100419/hl1110lpr-3.0.1-1.i386.deb
pi@raspberrypi:~/driver $ wget http://download.brother.com/welcome/dlf100421/hl1110cupswrapper-3.0.1-1.i386.deb

We will also add the architecture

pi@raspberrypi:~/driver $ sudo dpkg --add-architecture i386

We will also need to use Kali linux libc6 in order for this to work.

pi@raspberrypi:~/driver $ wget old.kali.org/kali-security/pool/main/e/eglibc/libc6_2.13-38+deb7u8_i386.deb

We will then extract the libc into a directory so that we dont need to mess with apt and then copy them over.

pi@raspberrypi:~/driver $ sudo dpkg -x libc6_2.13-38+deb7u8_i386.deb  data
pi@raspberrypi:~/driver $ cd data/
pi@raspberrypi:~/driver/data $ ls
etc  lib  usr

As you can see above we have 3 directories etc, lib and usr extracted into data directory. Now we will copy them over.

pi@raspberrypi:~/driver/data $ cd ..
pi@raspberrypi:~/driver $ sudo cp -r data/lib/* /lib/
pi@raspberrypi:~/driver $ sudo cp -r data/usr/* /usr
pi@raspberrypi:~/driver $ sudo cp -r data/etc/* /etc

We will also add this to our env variable to build and then we can install our packages. You can ignore the warning, also you will get this error in cups also when you print so you can ignore that also.

pi@raspberrypi:~/driver $ EXTRA_OPTS="-L /lib/i386-linux-gnu"
pi@raspberrypi:~/driver $ sudo dpkg -i hl1110lpr-3.0.1-1.i386.deb
Selecting previously unselected package hl1110lpr:i386.
(Reading database ... 162742 files and directories currently installed.)
Preparing to unpack hl1110lpr-3.0.1-1.i386.deb ...
Unpacking hl1110lpr:i386 (3.0.1-1) ...
Setting up hl1110lpr:i386 (3.0.1-1) ...
ERROR: ld.so: object '/usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so' from /etc/ld.so.preload cannot be preloaded: ignored.

Now lets install the cups wrapper.

pi@raspberrypi:~/driver $ sudo dpkg -i hl1110cupswrapper-3.0.1-1.i386.deb
Selecting previously unselected package hl1110cupswrapper:i386.
(Reading database ... 162763 files and directories currently installed.)
Preparing to unpack hl1110cupswrapper-3.0.1-1.i386.deb ...
Unpacking hl1110cupswrapper:i386 (3.0.1-1) ...
Setting up hl1110cupswrapper:i386 (3.0.1-1) ...
lpadmin -p HL1110 -E -v usb://Brother/HL-1110%20series?serial=L0N818210 -P /usr/share/ppd/brother/brother-HL1110-cups-en.ppd

Finally we need to restart our cups server

pi@raspberrypi:~/driver $ sudo /etc/init.d/cups restart
[ ok ] Restarting cups (via systemctl): cups.service.

If you wish to manage cups with pi user use the commands below and then you can access cups with the web user interface on http://localhost:631

pi@raspberrypi:~/ $ sudo usermod -a -G lpadmin pi
pi@raspberrypi:~/ $ sudo cupsctl --remote-any
pi@raspberrypi:~/driver $ sudo /etc/init.d/cups restart
[ ok ] Restarting cups (via systemctl): cups.service.

If you are using windows 10 you dont really need to install Samba you will be able to see your pi printer by just opening printer and add it will auto scan your network for it. Hopefully this will help you out and enjoyed reading How to setup Brother 1110 Printer on Raspberry Pi 🙂

Categories: Misc
Taswar Bhatti:

View Comments (2)

  • Works for hl1110 but comment says future versions of CUPS won't work anymore because printer drivers are deprecated. This is the feedback from using the command just before cups restart. Thanks for making a guide that works, Taswar
    Followed official rpi, pimylife and none worked until i found your blog.

Related Post