1

I'm trying to use my old Brother DCP-145C Multifunction USB-Printer as a network printer/scanner with the RPi. I roughly followed this guide so far:

Setting up the printing functionality via CUPS worked out pretty fine, however I've gotten stuck in configuring the estabishing the scanning functionality. After installing / updating inetutils-inetd and sane-utils, enabling SANE and configuring inetd I downloaded and installed the brscan3-driver and the "scan-key-tool" from the brother homepage. As Brother only provides these in 32bit and 64bit versions I chose the 32bit versions and installed both via dpkg and "--force all", as the instructions from brother state. This worked out fine for the printer drivers, so I hoped it would as well for the scanner.

After restarting inetd and sane I ran "sane-find-scanner" :

  $ sane-find-scanner

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.
  # Also you need support for SCSI Generic (sg) in your operating system.
  # If using Linux, try "modprobe sg".

 found USB scanner (vendor=0x04f9, product=0x0206) at libusb:001:004
 found USB scanner (vendor=0x0424, product=0xec00) at libusb:001:003
  # Your USB scanner was (probably) detected. It may or may not be supported by
  # SANE. Try scanimage -L and read the backend's manpage.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.

  # You may want to run this program as root to find all devices. Once you
  # found the scanner devices, be sure to adjust access permissions as
  # necessary.

However when trying "scanimage -L" :

$ scanimage -L

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).

And when I'm trying to execute the brother scan-key-tool, I get the following error:

$ brscan-skey
$ /opt/brother/scanner/brscan-skey/brscan-skey-0.2.4-0: 1: /opt/brother/scanner/brscan-skey/brscan-skey-0.2.4-0: Syntax error: "(" unexpected

Could this be caused by the architecture mismatch between the 32bit-Driver and Scan-Key-Tool and the arm-system? If so, could there be any solution (as brother only provides 32bit and 64bit-versions) for the problem? I've been searching for hours now for a solution and couldn't find any helpful information.

1
  • 32bit, 64bit and ARM are all different architectures.
    – Piotr Kula
    Mar 29, 2014 at 19:21

2 Answers 2

1

When vendors provide binary Linux drivers, they're almost always for x86. Brother is no exception; those archives are for i386/x86_64, not armhf. They will not run on the Raspberry Pi.

2
  • So there is no way to use the scanner with the Raspberry Pi? I wonder why the drivers work for the printer.
    – Max K
    Sep 30, 2013 at 17:12
  • The printer might already be supported through GhostScript/CUPS, so it may not be using a binary driver.
    – scruss
    Sep 30, 2013 at 18:39
0

I know it's been few years and OP might no longer needs this, but I was exploring the topic and almost always ended up here. I have figured it out how to run Brother Scanner on RPi using QEMU.

I have used mainstream Debian 10 (not Raspberry Pi OS). I had to use mainstream Debian as packages in Raspberry Pi OS are suffixed with some tag and so I was unable to install i386 packages along arm ones on RPi OS.

First of all I have installed apt install qemu binfmt-support qemu-user-static.

Next I have added foreign architecture, i386, to my Debian installation:

dpkg --add-architecture i386 and run apt update.

I have installed i386 version of Sane

apt install sane-utils:i386

and finally installed Brother i386 drivers with dpkg

dpkg -i brscan4-0.4.10-1.i386.deb.

This way I have i386 sane and brother drivers run through qemu and scanning works on my RPi2B+.

I suggest to remove all unused backends on /etc/sane.d/dll.conf to speedup finding scanner a little bit.

1
  • Well, I no longer have the printer nor the raspberry pi, but it was pretty interesting to see what has been bothering me 9 years ago - Thanks for the reply!
    – Max K
    Jan 31, 2023 at 20:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.