My dad’s got a Brother DCP-7055W printer/scanner, and he wanted to be able to set it up as a network scanner to his Ubuntu machine. This was more fiddly than it should be, and involved a bunch of annoying terminal work, so I’m documenting it here so I don’t lose track of how to do it should I have to do it again. It would be nice if Brother made this easier, but I suppose that it working at all under Ubuntu is an improvement on nothing.
Anyway. First, go off to the Brother website and download the scanner software. At time of writing, https://www.brother.co.uk/support/dcp7055/downloads has the software, but if that’s not there when you read this, search the Brother site for DCP-7055 and choose Downloads, then Linux and Linux (deb), and get the Driver Installer Tool. That’ll get you a shell script; run it. This should give you two new commands in the Terminal:
Next, teach the computer about the scanner. This is what
brsaneconfig4 is for, and is all done in the Terminal. You need to know the scanner’s IP address; you can find this out from the scanner itself, or you can use
avahi-resolve -v -a -r to search your network for it. This will dump out a whole load of stuff, some of which should look like this:
= wlan0 IPv4 Brother DCP-7055W UNIX Printer local hostname = [BRN008092CCEE10.local] address = [192.168.1.21] port =  txt = ["TBCP=F" "Transparent=T" "Binary=T" "PaperCustom=T" "Duplex=F" "Copies=T" "Color=F" "usb_MDL=DCP-7055W" "usb_MFG=Brother" "priority=75" "adminurl=http://BRN008092CCEE10.local./" "product=(Brother DCP-7055W)" "ty=Brother DCP-7055W" "rp=duerqxesz5090" "pdl=application/vnd.brother-hbp" "qtotal=1" "txtvers=1"]
That’s your Brother scanner. The thing you want from that is
address, which in this case is
brsaneconfig4 -a name="My7055WScanner" model="DCP-7055" ip=192.168.1.21. This should teach the computer about the scanner. You can test this with
brsaneconfig4 -p which will ping the scanner, and
brsaneconfig4 -q which will list all the scanner types it knows about and then list your added scanner at the end under
Devices on network. (If your Brother scanner isn’t a DCP-7055W, you can find the other codenames for types it knows about with
brsaneconfig4 -q and then use one of those as the
You only need to add the scanner once, but you also need to have
brscan-skey running always, because that’s what listens for network scan requests from the scanner itself. The easiest way to do this is to run it as a Startup Application; open Startup Applications from your launcher by searching from it, and add a new application which runs the command
brscan-skey, and restart the machine so that it’s running.
If you don’t have the GIMP1 installed, you’ll need to install it.
On the scanner, you should now be able to press the Scan button and choose Scan to PC and then Scan Image, and it should work. What will happen is that your machine will pop up the GIMP with the image, which you will then need to export to a format of your choice.
This is quite annoying if you need to scan more than one thing, though, so there’s an optional extra step, which is to change things so that it doesn’t pop up the GIMP and instead just saves the scanned photo which is much nicer. To do this, first install
imagemagick, and then edit the file
/opt/brother/scanner/brscan-skey/script/scantoimage-0.2.4-1.sh with sudo. Change the last line from
echo gimp -n $output_file 2>/dev/null \;rm -f $output_file | sh &
echo convert $output_file $output_file.jpg 2>/dev/null \;rm -f $output_file | sh &
Now, when you hit the Scan button on the scanner, it will quietly create a file named something like
brscan.Hd83Kd.ppm.jpg in the
brscan folder in your home folder and not show anything on screen, and this means that it’s a lot easier to scan a bunch of photos one after the other.
- I hate this name. It makes us look like sniggering schoolboys. GNU Imp, maybe, or the new Glimpse fork, but the upstream developers don’t want to change it ↩