Many 3rd party scanner drivers are broken by a sane change

Bug #1728012 reported by PeterPall on 2017-10-27
394
This bug affects 78 people
Affects Status Importance Assigned to Milestone
sane-backends (Ubuntu)
High
Unassigned

Bug Description

Many scanners can no more be used since sane has changed something: The 3rd-party plug-in the vendor provides as .deb package will still install. But the scanner is no more recognized.

Scanners that are affected are(besides others):
 - Epson Perfection V10
 - Epson Perfection V1000
 - Epson WorkForce GT-1500
 - Brother MFC-8510DN
 - Epson Perfection V33

It is to note that the probability that the scanner manufacturers fix things others broke is below 100%.

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: libsane1 1.0.27-1~experimental2ubuntu2
Uname: Linux 4.14.0-041400rc5-lowlatency x86_64
ApportVersion: 2.20.7-0ubuntu3.1
Architecture: amd64
Date: Fri Oct 27 12:35:52 2017
EcryptfsInUse: Yes
SourcePackage: sane-backends
UpgradeStatus: No upgrade log present (probably fresh install)

PeterPall (peterpall) wrote :
description: updated
description: updated
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in sane-backends (Ubuntu):
status: New → Confirmed
Jeremy Bicha (jbicha) on 2017-10-27
Changed in sane-backends (Ubuntu):
importance: Undecided → High

I can confirm that the Epson Perfection V300 is also affected

Using libsane1 1.0.27-1~experimental2ubuntu2.1 allows me to install the drivers without conflicts.

But the scanner is not recognized. Neither by scanimage, simple-scan or iscan

lsusb shows that the scanner is attached

lsusb
Bus 002 Device 002: ID 8087:8001 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8009 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 006: ID 04b8:0131 Seiko Epson Corp. GT-F720 [GT-S620/Perfection V30/V300 Photo]
Bus 003 Device 005: ID 046d:c069 Logitech, Inc. M-U0007 [Corded Mouse M500]
Bus 003 Device 004: ID 08bb:2707 Texas Instruments
Bus 003 Device 003: ID 0409:005a NEC Corp. HighSpeed Hub
Bus 003 Device 002: ID 24f0:0137
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Kubuntu 17.04
Fail to use Epson Perfection V30

$ lsusb |grep -i epson

Bus 003 Device 005: ID 04b8:0131 Seiko Epson Corp. GT-F720 [GT-S620/Perfection V30/V300 Photo]

$ apt list --installed |grep -e esci -e iscan -e libsane -e sane-utils

esci-interpreter-gt-f720/now 0.1.1-2 amd64 [installed,local]
iscan/now 2.30.2-2 amd64 [installed,local]
iscan-data/now 1.36.0-1 all [installed,local]
libsane-common/now 1.0.27-1~experimental2ubuntu2.1 all [installed,local]
libsane-extras/artful,now 1.0.22.5 amd64 [installed]
libsane-extras-common/artful,artful,now 1.0.22.5 all [installed,automatic]
libsane-hpaio/artful,now 3.17.7+repack0-3 amd64 [installed]
libsane1/now 1.0.27-1~experimental2ubuntu2.1 amd64 [installed,local]
sane-utils/now 1.0.27-1~experimental2ubuntu2.1 amd64 [installed,local]

$ 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).

Xerox Workcentre 3225 with the drivers version 1.00.25:00.05 that used to work very well with Zesty's libsane still not functional.
My malfunction hasn't changed a bit with the 1.0.27-1~experimental2ubuntu2.1 package.
Like before xsane crashes with the following message:
  Not a JPEG file: starts with 0x00 0x00
and/or hangs with scanning status.
mariusz:~> dpkg -l | grep sane
ii libkf5sane-data 17.04.3-0ubuntu1 all scanner library (data files)
ii libkf5sane5 17.04.3-0ubuntu1 amd64 scanner library (runtime)
ii libksane-data 4:17.04.3-0ubuntu1 all scanner library (data files) - transitional package
ii libksane0 4:15.08.3-1ubuntu2 amd64 scanner library (runtime)
ii libsane-common 1.0.27-1~experimental2ubuntu2.1 all API library for scanners -- documentation and support files
ii libsane-extras:amd64 1.0.22.5 amd64 API library for scanners -- extra backends
ii libsane-extras-common 1.0.22.5 all API library for scanners -- documentation and support files
rc libsane-hpaio:amd64 3.16.7+repack0-1ubuntu1 amd64 HP SANE backend for multi-function peripherals
ii libsane1:amd64 1.0.27-1~experimental2ubuntu2.1 amd64 API library for scanners
ii sane 1.0.14-12build1 amd64 scanner graphical frontends
ii sane-utils 1.0.27-1~experimental2ubuntu2.1 amd64 API library for scanners -- utilities
ii xsane 0.999-5ubuntu2 amd64 featureful graphical frontend for SANE (Scanner Access Now Easy)
ii xsane-common 0.999-5ubuntu2 all xsane architecture independent files

I could use some/any guidance for providing more details to anyone if reverting back to working libsane is not an option.

Forgot to mention that I use or rather attempt to use the scanner over the TCP.

Michael Hill (wrendriff) wrote :

Add to list of scanner "broken" - Epson Perfection V300 Photo.

dependency errors occurring after upgrade from Ubuntu 17.04 to 17.10 are
iscan depending on libsane (>=1.0.11-3)
esci-interpreter-gt-f720 depends on iscan (>=2.16.1)

luca.mg (luca-mg) wrote :

Cross posting from https://bugs.launchpad.net/ubuntu/+source/sane-backends/+bug/1707352?comments=all

On artful, libsane1 1.0.27-1~experimental2ubuntu2.1, in short: the Epson 4490 Photo scanner doesn't work, the Brother MDC-1910W scanner only works as root; both were fully working on zesty. In details:

Epson 4490 Photo as user
sane-find-scanner detects a bunch of USB devices including the scanner, but has not enough permission
scanimage -l no SANE devices found
iscan, simple-scan, and xsane do not work

Epson 4490 Photo as root
sane-find-scanner ok
scanimage -l no SANE devices found
iscan, simple-scan, and xsane do not work

Brother MFC-1910W as user
sane-find-scanner detects a bunch of USB devices including the scanner, but has not enough permission
scanimage -l no SANE devices found
simple-scan and xsane do not work

Brother MFC-1910W as root
sane-find-scanner ok
scanimage -l ok
simple-scan ok
xsane ok

Bo Lundberg (bo-lundberg) wrote :

Epson 2400 photo doesn't work in Iscan (can't send to scanner). Works fine with xsane.

Yves D. Mercier (ymerj) wrote :

Epson v370 photo doesn't work either. Purchased only 3 months ago, it was fully functionnal in zesty. Now totally unusable in artful even with libsane1 1.0.27-1~experimental2ubuntu2.1

Today I managed to bring back my dead Epson V300 alive :-)

1. Install libsane1 1.0.27-1~experimental2ubuntu2.1

2. Install iscan-gt-f720-bundle-1.0.1.x64.deb.tar.gz

3. Copy (or move) the files from /usr/lib/sane (libsane-epkowa.la, libsane-epkowa.so.1, libsane-epkowa.so.1.0.15 in my case) to /usr/lib/x86_64-linux-gnu/sane

4. reboot.

Guess this works with all Iscan depend scanners from Epson

Just for the record

scanimage -L
device `epkowa:interpreter:003:007' is a Epson Perfection V300 flatbed scanner
device `imagescan:esci:networkscan://192.168.50.24:1865' is a Epson XP-540

Iscan, simple-scan, Xsane are working as expected.

BRScan users can you try what happens when copy the files (libsane-brother*) from /usr/lib64/sane/ to /usr/lib/x86_64-linux-gnu/sane.

Maybe the fix for brother scanners is as easy as the one for the epson ones ...

Yves D. Mercier (ymerj) wrote :

Sorry to say that staedtler-przyborski solution did not work for me (epson V370 photo). Deb file is different in my case (iscan-perfection-v370-bundle-1.0.1.x64.deb.tar.gz)

Yves D. Mercier (ymerj) wrote :

Update: Just tried it as root. I works.

Thats interesting. I don't need to be root to scan.

So whats different is the question ? I don't believe it's the different plugin. Iscan is identical I suppose.

Just for completeness:

 apt list --installed |grep -e esci -e iscan -e libsane -e sane-utils

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

esci-interpreter-gt-f720/now 0.1.1-2 amd64 [Installiert,lokal]
iscan/now 2.30.2-2 amd64 [Installiert,lokal]
iscan-data/now 1.36.0-1 all [Installiert,lokal]
libsane-common/now 1.0.27-1~experimental2ubuntu2.1 all [Installiert,lokal]
libsane-hpaio/artful,now 3.17.7+repack0-3 amd64 [installiert]
libsane1/now 1.0.27-1~experimental2ubuntu2.1 amd64 [Installiert,lokal]
sane-utils/now 1.0.27-1~experimental2ubuntu2.1 amd64 [Installiert,lokal]

Are on x-org or wayland ? Can you try what happens if you switch to X-org ?

X-Org or wayland doens't matter. My scanner works with both (verfied).

Do you have a file named 79-udev-epson.rules in /etc/udev/rules.d ?

Mine has the following content:

# chmod device EPSON group
# ACTION=="add", ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0666"
ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0777"

A Test here showed:

without 79-udev-epson.rules in /etc/udev/rules.d

only 'sudo scanimage -L works'

with 79-udev-epson.rules in /etc/udev/rules.d

no root needed, a simple 'scanimage -L' is sufficient

maybe for the brscan scanners also only the udev rule is missing

try to add
# Brother scanners
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="0255", MODE="0660", GROUP="scanner", ENV{libsane_matched}="yes"

to e.g. /lib/udev/rules.d/60-libsane1.rules

Yves D. Mercier (ymerj) wrote :

I did not have the 79-udev-epson.rules file, so I created one with the content you posted. My scanner works now. No root needed. Many thanks.

My Brother MFC-J220 works now with the 1.0.27-1~experimental2ubuntu2.1 packages.

The brscan3 driver installs files in /usr/lib64 and /usr/lib64/sane.
I linked them by
'sudo ln -sfr /usr/lib64/libbrscandec* /usr/lib/x86_64-linux-gnu'
and
'sudo ln -sfr /usr/lib64/sane/libsane-brother* /usr/lib/x86_64-linux-gnu/sane'

Thanks to staedtler-przyborski for the hint.

@ Hans Schwimmbeck

Great, so we have a fix for brother brscan3 scanners too.

Ah yes, linking is definitely a better way than copying (you may forgive me, my workaround was only a first try).

Now we only need to know if, brscan, brscan2 and brscan4 scanners can be fixed too by linking directories

For Xerox Workcentre 3225 I have mentioned in this and the original sane bug the solution is:
1. Link the files in /usr/lib/sane to /usr/lib/x86_64-linux-gnu/sane,
2. Add the user that needs to use the scanner to the "lp" group.
Otherwise the "Not a JPEG file: starts with 0x00 0x00" issue persists.

Thanks Mariusz. Can you please specify which files are in /usr/lib/sane (just to make the command below more precise) ?

To summarize we have now the following workarounds (all 64-bit):

1. Brother brscan3

a) 'sudo ln -sfr /usr/lib64/libbrscandec* /usr/lib/x86_64-linux-gnu'
b) 'sudo ln -sfr /usr/lib64/sane/libsane-brother* /usr/lib/x86_64-linux-gnu/sane'

2. Epson Iscan

a) 'sudo ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane'
b) generate '/etc/udev/rules.d/79-udev-epson.rules'
content:
# chmod device EPSON group
ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0777"

3. Xerox Workcentre 3225

a) 'sudo ln -sfr /usr/lib/sane/* /usr/lib/x86_64-linux-gnu/sane'
b) 'sudo adduser $USER lp'

PeterPall (peterpall) wrote :

You are a genius! My MFC8510 and my Epson WorkForce GT-1500 now work fine...
...now we should forward this info to the sane programmers (perhaps they can make the program look in both the old and the new locations), to Debian - and to the manufacturers: Symlinks isn't hard to create in the postinstall scripts. Perhaps they will add the necessary lines.

> ls -la /usr/lib/sane/
total 40
drwxr-xr-x 2 root root 4096 Oct 27 12:10 .
drwxr-xr-x 147 root root 36864 Oct 17 15:30 ..
lrwxrwxrwx 1 root root 31 Oct 27 12:10 libsane-smfp.so -> /usr/lib/sane/libsane-smfp.so.1
lrwxrwxrwx 1 root root 35 Oct 27 12:10 libsane-smfp.so.1 -> /usr/lib/sane/libsane-smfp.so.1.0.1
lrwxrwxrwx 1 root root 50 Oct 27 12:10 libsane-smfp.so.1.0.1 -> /opt/smfp-common/scanner/lib/libsane-smfp.so.1.0.1

Xerox has an "universal", script based driver installer available at http://download.support.xerox.com/pub/drivers/WC3225/drivers/linux/en_GB/Xerox_WorkCentre_3225_Linux-Driver.tar.gz

PPDs and about 5 installed binaries, French locale and a bunch of scripts for arm, i386, and x86_64.

In the meanwhile I had a look on different brscan drivers ...

Unfortunately brscan4 has a complete different structure (so at least one real user is needed)

Summary is now:

1. Brother brscan, brscan2, brscan 3

a) 'sudo ln -sfr /usr/lib64/libbr* /usr/lib/x86_64-linux-gnu'
b) 'sudo ln -sfr /usr/lib64/sane/libsane-brother* /usr/lib/x86_64-linux-gnu/sane'

2. Epson Iscan

a) 'sudo ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane'
b) generate '/etc/udev/rules.d/79-udev-epson.rules'
content:
# chmod device EPSON group
ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0777"

3. Xerox Workcentre 3225

a) 'sudo ln -sfr /usr/lib/sane/libsane-smfp* /usr/lib/x86_64-linux-gnu/sane'
b) 'sudo adduser $USER lp'

I forgot to mention that also needed is something like /etc/udev/rules.d/59-local.rules.
In my upgraded installation it has not changed since 16.04 and looks like this:
---------------
# Brother MFC-J220
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="0259", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes"

---------------

Of course 'idProduct' has to match the local scanner model, 'lsusb' and 'sane-find-scanner' are your friends.

Dear Hans could you please test if a more generic solution like the one provided by Epson would also work for local attached Brother Scanners ?

A possible Example:

# chmod device BROTHER group
ATTRS{manufacturer}=="BROTHER", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="*", MODE="0777"

Thanks

luca.mg (luca-mg) wrote :

I can confirm that the Epson Perfection 4490 Photo scanner, iscan-gt-x750-bundle-1.0.0.x64 based, works by creating symlinks of the /usr/lib/sane/libsane-epkowa* files into the /usr/lib/x86_64-linux-gnu/sane directory by issuing the command 'sudo ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane' as said above; no need to tinker with the udev rules files in my case. This doesn't look like a bug fix to me, it's a workaround, needing a user tweak, libsane1 should look for third party sane drivers (once called backends IIRC) in the "legacy" directories as well as in the new ones, for backward compatibility.

luca.mg (luca-mg) wrote :

The Brother MFC-1910W printer-fax-scanner, brscan4 based, does not work with the symlink trick, the scanner is detected by sane-find-scanner, but is not listed by scanimage -l, and will only work after enabling the root account and issuing the 'su root' and 'xsane' commands in a terminal; a simple sudo xsane won't work. Although it seems to me a permission issue, creating appropriate (to the best of my knowledge!) udev rules files in the /etc/udev/rules.d directory and/or in /lib/udev/rules.d directory has no positive outcome, nor editing the the /lib/udev/rules.d/60-libsane1.rules file; my attempts were using the lines

## Brother MFC-1910W
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="035d", MODE="0666", GROUP="scanner", ENV{libsane_matched}="yes"

with several flavours of the MODE= option (0660 0666 0664 0777 and the like).
Again: if only libsane1 will also look for sane backends in the "legacy" locations other than the new ones perhaps this insane mess would be sorted out.

I don't like MODE="0777" in the Epson derived example.

This works for me and _should_ work for all brscan3 devices:

# Brother brscan3 devices
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="*", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes"

luca.mg (luca-mg) wrote :

Thank You for Your time Hans, I do not like 0777 as well, but I was shooting in the dark. As stated, I tried
## Brother MFC-1910W
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="035d", MODE="0666", GROUP="scanner", ENV{libsane_matched}="yes" (or 0660 0664 0777 modes)

which should be the equivalent of Your
# Brother brscan3 devices
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="*", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes"

no joy.

luca.mg (luca-mg) wrote :

PS I'm on brscan 4.

I have no glue why Epson has chosen '0777', maybe it's because they upload a firmware to their scanners ...

Actual summary:

1.Brother:

brscan4 no luck until now (btw. the installer already seems to respect /usr/lib/x86_64-linux-gnu/sane)

brscan, brscan2, brscan3

a) 'sudo ln -sfr /usr/lib64/libbr* /usr/lib/x86_64-linux-gnu'
b) 'sudo ln -sfr /usr/lib64/sane/libsane-brother* /usr/lib/x86_64-linux-gnu/sane'
c) generate '/etc/udev/rules.d/59-udev-local.rules'
content:
# Brother brscan devices
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="*", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes"

2. Epson Iscan

a) 'sudo ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane'
b) generate '/etc/udev/rules.d/79-udev-epson.rules'
content:
# chmod device EPSON group
ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0777"

3. Xerox Workcentre 3225

a) 'sudo ln -sfr /usr/lib/sane/libsane-smfp* /usr/lib/x86_64-linux-gnu/sane'
b) 'sudo adduser $USER lp'

@luca.mg

Are you aware of these informations ?

http://stepsilon.com/ubuntu/install-scanner-brother-dcp-7055-ubuntu

"The Brother Linux scanner driver works only with a superuser by default, as noted on the brother solutions site.

If you want to allow normal users to also use the scanner, this is the solution:

Download following deb package. Open a terminal and paste following line

       wget www.brother.com/pub/bsc/linux/dlf/brother-udev-rule-type1-1.0.0-1.all.deb"

Can you please try ?

luca.mg (luca-mg) wrote :

Hi staedtler-przyborski, and thank You for taking the time to further investigate the matter. Yes indeed, I did try to install the brother-udev-rule-type1 package You kindly linked, also tinkering with the various settings, and tested with a later release too, even if both weren't needed in zesty, nor in xenial (I guess that the package was required with earlier ubuntu releases), but it doesn't make any difference: the scanner is found by sane-find-scanner, but is not detected by scanimage -l, and it only works running xsane from the terminal after the 'su root' command, while 'sudo xsane' won't work at all. I'm quite sure that it's a permission issue, but I'm out of ideas as to how to fix it, and using the scanner as root is not a feasible option.

@luca.mg

Im sorry to hear that.

BTW. Are you on wayland or xorg. If wayland, have you tried with xorg ?

luca.mg (luca-mg) wrote :

@staedtler-przyborski
I'm on xorg... I forgot to mention: the Brother scanner only works as root AND with xsane, simple-scan doesn't work at all.

luca.mg (luca-mg) wrote :

Tried to configure the Brother MFC-1910W as a network scanner, same outcome: it only work with xsane (no simple-scan) as the true root user (no sudo xscan). TBC....

At the moment I see only two possibilities

Try vuescan https://www.hamrick.com/

or try Hans Schwimmbecks 'ugly' workaround

https://bugs.launchpad.net/ubuntu/+source/sane-backends/+bug/1707352/comments/35

Debian recently released libsane1 1.0.27-1~experimental3 (hope never dies ;-)

Changelog

sane-backends (1.0.27-1~experimental3) experimental; urgency=medium

  * debian/control:
    - Drop outdated Recommends libsane-extras-dev to libsane-dev
      binary package (Closes: #868265).
    - Drop outdated texlive and texlive-latex-extra Build-Dependency.
  * debian/rules:
    - Drop create and install the /etc/sane.d/dll.d directory.
    - Move rules from override_dh_install-arch and override_dh_auto_install-arch
      to override_dh_install-indep and override_dh_auto_install-indep
      to build the arch all packages without error (CLoses: #870455).
    - At dh_systemd_enable use debian/saned.socket instead saned.socket.
    - Use DEB* vars via default.mk instead own functions.
  * Move libsane-common.install.in to libsane-common.install.
  * debian/copyright:
    - Add year 2017 for debian/*.
  * New debian/patches/0150-genesys-Fix-use-of-uninitialized-variable.patch:
    - Initializing usb_mode (Closes:# 869673).
      Thanks to Florian Lindemann <email address hidden> and
      Olaf Meeuwissen <email address hidden>.
  * Move install of man pages from debian/rules to libsane-common.manpages and
    sane-utils.manpages (Closes: #872366).
  * Move umax_pp.5 from libsane-common to sane-utils.
  * debian/sane-utils.saned.init:
    - Add parameter to --retry at the stop section (Closes: #871543).
  * libsane1.README.Debian:
    - Remove references to the libsane-extras package.
  * Correct typos in the previous changelog entry.
  * Declare compliance with Debian Policy 4.1.1 (No changes needed).
  * Move rm_conffile from libsane-common.preinst to libsane-common.maintscript.

 -- Jörg Frings-Fürst <email address hidden> Sat, 28 Oct 2017 13:26:26 +0200

luca.mg (luca-mg) wrote :

Further tested the Brother MFC-1910W with gscan2pdf, no joy even as root. Also tested with a commercial scanning software, a 13.5 MB download supporting current and "vintage" scanners, the Brother MFC-1910W works out of the box as a user. :-((

luca.mg (luca-mg) wrote :

Yep, vuescan is the commercial software I was referring to in my previous post, and yes, I tried the ugly workaround as soon as Hans Schwimmbeck posted it, and it used to work, but it prevents from updating too many packages due to a daisy chain of dependencies; I do not even know if I could reinstall it now that it's been removed and the system has been updated, but surely uninstalling it hasn't been easy. As a matter of fact the developers should fix what they broke, or the hardware manufacturer should rewrite the drivers against libsane1, which is very unlikely, especially for old peripherals. Any other solution requiring user action is a workaround, not a bug fix, but I'd be very happy to take action to resurrect the Brother scanner, if I only knew where to stick my hands!

As I've found now the origin of '/etc/udev/rules.d/79-udev-epson.rules' - it was installed by the epson-printer-utility for my Epson XP 540 - I tried what happens when I switch to a more 'common' udev rule.

I tried (similiar to the rule for brother scanners provided by Hans):

ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes"

Result: No firmware up-load, no scanner found. As soon as a I switch back to the rule installed by epson the scanner starts (after switching off-on) to up-load the firmware and is accessible by scanning programs (as non-root).

@luca

can you please try the following udev rule (scanner is locally attached via usb, please keep the current one stored at an other place, no garantuee, so you may want to revert) :

/etc/udev/rules.d/79-udev-brother.rules
# chmod device BROTHER group
ATTRS{manufacturer}=="BROTHER", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="*", MODE="0777"

luca.mg (luca-mg) wrote :

Hi staedtler-przyborski, I created the /etc/udev/rules.d/79-udev-brother.rules file as suggested, no joy. I have written to Brother support, asking if they're planning the release of drivers libsane1 compliant; I've had an automatic reply suggesting to install the non working driver... hope I'll get a proper answer anytime soon, I fear they won't support legacy hardware, but they should indeed support recent products.

'I have written to Brother support'

Nothing will happen. As only Ubuntu 17.10 is affected, no other Ubuntu-Release, no other Linux-Distribution (e.g. Arch-Linux uses libsane 1.0.27 and no extra pecularities are reported) .

Hopefully Ubuntu switches at least for 18.04 LTS back to use non-experimental libraries and frameworks.

PeterPall (peterpall) wrote :

My hope was that all the bug fixes you have collected make it to the official .Deb package for Ubuntu and Debian instead.

Jeremy Bicha (jbicha) wrote :

Staedtler, despite the scary version number, libsane 1.0.27 itself is not experimental. As you pointed out, Arch has been using 1.0.27 since May.

https://www.archlinux.org/packages/extra/i686/sane/

I am a bit surprised at the number of people reporting an issue here that is claimed to be new.

Ubuntu 12.04 LTS (and the newer LTS's) also uses the same multiarch directory ( /usr/lib/x86_64-linux-gnu/sane/ for typical 64-bit computers) !

Dear Jeremy

But be assured that I know Sane since a very long time (have a look at my sane frontend Tame/2 for OS/2, anybody remebers ? It was the first and only OS/2 scanning application supporting USB thanks to Maeda Haruyuki- a japanese developer). I remember debugging sessions with Osaka (where Maeda lived) and Lithuania (where the OS/2 USB-Stack developers worked) to get it running.

Even a longer time I have linux experiences (starting with DLD-Linux 2.0 in the early ninties) and a quite long ubuntu experience (6.06 for private use and since 7.04 my whole company is equipped with ubuntu on currently > 40 desktops ).

Scanning was always a nightmare and adventure (e.g. I support a lawyers company who uses Ubuntu in Virtual Box for only one reason: their Scanner is no longer supported by windows)

To make it short: It would be great if Ubuntu could continue to support scanners like it did in the past.

luca.mg (luca-mg) wrote :

Hy all, just here to write that after exchanging a bunch of useless emails with a kind chap from Brother customer support, he finally redirected me to the "lab technicians", who wrote to me "read the faq, or check over internet if there are solutions from the community".

@luca

What did I tell you ....

How about a debugging session ;-)

Open your terminal and paste:

'export SANE_DEBUG_DLL=255'

then try sane-find-scanner (with/without sudo)

scanimage -L (with/without sudo)

Xsane (with/without sudo)

also as root ....

show us the results.

luca.mg (luca-mg) wrote :
Download full text (10.4 KiB)

Hi Staedtler, I knew You were right, but I gave it a try; too bad Brother sold a linux supported product while in fact they give no support, and not a good after sale service for a 10 months old product.

This is (in short) the debugging output:

'sane-find-scanner' output
-------------- snip ----------------
found USB scanner (vendor=0x04f9 [Brother], product=0x035d [MFC-1910W]) at libusb:002:006
-------------- snip ----------------

'scanimage -L'

[sanei_debug] Setting debug level of dll to 255.
[dll] sane_init: SANE dll backend version 1.0.13 from sane-backends 1.0.27
[dll] sane_init/read_dlld: attempting to open directory `./dll.d'
[dll] sane_init/read_dlld: attempting to open directory `/etc/sane.d/dll.d'
[dll] sane_init/read_dlld: using config directory `/etc/sane.d/dll.d'
[dll] sane_init/read_dlld: considering /etc/sane.d/dll.d/iscan
[dll] sane_init/read_config: reading dll.d/iscan
[dll] add_backend: adding backend `epkowa'
[dll] sane_init/read_dlld: done.
[dll] sane_init/read_config: reading dll.conf
[dll] add_backend: adding backend `net'
[dll] add_backend: adding backend `abaton'
[dll] add_backend: adding backend `agfafocus'
[dll] add_backend: adding backend `apple'
[dll] add_backend: adding backend `avision'
[dll] add_backend: adding backend `artec'
[dll] add_backend: adding backend `artec_eplus48u'
[dll] add_backend: adding backend `as6e'
[dll] add_backend: adding backend `bh'
[dll] add_backend: adding backend `canon'
[dll] add_backend: adding backend `canon630u'
[dll] add_backend: adding backend `canon_dr'
[dll] add_backend: adding backend `cardscan'
[dll] add_backend: adding backend `coolscan'
[dll] add_backend: adding backend `coolscan3'
[dll] add_backend: adding backend `dell1600n_net'
[dll] add_backend: adding backend `dmc'
[dll] add_backend: adding backend `epkowa'
[dll] add_backend: `epkowa' is already there
-------------- snip ----------------
-------------- plenty of lines here, no brother backend though; backends are listed in aphabetical order, copy-pasted the text up to 'epkowa', which is the Epson Perfection 4490 Photo scanner (unplugged), since it is one of the scanners that do not work without tinkering with the backend location

[dll] sane_get_devices
-------------- snip ----------------
-------------- plenty of text here too, no brother backend found and loaded, I include the Epson Perfection lines

[dll] load: searching backend `epkowa' in `/usr/lib/x86_64-linux-gnu/sane'
[dll] load: trying to load `/usr/lib/x86_64-linux-gnu/sane/libsane-epkowa.so.1'
[dll] load: dlopen()ing `/usr/lib/x86_64-linux-gnu/sane/libsane-epkowa.so.1'
[dll] init: initializing backend `epkowa'
[dll] init: backend `epkowa' is version 1.0.213
-------------- snip ----------------
[dll] sane_get_devices: found 0 devices

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).
[dll] sane_exit: exiting
[dll] sane_exit: calling backend `xerox_mfp's exit function
-------------- snip ----------------
-------------- plenty of text again, n...

luca.mg (luca-mg) wrote :

The message is too big perhaps. I'll post again in small chuncks as soon as I have the chance.
In the meanwhile a 16.04 user reported the scanner failure, apparently due to a libsane1 update.
See https://forum.ubuntu-it.org/viewtopic.php?f=9&t=624458 page two, this is what he gets with 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.

could not open USB device 0x1d6b/0x0002 at 002:001: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0001 at 006:001: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0001 at 005:001: Access denied (insufficient permissions)
could not open USB device 0x04f2/0xb012 at 001:005: Access denied (insufficient permissions)
found USB scanner (vendor=0x04f9 [Brother], product=0x01f5 [MFC-5490CN]) at libusb:001:004
could not open USB device 0x18d1/0x4ee7 at 001:003: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0002 at 001:001: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0001 at 004:001: Access denied (insufficient permissions)
could not open USB device 0x1c4f/0x0003 at 003:003: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0001 at 003:001: Access denied (insufficient permissions)
  # 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.

Hi Luca can you try

/etc/udev/rules.d/99-local.rules

SUBSYSTEM!="usb_device", ACTION!="add", GOTO="_end"
# For BROTHER MFC-1910W
SYSFS{idVendor}=="04f9", SYMLINK+="scanner-%k",OWNER="root",GROUP="scanner",MODE="0660"
LABEL="_end"

Paul Nickerson (pgn674) wrote :

Thank you, staedtler-przyborski. The workaround you describe in comment #36 worked immediately for my Brother MFC-J220 scanner, on Ubuntu 17.10.

luca.mg (luca-mg) wrote :

Hi Staedtler, did that, and fought with several rules files before to no joy. What You suggest is pretty much the same as what the brother-udev-rule-type1 package does with a 60 sane something rules file, except that in the Brother installer script only the line 'SYMLINK' is active, the rest of the lines are commented out, including permissions, eventually preset for 0666; needless to say that I fiddled with all possible combinations of settings and name/location of the file with no result.

luca.mg (luca-mg) wrote :

My bad: the 'ENV' line is on by default, not the 'SYMLINK', my apologies. Following is the content of the 60-brother-mfp-type1.rules installed by the brother-udev-rule-type1 package. Uncommenting the options at the bottom doesn't make any difference: the scanner only works with xsane as true root.

#
# udev rules sample for Brother MFP
# version 1.0.2-0
#
# Copyright (C) 2012-2016 Brother. Industries, Ltd.
#
# copy to /etc/udev/rules.d or /lib/udev/rules.d
#

ACTION!="add", GOTO="brother_mfp_end"

SUBSYSTEM=="usb", GOTO="brother_mfp_udev_1"
SUBSYSTEM!="usb_device", GOTO="brother_mfp_end"
LABEL="brother_mfp_udev_1"

SYSFS{idVendor}=="04f9", GOTO="brother_mfp_udev_2"
ATTRS{idVendor}=="04f9", GOTO="brother_mfp_udev_2"
GOTO="brother_mfp_end"
LABEL="brother_mfp_udev_2"

# ATTRS{bInterfaceNumber}=="01", GOTO="brother_mfp_udev_3"
# ATTRS{bInterfaceNumber}=="02", GOTO="brother_mfp_udev_3"
# ATTRS{bInterfaceNumber}=="03", GOTO="brother_mfp_udev_3"
# GOTO="brother_mfp_end"
# LABEL="brother_mfp_udev_3"

ATTRS{bInterfaceClass}!="0ff", GOTO="brother_mfp_end"
ATTRS{bInterfaceSubClass}!="0ff", GOTO="brother_mfp_end"
ATTRS{bInterfaceProtocol}!="0ff", GOTO="brother_mfp_end"

#MODE="0666"
#GROUP="scanner"
ENV{libsane_matched}="yes"
#SYMLINK+="scanner-%k"

LABEL="brother_mfp_end"

Matt_H (matt-heimbach) wrote :

Like others, it appears this bug has made my Epson Perfection v30 unusable after upgrading to artful from zesty. It shows up via 'lsusb' but not 'scanimage -L'. I attempted the workaround by staedtler-przyborski, but after installing libsane1 1.0.27-1~experimental2ubuntu2.1 (by enabling artful-proposed and upgrading via synaptic), I actually do not have a /usr/lib/sane directory with the files needed to link to? Any ideas what I'm doing wrong?

@Matt_H

Sorry, I should have asked first: Are you on 32 or 64 bit ?

@staedtler-przyborski

Thanks. I am on 64-bit. I thought I had that epson plugin already
installed as I had it in my directory of non-repo software to install after
a clean Xubuntu install and I had to do a clean install while on zesty due
to a failed drive, but maybe not? Or maybe I need to re-install
regardless? Anyway, when I'm back home I will install that plugin and then
continue with #36. Thanks!

On Wed, Nov 15, 2017 at 9:58 AM, staedtler-przyborski <
<email address hidden>> wrote:

> @Matt_H
>
> Sorry, I should have asked first: Are you on 32 or 64 bit ?
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1728012
>
> Title:
> Many 3rd party scanner drivers are broken by a sane change
>
> Status in sane-backends package in Ubuntu:
> Confirmed
>
> Bug description:
> Many scanners can no more be used since sane has changed something:
> The 3rd-party plug-in the vendor provides as .deb package will still
> install. But the scanner is no more recognized.
>
> Scanners that are affected are(besides others):
> - Epson Perfection V10
> - Epson Perfection V1000
> - Epson WorkForce GT-1500
> - Brother MFC-8510DN
> - Epson Perfection V33
>
> It is to note that the probability that the scanner manufacturers fix
> things others broke is below 100%.
>
> ProblemType: Bug
> DistroRelease: Ubuntu 18.04
> Package: libsane1 1.0.27-1~experimental2ubuntu2
> Uname: Linux 4.14.0-041400rc5-lowlatency x86_64
> ApportVersion: 2.20.7-0ubuntu3.1
> Architecture: amd64
> Date: Fri Oct 27 12:35:52 2017
> EcryptfsInUse: Yes
> SourcePackage: sane-backends
> UpgradeStatus: No upgrade log present (probably fresh install)
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/sane-backends/+
> bug/1728012/+subscriptions
>

@ luca

could you do the following ?

'export SANE_DEBUG_DLL=128'

As user
'strace scanimage -L 2>strace.user.log'

As root

'strace scanimage -L 2>strace.root.log'

Finally

'diff strace.user.log strace.root.log'

And show us the diff ?

luca.mg (luca-mg) wrote :

Hi Staedtler, attached is the diff file, it's beyond my understanding :-) even more since scanimage -L does not detect the scanner even as root, although the scanner itself works running xsane from a root terminal.

I have no idea what 'more-magic' xsane uses, as simple magic of root using scanimage isn't sufficient.

as your diff shows no success, only 'permission denied' the cause of the failure can't be identified ...

maybe a

'export SANE_DEBUG_DLL=128'

As user
'strace xsane 2>strace.user.log'

As root

'strace xsane -L 2>strace.root.log'

Finally

'diff strace.user.log strace.root.log'

could be of help. Don't know. But it's worth a try, unless better ideas arise.

Sorry

As root also only (no -L)

'strace xsane 2>strace.root.log'

Matt_H (matt-heimbach) wrote :

@staedtler-przyborski - I'm up and running now, thanks!

luca.mg (luca-mg) wrote :

Hi Staedtler, attached the xsane diff file. I'm out of ideas as well, but thank You for Your time and effort.

Hi Luca,

In your diff.sane.txt I've found these two entries (problem seems related to settings of c189:130) :

< openat(AT_FDCWD, "/run/udev/data/c189:130", O_RDONLY|O_CLOEXEC) = 33
< fstat(33, {st_mode=S_IFREG|0644, st_size=670, ...}) = 0
< fstat(33, {st_mode=S_IFREG|0644, st_size=670, ...}) = 0
< read(33, "I:4009030\nE:ID_VENDOR=Brother\nE:"..., 4096) = 670
< read(33, "", 4096) = 0
< close(33) = 0
< getrandom("\213%[2\301\372\rH\260\347\r\2\374\2340\344", 16, GRND_NONBLOCK) = 16
---
> openat(AT_FDCWD, "/run/udev/data/c189:130", O_RDONLY|O_CLOEXEC) = 411
> fstat(411, {st_mode=S_IFREG|0644, st_size=670, ...}) = 0
> fstat(411, {st_mode=S_IFREG|0644, st_size=670, ...}) = 0
> read(411, "I:4009030\nE:ID_VENDOR=Brother\nE:"..., 4096) = 670
> read(411, "", 4096) = 0
> close(411) = 0
> getrandom("\"\215\241\234r\351\310\233\25\f\\\374`\3304N", 16, GRND_NONBLOCK) = 16

So next step would be:

1. 'sane-find-scanner'

last time you did this output was

'found USB scanner (vendor=0x04f9 [Brother], product=0x035d [MFC-1910W]) at libusb:002:006'

But please run it again for being sure, usb port could have changed...

2. 'udevadm info -a /dev/bus/usb/002/006' (/002/006 has to be replaced by output of 1.)

Post result here (Complete device please. Looks like: looking at device '/devices/pci0000:00/0000:00:14.0/usb3/3-3', parent devices are of no interest)

3. 'udevadm test /devices/pci0000:00/0000:00:14.0/usb3/3-3' (/devices/pci0000:00/0000:00:14.0/usb3/3-3 has to be replaced by output of 2.)

Post result here (Complete please. For interest are lines like : handling device node '/dev/bus/usb/003/004', devnum=c189:259, mode=0664, uid=0, gid=0
preserve permissions /dev/bus/usb/003/004, 020664, uid=0, gid=0
preserve already existing symlink '/dev/char/189:259' to '../bus/usb/003/004')

Thanks

luca.mg (luca-mg) wrote :
Download full text (13.1 KiB)

Good monday Staedtler, here it is. Regards, Luca

'sane-find-scanner' gave 'found USB scanner (vendor=0x04f9 [Brother], product=0x035d [MFC-1910W]) at libusb:002:003'
-----------------------------------------------------------------
'udevadm info -a /dev/bus/usb/002/003' gave

  looking at device '/devices/pci0000:00/0000:00:1d.7/usb2/2-4':
    KERNEL=="2-4"
    SUBSYSTEM=="usb"
    DRIVER=="usb"
    ATTR{authorized}=="1"
    ATTR{avoid_reset_quirk}=="0"
    ATTR{bConfigurationValue}=="1"
    ATTR{bDeviceClass}=="00"
    ATTR{bDeviceProtocol}=="00"
    ATTR{bDeviceSubClass}=="00"
    ATTR{bMaxPacketSize0}=="64"
    ATTR{bMaxPower}=="2mA"
    ATTR{bNumConfigurations}=="1"
    ATTR{bNumInterfaces}==" 3"
    ATTR{bcdDevice}=="0100"
    ATTR{bmAttributes}=="c0"
    ATTR{busnum}=="2"
    ATTR{configuration}==""
    ATTR{devnum}=="3"
    ATTR{devpath}=="4"
    ATTR{idProduct}=="035d"
    ATTR{idVendor}=="04f9"
    ATTR{ltm_capable}=="no"
    ATTR{manufacturer}=="Brother"
    ATTR{maxchild}=="0"
    ATTR{product}=="MFC-1910W"
    ATTR{quirks}=="0x0"
    ATTR{removable}=="unknown"
    ATTR{serial}=="E74244J6N463385"
    ATTR{speed}=="480"
    ATTR{urbnum}=="22"
    ATTR{version}==" 2.00"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb2':
    KERNELS=="usb2"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{authorized_default}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{bMaxPower}=="0mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bcdDevice}=="0413"
    ATTRS{bmAttributes}=="e0"
    ATTRS{busnum}=="2"
    ATTRS{configuration}==""
    ATTRS{devnum}=="1"
    ATTRS{devpath}=="0"
    ATTRS{idProduct}=="0002"
    ATTRS{idVendor}=="1d6b"
    ATTRS{interface_authorized_default}=="1"
    ATTRS{ltm_capable}=="no"
    ATTRS{manufacturer}=="Linux 4.13.0-16-generic ehci_hcd"
    ATTRS{maxchild}=="6"
    ATTRS{product}=="EHCI Host Controller"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="unknown"
    ATTRS{serial}=="0000:00:1d.7"
    ATTRS{speed}=="480"
    ATTRS{urbnum}=="178"
    ATTRS{version}==" 2.00"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7':
    KERNELS=="0000:00:1d.7"
    SUBSYSTEMS=="pci"
    DRIVERS=="ehci-pci"
    ATTRS{broken_parity_status}=="0"
    ATTRS{class}=="0x0c0320"
    ATTRS{companion}==""
    ATTRS{consistent_dma_mask_bits}=="32"
    ATTRS{d3cold_allowed}=="1"
    ATTRS{device}=="0x3a3a"
    ATTRS{dma_mask_bits}=="32"
    ATTRS{driver_override}=="(null)"
    ATTRS{enable}=="1"
    ATTRS{irq}=="23"
    ATTRS{local_cpulist}=="0-3"
    ATTRS{local_cpus}=="f"
    ATTRS{msi_bus}=="1"
    ATTRS{numa_node}=="-1"
    ATTRS{revision}=="0x00"
    ATTRS{subsystem_device}=="0x82d4"
    ATTRS{subsystem_vendor}=="0x1043"
    ATTRS{uframe_periodic_max}=="100"
    ATTRS{vendor}=="0x8086"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""
-----------------------------------------------------------------
'udevadm test /devices/pci000...

@Luca

Bingo

udevadm test /devices/pci0000:00/0000:00:1d.7/usb2/2-4'

shows:

'Invalid rule /etc/udev/rules.d/60-brother-libsane-type1.rules:17: unknown key 'SYSFS{idVendor}'

So consequently your device is configured as printer-only:

RUN '/lib/udev/tlp-usb-udev %p' /lib/udev/rules.d/85-tlp.rules:10
handling device node '/dev/bus/usb/002/003', devnum=c189:130, mode=0664, uid=0, gid=7
preserve permissions /dev/bus/usb/002/003, 020664, uid=0, gid=7
preserve already existing symlink '/dev/char/189:130' to '../bus/usb/002/003'
ACTION=add
BUSNUM=002
DEVNAME=/dev/bus/usb/002/003
DEVNUM=003
DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb2/2-4
DEVTYPE=usb_device
DRIVER=usb
ID_BUS=usb
ID_FOR_SEAT=usb-pci-0000_00_1d_7-usb-0_4
ID_MODEL=MFC-1910W
ID_MODEL_ENC=MFC-1910W
ID_MODEL_FROM_DATABASE=MFC-1910W
ID_MODEL_ID=035d
ID_PATH=pci-0000:00:1d.7-usb-0:4
ID_PATH_TAG=pci-0000_00_1d_7-usb-0_4
ID_REVISION=0100
ID_SERIAL=Brother_MFC-1910W_E74244J6N463385
ID_SERIAL_SHORT=E74244J6N463385
ID_USB_INTERFACES=:070102:ffffff:
ID_VENDOR=Brother
ID_VENDOR_ENC=Brother
ID_VENDOR_FROM_DATABASE=Brother Industries, Ltd
ID_VENDOR_ID=04f9
MAJOR=189
MINOR=130
PRODUCT=4f9/35d/100
SUBSYSTEM=usb
SYSTEMD_WANTS=udev-configure-printer@-devices-pci0000:00-0000:00:1d.7-usb2-2\x2d4.service printer.target
TAGS=:systemd:uaccess:seat:udev-configure-printer:
TYPE=0/0/0
USEC_INITIALIZED=4000906
libsane_matched=yes
run: 'uaccess'
run: '/lib/udev/tlp-usb-udev /devices/pci0000:00/0000:00:1d.7/usb2/2-4'

Hi Luca,

can you please remove /etc/udev/rules.d/60-brother-libsane-type1.rules completly ?

and add instead /etc/udev/rules.d/79-udev-brother.rules (see attach)

Don't worry about the 0777 (as long you posess your computer ;-). We can later try to reduce permissions (but 0666 makes no real difference ...)

luca.mg (luca-mg) wrote :

Hi Staedtler, bingo it is. I did try what You suggest, no joy, but the information that You collected (and that I couldn't even imagine of), have put me on the right track. Here's what works for me:

1) I created a /etc/udev/hwdb.d/brother4.hwdb file with the lines

usb:v04F9p035D*
 libsane_matched=yes

where the file is named after the backend, v049f is vendor ID, and p035d is product ID; those may very well change for other scanners :-)

2) edited the file /etc/sane.d/dll.d/libsane-extras and added the line

brother4

this may very well change for other backends :-))

no need for the brother-udev-rule-type1 package, nor for Your clever hack, which has been a good catch anyway. I did not investigate on permissions, but I may! HTH with other scanners too. Thanks for engaging into this all. Regards, Luca

luca.mg (luca-mg) wrote :

To be precise: "v049f is vendor ID, and p035d is product ID" should read "049f is vendor ID, and 035d is product ID", as in usb:vXXXXpXXXX, where the Xs are the outcome of lsusb.

luca.mg (luca-mg) wrote :

More on this, everything works as a user with simple-scan and gscan2pdf too, with both the Epson and the Brother scanners on I can select between peripherals. Again a public thank You to Staedtler for his help!

Congratulations, great work Luca. And big relief ...

So I summarize the workarounds as follows (no need to crawl through this lengthy bug report):

I.Brother:

1. brscan, brscan2, brscan3

a) 'sudo ln -sfr /usr/lib64/libbr* /usr/lib/x86_64-linux-gnu'
b) 'sudo ln -sfr /usr/lib64/sane/libsane-brother* /usr/lib/x86_64-linux-gnu/sane'
c) generate '/etc/udev/rules.d/59-udev-local.rules'
content:
# Brother brscan devices
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="*", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes"

2. brscan4
a) execute 'lsusb' to get VendorId (04f9) and ProductID
b) create '/etc/udev/hwdb.d/brother4.hwdb'
content:
usb:v04F9pYYYY* (pYYYY is product ID from lsusb, Example: usb:v04F9p035D, 04f9 is vendor ID, and 035d is product ID for BrotherMFC-1910W")
libsane_matched=yes
c) edit '/etc/sane.d/dll.d/libsane-extras'
add 'brother4'

II. Epson Iscan

a) 'sudo ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane'
b) generate '/etc/udev/rules.d/79-udev-epson.rules'
content:
# chmod device EPSON group
ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0777"

III. Xerox Workcentre 3225

a) 'sudo ln -sfr /usr/lib/sane/libsane-smfp* /usr/lib/x86_64-linux-gnu/sane'
b) 'sudo adduser $USER lp'

For me this looks like we have several bugs in one ;-)

e.g. III b) happens also on other libsane 1.0.27 installations and seems a libsane bug (at least it is listed there as bug)

Hopefully all this becomes obsolete with Ubuntu 18.04 ....

luca.mg (luca-mg) wrote :

This is regarding post #54, I went to https://forum.ubuntu-it.org/viewtopic.php?f=9&t=624458 and it turns out that it's a false alarm, since the user reporting libsane1 failure on ubuntu 16.04 was in fact running 17.10.

luca.mg (luca-mg) wrote :

Hi Staedtler, I didn't refresh the page before posting, so I didn't see Your post #76. Believe it or not the congrats go to You, I would have never done it without brainstorming with You, and Your posts #71 and 72 have been elightening. Regarding the /etc/sane.d/dll.d/libsane-extras file, I assume that to be in place the libsane-extras package has to be installed. I was so excited I forgot to double check if some symlink is needed between /usr/lib/sane and /usr/lib/x86_64-linux-gnu and the like. I'll report back if required, for the benefit of the summary. If I do not pop in it means that no other step is to be taken, but I'm here if anybody needs help or clarifications.
Regards, Luca

luca.mg (luca-mg) wrote :

Double checked, brscan4 symlinks required! To sum it up:
a) install libsane-extras
b) install brscan4
c) 'sudo ln -sfr /usr/lib64/sane/libsane-brother* /usr/lib/x86_64-linux-gnu/sane'
d) execute 'lsusb' to get VendorId (04f9) and ProductID
e) create '/etc/udev/hwdb.d/brother4.hwdb'
content:
usb:v04f9pYYYY* (pYYYY is product ID from lsusb, Example: usb:v04f9p035d, 04f9 is vendor ID, and 035d is product ID for Brother MFC-1910W")
libsane_matched=yes
f) edit '/etc/sane.d/dll.d/libsane-extras'
add 'brother4'
g) please take my apologies for rushing out the scoop. (and may the sane forgive me!)

Rajasekharan N (rajasekharan) wrote :

Here is the workaround for Samsung M2070.

1.) sudo ln -sfr /usr/lib/sane/libsane-smfp* /usr/lib/x86_64-linux-gnu/sane

2.) Edit the file 59-smfp_samsung.rules (find it here: /etc/udev/rules.d) to include the following code/scanner number along with other Samsung model numbers already there:
ATTRS{idProduct}=="2070", ENV{libsane_matched}="yes"

3.) Voila. It's working like a charm.

I was trolling the Internet like a headless chicken the whole day. Thanks a gazillion to staedtler-przyborski for saving me out.

Pep (pepsi-farkas-peter) wrote :

Comment #80 worked for me.
Thank you very much, you saved me :)

Ken Wright (wizard-bnnorth) wrote :

staedtler-przyborski, I wanted to thank you for your help. I've got an Epson Perfection V370 scanner that hasn't been working since the upgrade to Artful. Thanks to your instructions about making symlinks and 79-udev-epson.rules, xsane can now at least _find_ the scanner, a considerable improvement! Currently, however, simple scan, iscan, and xsane can't identify the model the way they used to, and still can't connect to the scanner. Xsane, for instance, takes a long time to scan for the devices and finds two scanners on the same port: [epkowa:usb:002:006] and [epkowa:interpreter:002:006]. No matter which one I choose, I get an error message that says "Failed to open device [devicename]: Invalid argument"

Any insights?

@ Ken Wright

As starting point:

output of

'lsusb'
and
'sudo sane-find-scanner'

'scanimage -L'

please

Ken Wright (wizard-bnnorth) wrote :

staedtler-przyborki, here you go!

Output of lsusb:

Bus 001 Device 005: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 016: ID 0cf3:0036 Atheros Communications, Inc.
Bus 001 Device 003: ID 064e:9205 Suyin Corp.
Bus 001 Device 002: ID 8087:8000 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 006: ID 04b8:014a Seiko Epson Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Output of sudo 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.

found USB scanner (vendor=0x0bda [Generic], product=0x0129 [USB2.0-CRW]) at libusb:001:005
found USB scanner (vendor=0x04b8 [EPSON], product=0x014a [EPSON Perfection V37/V370]) at libusb:002:006
  # 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.

Output of scanimage -L

device `epkowa:usb:002:006' is a Epson (unknown model) flatbed scanner
device `epkowa:interpreter:002:006' is a Epson (unknown model) flatbed scanner

It looks to me like scanimage isn't seeing what sane-find-scanner is, if that makes any sense.

Output(s) seem fine

have you installed

http://support.epson.net/linux/en/iscan.php?model=perfection-v370&version=1.0.1 ß

I guess so but for beeing sure ...

Also
sane-backends (1.0.27-1~experimental2ubuntu2.1) artful ?

I ask so much because in comment 21 the epson V-370 is told to be working. So it seems a problem with your setting

Ken Wright (wizard-bnnorth) wrote :

Yes, installing iscan was the first thing I did. I had to install it when I was running 16.04 and the scanner worked, so I knew it was needed.

I tried to install sane-backends, but I got this response:

sudo aptitude install sane-backends
[sudo] password for kwright:
Couldn't find any package matching "sane-backends", but there are 2 packages which contain "sane-backends" in their description:
  scanbd scanbd:i386
Unable to apply some actions, aborting
sudo aptitude install scanbd
scanbd is already installed at the requested version (1.4.4-1build2)
scanbd is already installed at the requested version (1.4.4-1build2)
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.

@ Ken Wright
You know this is not a helpdesk ?

open a terminal and paste

'apt list --installed |grep -e esci -e iscan -e libsane1'

this shows your installed Sane backends (libsane1) and your iscan installion

Ken Wright (wizard-bnnorth) wrote :

Here's the output:

iscan/now 2.30.2-2 amd64 [installed,local]
iscan-data/now 1.36.0-1 all [installed,local]
iscan-plugin-perfection-v370/now 1.0.0-2 amd64 [installed,local]
libsane1/artful-updates,now 1.0.27-1~experimental2ubuntu2.1 amd64 [installed]

Is this helpful at all?

@ Ken Wright

looks okay so far

finally

output of
'ls /usr/lib/x86_64-linux-gnu/sane/libsane-epkowa*'

and
'ls /etc/udev/rules.d/*.rules'

Ken Wright (wizard-bnnorth) wrote :

I think we may be on the verge of a solution.

$ ls /usr/lib/x86_64-linux-gnu/sane/libsane-epkowa
ls: cannot access '/usr/lib/x86_64-linux-gnu/sane/libsane-epkowa': No such file or directory
$ ls /etc/udev/rules.d/*.rules
/etc/udev/rules.d/70-snap.core.rules /etc/udev/rules.d/79-udev-epson.rules
/etc/udev/rules.d/70-snap.gimp.rules

libsane-epkowa appears to be missing. I'll see if I can find it and symlink it to /usr/lib/x86_64-linux-gnu/sane .

Ken Wright (wizard-bnnorth) wrote :

No joy. Error during device i/o.

If

1)'ls /usr/lib/sane/*'

shows:
/usr/lib/sane/libsane-epkowa.la /usr/lib/sane/libsane-epkowa.so.1.0.15
/usr/lib/sane/libsane-epkowa.so.1

then a
2)'sudo ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane'

is the cure for your scanner hickups ...

If not, you first need to reinstall iscan and then do 2).

Ken Wright (wizard-bnnorth) wrote :

Okay, I did all that. Fresh download of Iscan, made the symlinks, and I'm still getting the "Error during device I/O" message.

Try another USB -Port, (no USB 3 whenever possible), check USB cables,

check if the file 'iscan' is in 'etc/sane.d/dll.d/
content:
'epkowa'

edit '/etc/sane.d/dll.conf'

comment all entries by adding '#' in front of every line
add 'epkowa' (uncommented !)

edit '/etc/sane.d/epkowa.conf'
comment the lines
'usb' and 'scsi'
uncomment the line
'#usb 0x04b8 0x0110' by removing the '#' and correct ProductId (0x014a)
looks like 'usb 0x04b8 0x014a' then.
spend some candles and reboot ...

Finally: Are you really sure the scanner is working ?

Ken Wright (wizard-bnnorth) wrote :

Yes, I'm sure the scanner is working because this last round of fixes has it working! Thanks so very much!

louBurnard (lou-burnard) wrote :

My Epson Perfection V500 stopped working after I upgraded from 17.04 to 17.10, as per everyone else's.

I created the softlink

$sudo ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane

and created the file

$sudo nano /etc/udev/rules.d/79-udev-epson.rules

with content

 ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0777"

Still no joy.

>>>I then remembered to power the scanner off and on again <<<<

It works!

Thanks to all you wonderful Ubuntu users out there...

louBurnard (lou-burnard) wrote :

OTOH, Iscan now refuses to save its output as JPG or PNG.

I have an Epson Stylus TX235W which I used to print and scan wirelessly. Even after creating the /usr/lib/x86_64-linux-gnu soft links, scanimage -L still doesn't find my printer through the epkowa backend. However, it does find it through the epson2 backend, so that I can use xscan or Simple Scan. Indeed libsane1 has broken the epkowa sane backend.

PeterPall (peterpall) wrote :

About the Iscan, PNG and JPEG phenomenon: Iscan's png support still depends on an very old version of libpng. If this library isn't found support for the PNG format is dropped. I guess, libjpeg has been renamed (and most probably has changed its interface), as well.

@ marcelpaulo

have a look at comment #94

MARTIN (o-martin-n) wrote :

The problems is the same with lexmark CX310n scanner on ubuntu 64 bits >=16.04 (after sane update)

To fix the bug:

'sudo ln -sfr /usr/lib64/sane/libsane* /usr/lib/x86_64-linux-gnu/sane/'

Thanks

sz gy (gyszabolcs) wrote :

I still have no luck with Samsung M2070W scanner over wifi. :(

Are there anybody able to scan with M0270W over wifi with Ubuntu 17.10.
With Ubuntu 17.04 it was working fine.

KEVIN KENNY (ke9tv) wrote :

Bug definitely affects me with Epson Perfection V330 Photo. I can confirm that the workaround in #36 makes the scanner usable again.

bruno (kompliziert-hier) wrote :

«MeeToo».
My Epson Perfection V370 Photo does not work with my newly installed Kubuntu 17.10. With the 14.04-5 it works perfectly.
I do hope you will solve the problem before the Version 18.04 LTS is out.
I am still use the 14.10 as working version, but want to adobt myself with Plasma5

delijati (delijati) wrote :

Is there any progress or workaround? My printer, scanner (Brother DCP-J715W)

delijati (delijati) wrote :

got it working by adding `brother3` to `/etc/sane.d/dll.conf` as the driver is in `/usr/lib/x86_64-linux-gnu/sane/libsane-brother3.so` and adding `usb 04f9 0255` to `/etc/sane.d/brother.conf`.

PeterPall (peterpall) wrote :

A 2nd try for my patch: Actually include the new files.

PeterPall (peterpall) wrote :

Seems like the 1st try for my patch is lost including its description =>

I've tried to create a patch that automatically applies all workarounds on installing libsane1. The only thing I am not sure is the symlinks:
 - If we try to link the new directories to the old ones on a system update (when the old dir still exists) the link cannot be created. Hence the patch only creates them on a clean install.
 - and I have no idea if we can avoid creating the links on IA32 systems, too - where they don't do harm, but don't help, neither.

Perhaps we should compile a list of all individual files Epson, Brother and perhaps others provide and create a separate symlink for every file. Any ideas? And any volunteers for this?

The attachment "libsane1.patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Francisco Villar (villarf) wrote :

I still face the same issue with my Samsung M2070W scanner over wifi.
None of the workarounds and fixes worked for me.

Sam Wilson (samwilson.id.au) wrote :

I'm not sure which update did it, but without me doing anything my Epson V33 is working again now on Ubunbu 17.10.

A first test with Ubuntu 18.04 and my Epson V 300 showed: Things remain the same as with 17.10. Only after the steps described in post #76 my scanner began to work.

Btw. the opinion of the sane developers I talked with is rather clear and easy: those who broke things have to fix them.

Francisco Villar (villarf) wrote :

Question to those where this is working again, do you use your scanner over Wifi or over an USB cable?

Sam Wilson (samwilson.id.au) wrote :

Mine's with a USB cable.

Mika (70mike) wrote :

Thanks staedtler-przyborski. (#12)

It worked for me in 18.04 with epson scanner.
I hope it stays that way.

Vaclav Kosar (vackosar) wrote :

I have a problem with Samsung CLX-3185 scanner: the finder detects the scanner but scanimage not. I tried couple thing here, but they were either not relevant or didn't work.

For the record.
My scanner Epson Workforve WF-7610 was not recognized by iscan yet xsane recognized it.

sudo -u saned scanimage -L
returned
device `epson2:net:192.168.1.30' is a Epson PID 08B9 flatbed scanner

but it did not work.
It used to work flawesly with the same configuration BEFORE upgrading to 17.10.

My workaround:
a) Commented epson2 and epson in /etc/sane.d/dll.conf . I added epkowa.
b) epkowa.conf has the correct net ip.
c) I copied epkowa drivers to correct lib folder
cp /usr/lib/sane/libsane-epkowa.* /usr/lib/x86_64-linux-gnu/sane/

after that
sudo -u saned scanimage -L
returned
device `epkowa:net:192.168.1.30' is a Epson WF-7610/7620 Series flatbed scanner

and iscan ran again.

I have a Samsung M2070W. I have tried the workaround in #80, but unfortunately it did not work for me, even after restarting.

I can't seem to edit my previous post, but after running ldd on the .so file I noticed that libusb-0.1-4 was missing. Installing that package (on top of the workaround in #80) made the scanner work for me.

Ken Wright (wizard-bnnorth) wrote :

Well, it happened again. I just upgraded to 18.04 and once again my scanner isn't working. I've reinstalled the Epson driver (the scanner in question is a Perfection V370), created the symlinks, and made sure 79-udev-epson.rules had the correct contents. I've power-cycled the scanner and the computer, but no joy. I can run xsane as root, but when I try to run it as a user it immediately says "no devices found." Has anyone else experienced this?

Peter (lastcoderstanding) wrote :

Confirm this for

Samsung SCX-3200
ID 04e8:3441

Ubuntu 18.04 Server
connected via USB (worked flawlessly in 16.04)

Printer works (splix)

Scanner is detected, but when starting to scan: I/O Error
didn't install any third party drivers

Maxim Egorushkin (max0x7ba) wrote :

Had the same issue with Ubuntu 18.04 and Samsung SCX-3205W. Over Wi-Fi the printer worked, the scanner did not. In Ubuntu 16.04 both printer and scanner work.

Used advice from https://askubuntu.com/a/979180/125250 to fix the issue by adding `ATTRS{idProduct}=="3200", ENV{libsane_matched}="yes"` line to `59-smfp_samsung.rules`.

Maxim Egorushkin (max0x7ba) wrote :

Had the same issue with Ubuntu 18.04 and Samsung SCX-3205W. Over Wi-Fi the printer worked, the scanner did not. In Ubuntu 16.04 both printer and scanner work.

Used advice from https://bugs.launchpad.net/ubuntu/+source/sane-backends/+bug/1728012/comments/80 to fix the issue by adding `ATTRS{idProduct}=="3200", ENV{libsane_matched}="yes"` line to `59-smfp_samsung.rules`.

Steven Tryon (stryon) wrote :

Same with 18.04 and Epson V500 with current iScan installed.
Worked as installed with 16.04 and with workarounds with 17.10.

stryon@gimli:~$ scanimage -L
device `epkowa:interpreter:002:013' is a Epson Perfection V500 flatbed scanner
Note: Scanner light turns blinking red.

stryon@gimli:~$ sudo lsusb | grep Epson
Bus 002 Device 013: ID 04b8:0130 Seiko Epson Corp. GT-X770 [Perfection V500]

Copied /usr/lib/sane$/* to /usr/lib/x86_64-linux-gnu/sane
Commented out epson lines in /etc/sane.d/dll.conf and added epkowa
epkowa.conf has usb line enabled.

On starting xsane, xsane says "Scanning for devices" then scanner light turns blinking red.
"Acquire preview" pops up error window: Failed to start scanner: Invalid argument.

Similar results with iscan plugin for Gimp.

Steven Tryon (stryon) wrote :

Addendum to #124

/etc/udev/rules.d/79-udev-epson.rules shows
ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0777"

Raimondo Giammanco (rai) wrote :

The bug still affects Epson Perfection V330 Photo on Ubuntu 18.04 but the workaround in #36 makes the scanner usable again.
Nonetheless, iscan is still unable to save as .JPEG or .PNG. Is that a different issue?
I suspect that iscan and its interpreters are no longer actively maintained by EPSON, so...
Is there any known workaround?

Boaz Dodin (bdcomp) wrote :

@Raimondo It's a different issue - make sure the libjpeg62 package installed.

luca.mg (luca-mg) wrote :

After a bunch of Bionic updates the Brother MFC 1910W scanner gave up working; I have had to install the libsane-extras package and add the line "brother4" to the file /etc/sane.d/dll.d/libsane-extras to regain control of the device. Weird enough the Epson scanner wasn't affected by the updates.

Manuel (manuel-schulte) wrote :

I'm affected as well, my scanner is an Epson GT-S50 (0x04b8 0x0137).

I've documented my observations and trials to resolve on askubuntu.com: https://askubuntu.com/questions/1034528/epson-gt-s50-scanner-not-working-after-upgrade-to-18-04-from-16-04

I tried also to do a fresh install of Bionic, but same issue.

I tried to specify my scanner in /etc/sane.d/epkowa.conf (I've added "usb 0x04b8 0x0137" -without the double quotes- in the appropriate section of the file) and added the following UDEV rules in a 55-libsane.rules file under /etc/udev/rules.d/

> SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE=="0666"
SUBSYSTEM=="usb_device", MODE=="0666"
ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="0137", MODE="0666",
GROUP="scanner", ENV{libsane_matched}="yes"

So far, no luck, scanner remains stubbornly undetected :'(

Manuel (manuel-schulte) wrote :

ADDENDUM to #129: Ah! Success!

I followed the advice of comment #28 (https://bugs.launchpad.net/ubuntu/+source/sane-backends/+bug/1728012/comments/28), and it works !!!

Did the following:
$ sudo ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane

Then:
1. Removed the "usb 0x04b8 0x0137" entry I had added to /etc/sane.d/epkowa.conf
2. Added a 55-epson-libsane.rules file to /etc/udev/rules.d/ with the following text:
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE=="0666"
SUBSYSTEM=="usb_device", MODE=="0666"
ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0666"
ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="0137", MODE="0666", GROUP="scanner", ENV{libsane_matched}="yes"

Finally I unplugged / plugged my scanner and tried:
$ scanimage -L

And got this encouraging answer:
device `epkowa:interpreter:003:011' is a Epson GT-S50 flatbed scanner

Then I started iscan (Image Scan!) and it immediately detected my scanner.
I then could successfully scan a page.

The workaround is thus effective! Thanks to all contributions :-)

Sicabol (sicabol) wrote :

I have followed comment #96 for an Epson Perfection Photo V500 on Ubuntu 18.04 - it works perfectly.

Peter Bennett (pgbennett) wrote :

Brother DCP-7065DN Network Printer & scanner. I just installed Bionic alongside Xenial. Printer works fine on bionic with the brother drivers but the scanner is not found. The scanner works with Xenial. For xenial, after installing the Brother drivers, I had created links using "sudo ln -sf /usr/lib64/sane/libsane-brother4.so* /usr/lib/sane/". I ran that on bionic and the scanner is still not found.

Marco Bortoli (markus51) wrote :

Brother MFC-J480DW, printer ok, scanner doesn't work in Ubuntu 18.04, fresh installation yesterday. I use simple scan, scanner is not found. Scanner works fine with 16.04. In brother folder, brscan4-04.4-3.amd64.deb, libsane-common version 1.0.27-1 experimental3ubuntu 2. If you find the way to solve this problem ........

Letatcest (ksoeteman) wrote :

I'd like to add that Epson Perfection V500 works perfectly after installing all official Epson Linux drivers and follow the instructions at number 25: https://bugs.launchpad.net/ubuntu/+source/sane-backends/+bug/1728012/comments/25

But I don't think non-savvy Ubuntu users can figure this out on their own...

Peter Bennett (pgbennett) wrote :

Brother DCP-7065DN Network Printer & scanner on bionic (comment #132 above). I have now installed a chroot of xenial on my new bionic setup. In the chroot I installed the Brother scanner drivers and ran the "sudo ln -sf /usr/lib64/sane/libsane-brother4.so* /usr/lib/sane/". The scanner works perfectly in the chroot. "scanimage -L" displays the details of the scanner and scanimage successfully scans a page. Those things still do not work without chroot. Something in bionic is preventing it from working.

Ken Wright (wizard-bnnorth) wrote :

I've just tried a fresh install of Epson's drivers, deleting and reinstalling libsane-epkowa*, recreating the symlinks, all the process in Comment #96. This procedure worked for me on 17.10, but not on 18.04. What am I missing?

Manuel (manuel-schulte) wrote :

@Ken Wright:
For my scanner (Epson GT-S50 / epkowa driver), I added more in my udev rule file:
> SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE=="0666"
> SUBSYSTEM=="usb_device", MODE=="0666"
> ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0666"
> ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="0137", MODE="0666", GROUP="scanner", ENV{libsane_matched}="yes"

the last line is important, and is missing in the recommendations of comment #96, that is perhaps what is causing you trouble. NOTE: for your scanner, the line should read (cfr. #124):
> ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="0130", MODE="0666", GROUP="scanner", ENV{libsane_matched}="yes"

Hoping this will help. Cheers.

Brother MFC-7420 installed under fresh install of 18.04 and connected via USB. Brother2 drivers are installed. Have created links and local udev rules and almost have scanner working.

scanimage -L >>> device `brother2:bus2;dev4' is a Brother MFC-7420 USB scanner
scanimage --test >>> scanimage: open of device brother2:bus2;dev4 failed: Invalid argument

Using debug, scanimage test openned and successfully interrogated the scanner but failed with
[dll] sane_start(handle=0x55c29b5b7ee0)
scanimage: sane_start: Invalid argument

scanning to file was similar
[dll] sane_open: trying to open `brother2:bus2;dev1'
scanimage: open of device brother2:bus2;dev1 failed: Invalid argument

To get this far my drivers needed libusb-0.1-4 (userspace USB programming library). 18.04 uses libusb-1 and they are not interchangeable as I tried a simple link pointing to new version.

Is this a jigsaw puzzle with a couple of pieces missing

https://forums.opensuse.org/showthread.php/507627-Suse-13-2-scanner-no-longer-working-on-64-bit-version/page2?s=ac5dc860f0f94d47d233f69afdbfc346 has similar debug results to my prior comment. It was resolved by using a USB2 port instead of a USB3 port. Maybe this is another piece of the puzzle as I had to use an earlier version of libusb and my MB is recent with mainly USB3 - will try changing bios on another day

PeterPall (peterpall) wrote :

The USB3 issue should be resolved in the linux kernel bionic uses, see the following thread: https://www.spinics.net/lists/linux-usb/msg125193.html

Chris Rainey (ckrzen) wrote :

HP Color LaserJet MFP M477fnw also affected.

Thank you PeterPaul. Will try again after the next Bionic kernel upgrade. In the meantime the brother MFC is plugged into my 16.04 PC and network connected. The printer cost me $20 at a garage sale and only has USB.
PS - more pieces of the puzzle: the brother-udev-rule-type1 DEB package mentioned above as not necessary creates a file /opt/brother/scanner/udev-rules/type1/NN-brother-mfp-type1.rules and this rules file has a comment that it should be copied to the relevant udev folder - /etc/udev/rules.d;
The driver name is "Brother MFC7420 for CUPS" and does not have a hyphen after MFC so it appears after all MFC printers in the list of drivers and is easily missed

Ken Wright (wizard-bnnorth) wrote :

@Manuel,

I added the further content to my Rules file, but it didn't make any difference.

In case I haven't mentioned it, and because it may be important, I am able to scan as root, but not as a regular user.

Jean COLIN (carl174) wrote :

Had problem with EPSON perfection 3170 photo = GT9400UF

searched for long

to display what dll are used,
use command shell export SANE_DEBUG_DLL=128
then use command shell xsane
discovered that

[dll] load: searching backend `epkowa' in `/usr/lib/i386-linux-gnu/sane:/usr/lib/sane'
[dll] load: trying to load `/usr/lib/i386-linux-gnu/sane/libsane-epkowa.so.1'
[dll] load: dlopen()ing `/usr/lib/i386-linux-gnu/sane/libsane-epkowa.so.1'
[dll] init: initializing backend `epkowa'
[dll] init: backend `epkowa' is version 1.0.213

the file /usr/lib/i386-linux-gnu/sane/libsane-epkowa.so.1 (273k) is different from the file included in the driver downloaded from epsion (142k)

the file downloaded from epsion was installed at /usr/lib/sane/

copied this file from /usr/lib/sane/ to /usr/lib/i386-linux-gnu/sane/ (renamed file 273k for safety)

now
[dll] init: backend `epkowa' is version 1.0.208

and working (for me) - probable regression between version 1.0.208 and version 1.0.213

Regards

Regards

Manuel (manuel-schulte) wrote :

@Ken Wright,
Yes, you mentioned it and it is why I suggested to add the extra rules... but I may be wrong as I'm no udev expert :'(
Have you checked in your user settings if your account has "Use scanners" checked under "User privileges"? If not, maybe you'd have to give it a try to see if it solves the problem.

Manuel (manuel-schulte) wrote :

Same as Jean COLIN:
...
[dll] load: searching backend `epkowa' in `/usr/lib/x86_64-linux-gnu/sane'
[dll] load: trying to load `/usr/lib/x86_64-linux-gnu/sane/libsane-epkowa.so.1'
[dll] load: dlopen()ing `/usr/lib/x86_64-linux-gnu/sane/libsane-epkowa.so.1'
[dll] init: initializing backend `epkowa'
[dll] init: backend `epkowa' is version 1.0.213
[dll] load: searching backend `ls5000' in `/usr/lib/x86_64-linux-gnu/sane'
[dll] load: trying to load `/usr/lib/x86_64-linux-gnu/sane/libsane-ls5000.so.1'
[dll] load: dlopen()ing `/usr/lib/x86_64-linux-gnu/sane/libsane-ls5000.so.1'
[dll] init: initializing backend `ls5000'
[dll] init: backend `ls5000' is version 1.0.0
[dll] sane_get_devices: found 1 devices
[dll] sane_open: trying to open `epkowa:interpreter:003:006'
[dll] sane_open: open successful
...

Besides, in spite the fact the workaround worked for me (able to scan), there are still some issues:
a. the scanner is very slow to detect (at least one minute, against a few seconds under Ubuntu 16.04)
b. my scanner is sheet fed, but gets identified as a flatbed scanner, which results in some options being grayed out in "Image Scan!" (iscan)

I'll try as, Jean, to replace the libsane-epkowa.so.1 by the one provided with the Epkowa package to see if it solved those issues as well.

Ken Wright (wizard-bnnorth) wrote :

@Manuel,
You are a frickin' genius! I checked Users and Groups. Use scanners was checked, so I took a look at my groups. I has both saned and scanner, but was only a member of scanner. I joined saned, rebooted, and Robert is your mother's brother. Thank you so very much!

Peter Bennett (pgbennett) wrote :

Brother DCP-7065DN Network Printer & scanner on bionic (comment #132 and #135 above). Adding sane and scanner group and checking "use scanners" does not help. The scanner is still not recognized.

BobvanderPoel (bob-mellowood) wrote :

I just installed 18.04 and had the same problem ... so it's not fixed yet.

Seems that copying the epkowa files from /usr/lib/sane to /usr/lib/x86_64-linux-gnu/sane does the trick.

Ken Wright (wizard-bnnorth) wrote :

@Peter Bennett,

Have you created the symlinks from /usr/lib/sane to /usr/lib/x86_64-linux-gnu/sane? Alternatively, have you tried searching for the scanner as root?

Ken Wright (wizard-bnnorth) wrote :

@Peter Bennet,
try "sudo sane-find-scanner" (without the double quotes) and see if the scanner is recognized.

Peter Bennett (pgbennett) wrote :

@Ken Wright

I did set up the links with "sudo cp /usr/lib64/sane/libsane-brother4.so* /usr/lib/x86_64-linux-gnu/sane"

The "sudo sane-find-scanner" does not find it - that seems to be looking for USB scanners but this is network attached. It found my TV tuner (PCTV 801e) and thinks it may be a scanner.

"sudo scanimage -L" also does not find it

See below

peter@andromeda:~$ ls -l /usr/lib/x86_64-linux-gnu/sane/*bro*
-rwxr-xr-x 1 root root 158336 May 16 19:04 /usr/lib/x86_64-linux-gnu/sane/libsane-brother4.so
-rwxr-xr-x 1 root root 158336 May 16 19:04 /usr/lib/x86_64-linux-gnu/sane/libsane-brother4.so.1
-rwxr-xr-x 1 root root 158336 May 16 19:04 /usr/lib/x86_64-linux-gnu/sane/libsane-brother4.so.1.0.7
peter@andromeda:~$ ls -l /usr/lib/sane/*bro*
lrwxrwxrwx 1 root root 35 May 16 18:45 /usr/lib/sane/libsane-brother4.so -> /usr/lib64/sane/libsane-brother4.so
lrwxrwxrwx 1 root root 37 May 16 18:45 /usr/lib/sane/libsane-brother4.so.1 -> /usr/lib64/sane/libsane-brother4.so.1
lrwxrwxrwx 1 root root 41 May 16 18:45 /usr/lib/sane/libsane-brother4.so.1.0.7 -> /usr/lib64/sane/libsane-brother4.so.1.0.7

peter@andromeda:~$ sudo 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.

found USB scanner (vendor=0x2304 [YUANRD], product=0x023a [PCTV 801e]) at libusb:003:003
could not fetch string descriptor: Pipe error
  # 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.

peter@andromeda:~$ sudo 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).

Peter Bennett (pgbennett) wrote :

Correction to the prior post - the command to link the files was "ln -s" not "cp". I did try both linking and copying the files. Currently they are linked.

downward (invisioslice) wrote :

imagescan_3.30.0-1epson4ubuntu16.04_amd64.deb doesn't even install. I just can't use the scanner of my old EPSON XP-231

Ken Wright (wizard-bnnorth) wrote :

@downward,
Take a look at epson.com and download the latest drivers. I think that may help.

Ken Wright (wizard-bnnorth) wrote :

@Peter Bennett,
I'm sorry, I don't know anything about network connections, but that's where your problem lies. You've got the drivers linked, and the Epson rule, so once you get the network connection fixed you should be all right. Sorry I can't be of more help.

luca.mg (luca-mg) wrote :

@ Peter Bennet: hi there, I have a brother4 driven scanner too, all I did was to run the latest brother installer and install the libsane-extras package adding the line "brother4" to the file /etc/sane.d/dll.d/libsane-extras to get control of the otherwise not detected scanner. YMMV

PeterPall (peterpall) wrote :

In my case the network problem also involved gufw being configured to refuse all inbound connections: avahi's autodiscover requires you to ope. the ports needed for bonjour.

Peter Bennett (pgbennett) wrote :

@luca.mg
I tried what you suggested, and rebooted, but the scanner is still not found by scanimage -L

@Ken Wright
The network must be OK, because I can scan if I run under chroot in the same installation.

$Peterpall
I do not have gufw, or any firewall. the ports all should be open, and it does work under chroot so I don't think it is a network problem.

Ken Wright (wizard-bnnorth) wrote :

@Peter Bennett,

If you've got Synaptic, start it and search for ufw. I had it without knowing. I installed gufw, which is just a graphical interface to ufw and was able to check the firewall rules.

Peter Bennett (pgbennett) wrote :

@Ken Wright
Thanks for the info. I installed gufw. I found that the firewall was disabled for "Home" and enabled for "Office" and "Public". I disabled it for all and rebooted. scanimage -L still does not find the Brother scanner.

Ken Wright (wizard-bnnorth) wrote :

@Peter Bennett,

Let me make sure I'm following. scanimage -L doesn't find the scanner, but sudo scanimage -L does?

Peter Bennett (pgbennett) wrote :

No. sudo scanimage -L gives the same result. It does not detect the scanner. However schroot with chroot of Ubuntu 16.04 detects it correctly. See below.

peter@andromeda:~$ 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).

peter@andromeda:~$ sudo scanimage -L
[sudo] password for peter:

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).

peter@andromeda:~$ schroot -c chroot:xenial
(xenial)peter@andromeda:~$ scanimage -L
device `brother4:net1;dev0' is a Brother Brother_DCP7065DN DCP-7065DN
(xenial)peter@andromeda:~$

Steven Tryon (stryon) wrote :

Clean install of sane and Epson drivers and reseating cables appears to have taken care my problems with my Epson V500.

Karl Kastner (kastner-karl) wrote :

Samsung SCX-470x,04e8:3457 Samsung Electronics Co., Ltd, is affected as well, the scanner is detected, but if a scan is attempted, the error "Failed to start scanner: error during device i/o" is displayed. Then the connection to the device is lost and I need to restart the device.

Rajasekharan workaround fixed the problem, thanks for posting it!

Veron Rado (junket) wrote :

Samsung SCX-4600 ID 04e8:3433 suffers from this issue too.
It worked fine on Ubuntu 16.04 and 16.10. 17.10 seems to have caused it.

Simple Scan doesn't find the scanner anymore.
Xsane finds it. Sometimes it doesn't.
When it does find it, it fails to scan with "Failed to start scanner:Error during device I/O"

Scanimage finds it and works.
(It does crash with a segmentation fault trying `scanimage --test` but that might be a separate issue?)

I think the fix might be #80. But I don't have most ot the files listed:
- I don't have `/usr/lib/sane` directory at all.
- My `/etc/udev/rules.d` is empty.

Any pointers or tips are appreciated.

Ubuntu 18.04
uname -a
Linux atlantic 4.15.0-23-generic #25-Ubuntu SMP Wed May 23 18:02:16 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
The backend that's used is `xerox_mfp`

Veron Rado (junket) wrote :

Bit of a breakthrough :)

Launching simple scan and xsane via the terminal with the USB3 workaround[1] environmental variable works:
 $ SANE_USB_WORKAROUND=1 xsane
Or
 $ SANE_USB_WORKAROUND=1 simple-scan

The weird thing is I had previously set that variable by adding `export SANE_USB_WORKAROUND=1` in my ~/.bashrc as outlined here.[2]

But that *did not work*.

It's only by chance I tried this.
So, apparently for the SCX-4600, the USB3 issue is the culprit.

[1] See 'Note 3' in the 'Latest News' banner https://web.archive.org/web/20180630125520/http://www.sane-project.org/
[2] https://askubuntu.com/questions/966834/ubuntu-17-10-and-samsung-scx-4624f-scanner-not-working/966835#966835

Veron Rado (junket) wrote :

Found a permanent fix for Samsung SCX-4600 and USB3 issue.

According to ArchWiki[1] systemd and dbus don't pickup environment variables set in ~/.bashrc.
That explains why the .bashrc fix didn't work.
So the solution I finally found and went for was number 2 in the list on ArchWiki here[2]

Using nano I edited /etc/systemd/user.conf.
I appended this at the bottom of it:

DefaultEnvironment=SANE_USB_WORKAROUND=1

Then I rebooted (I don't know how to get systemd to reload /etc/systemd/user.conf with out rebooting)

And tah-dah!
Simple scan and Xsane now work as normal.

[1] https://wiki.archlinux.org/index.php?title=Environment_variables&oldid=518529#Per_user
[2] https://wiki.archlinux.org/index.php?title=Systemd/User&oldid=528307#Environment_variables

Adam Gwizdz (amgwizdz) wrote :

Thanks staedtler-przyborski. Your solution #14 helped me for my Brother MFC-495CW scanner.

Ken Wright (wizard-bnnorth) wrote :

Well, tanj-dammit! I had this problem fixed and now it's happening again! I've gone through all the fixes in this thread to no avail. Should I start another issue or stay here with people who understand?

Ilja (ilja-schmelzer) wrote :

I also have a problem installing Panasonic KX-MB1500 on Ubuntu 18.04 LTS. Drivers taken from https://panasonic.net/cns/pcc/support/fax/common/table/linuxdriver.html#SD As a printer and a copy device it works. Installation itself seemed unproblematic. In the past, version 14., it has worked, it failed in 16 but I have not tried hard.

lsusb gives:

Bus 001 Device 005: ID 04da:0f0b Panasonic (Matsushita)
Bus 001 Device 002: ID 0bda:8179 Realtek Semiconductor Corp. RTL8188EUS 802.11n Wireless Network Adapter

sudo sane-find-scanner gives:

found USB scanner (vendor=0x0bda [Realtek], product=0x8179 [802.11n NIC]) at libusb:001:002
could not fetch string descriptor: Pipe error

sudo scanimage -L gives nothing.

The end of my /lib/udev/rules.d/60-libsane1.rules looks like
-----
# Hewlett-Packard ScanJet 6300C
ATTRS{type}=="3", ATTRS{vendor}=="HP", ATTRS{model}=="C7670A", ENV{libsane_matched}="yes"

# Panasonic MFS scanners
ATTRS{idVendor}=="04da", ENV{libsane_matched}="yes"

LABEL="libsane_rules_end"
----

Rob Cannell (r-cannell) wrote :

Thanks Staedtler. I can confirm the problem still exists on 18.04 with Epson V200. Your solution worked for me.

fabianbur (fabianbur) wrote :

I can confirm the problem still exists on 18.04 with Samsung SCX-3200.
Thanks Staedtler. What would be a solution with this scanner?

Yevhen (onegin-ua) wrote :

Thanks Staedtleк-przyborski and Luca-mg!
After update Ubuntu 16.04 to Ubuntu 18.04 my Brother DCP-J315W hasn't worked as scanner.
Your solution helped me and my scanner works again on brscan4.

Peter Bennett (pgbennett) wrote :

There is an updated driver for the Brother DCP-7065DN scanner on the Brother web site, dated 5/31/2018. This fixes the problem. see https://www.brother-usa.com/support/DCP7065DN

RadekB (rrrbbb) wrote :

Confirmed for Epson V37.

robbielink (robbielink) wrote :

#36 worked for me - Brother MFC420CN
Thanks!

Maximilian Borm (bormolino) wrote :

Same on my Samsung 2070M. Works perfect under ubuntu 16.04 LTS but not under 18.04 LTS. Scanner not found by simple scan and sane.

Laszlo Keki (ssabra) wrote :

Hello. I have the same problem. Just changed from 16 to Ubuntu 18.04.1 LTS and my Brother DS-620 scanner which was working perfectly before, now not working. I tried all the recipes mentioned above but nothing scanner is not identified. Solution, updates?

Wilhelm Hagg (wilhelmhagg) wrote :

Same problem for Epson Perfection V39

Wladimir Mutel (mwg) wrote :

Dear package maintainers,
as you see, 'epkowa' and some other Epson backends are clearly mispackaged.
Also, Epson USB device permissions should be set properly by udev
Let's see if this problem does have any chances to be fixed in Ubuntu 18.04 before 20.04 is released

Hello, I can confirm I was having the same problem with an Epson Perfection V10 in 18.04 that was solved creating the file '/etc/udev/rules.d/79-udev-epson.rules' and creating links to the libraries ('ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane')

Thanks

Bruno leite (brunocleite) wrote :

Same problem here for Xerox WorkCentre 3025

I'm having the same problem with Samsung M2070 scanner, but thanks to the information here I was able to patch it working. I linked the files located in /usr/lib/sane (copied there likely by the samsung driver installer) to /usr/lib/x86_64-linux-gnu/sane and now the scan works both over the usb and the network.

Barry Harding (barryha) wrote :

This is a problem with an Epson GT-1500 in ubuntu 18.04 and the work around does not help. This problem seems to have been here for a long long time. Isn't there anyone to try to fix it??

Wladimir Mutel (mwg) wrote :

well, what is really mispackaged, is Epson's iscan 1.0.1 package which places its .so backends into /usr/lib/sane , which is now went our of sync with multi-arch library paths like /usr/lib/x86_64-*-*/sane , introduced in some of past Ubuntu release

Seiko Epson Corp. GT-F650 [GT-S600/Perfection V10/V100] doesn't work in simple-scan in 18.04.1 LTS (Bionic Beaver). It worked without issues in the previous LTS release. After extracting the firmware and setting up the symlinks mentioned in this topic, at least XSane is working. I'm using it now in a virtual machine in 16.04. :(

Polló László (lpollo1) wrote :

I have a Epson L382 printer/scanner machine and i use the software available from Epson. The scanner software do not find the scanner - after the upgrade. sane-find-scanner write this: found USB scanner (vendor=0x04b8 [EPSON], product=0x1120 [L382 Series]) at libusb:002:004 could not open USB device 0x1d6b/0x0002 at 002:001: Access denied (insufficient permissions) scanimage -L write this: 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). The printer part of the machine working properly.

Jeremy Bicha (jbicha) wrote :

I understand why /usr/lib64/ doesn't work right now on Ubuntu (that's a directory commonly used by Fedora and Red Hat distros).

I don't understand why /usr/lib/sane/ doesn't work according to the comments here. When sane-backends was converted to multiarch, a patch was added that I think was supposed to enable /usr/lib/sane/ to still be supported.

https://jff.email/cgit/sane-backends.git/commit/?id=ac1cb335be
https://jff.email/cgit/sane-backends.git/tree/debian/patches/0125-multiarch_dll_search_path.patch

If that patch worked, then maybe it makes sense to just add /usr/lib64/ there too.

I don't have a scanner myself to test any of this.

PeterPall (peterpall) wrote :

Making the library automatically look for plug-ins in all possible places they can be found would be a great idea: This would mean that it doesn't matter if the plug-in expects the library multiarch or not.

If I interpret the 0125-patch correctly it changes the path plugins are found in instead of adding a second one.

Lloyd Hayes (hayeslloyd) wrote :

I also have this problem, but not with all Epson scanners. My combination Artisan 837 printer/scanner works fine. But my Epson Perfection V600 won't work. And after following the directions here I ended up with 2 drivers for my Epson Artisan 837. But the Epson V600 is still not working.

The V600 is used for high-res scans of prints and negatives/transparencies. It naturally works on my old Windows computer, which I want to get rid of. The reason for this V600 scanner is that it can scan at over 12,000 dpi. It has a 2nd IR lens built-in for restoring old images.

In the past, I have been able to get this scanner to work on my Linux system. But that was in the past, and may have been before I upgraded to the current Ubuntu Linux version...

Cześć

Udało ci się może rozwiązać problem skanowania w Xerox Workcentre 3225?
Mam to samo, po update do 18.04, skaner przestał działać.
Sposób z linkami symbolicznymi nie działa.

Pozdrawiam

Jeremy Bicha (jbicha) wrote :

PeterPall, thank you for your help. I opened LP: #1795725 for the multiarch issue and forwarded the bug to Debian.

Is there a complete list of the udev rules collected so far that we should consider adding to the Ubuntu packaging?

Thierry B. (thierrybo2) wrote :

Latest Epson 1.3.38 driver released 10-18-2018 use multiarch folders now

e-fernbach (e-fernbach) wrote :

I have a problem with a HP ScanJet 4370. The scanner is correctly recognized (lsusb output: Bus 001 Device 012: ID 03f0:4105 Hewlett-Packard ScanJet 4370).

sudo scanimage -L output: device `hp3900:libusb:001:013' is a Hewlett-Packard Scanjet 4370 flatbed scanner

scanimage --test output: scanimage: sane_start: Invalid argument

after power cycling the scanner scanimage --test results vary from passing results over scanimage: scanning image of size 433x590 pixels at 24 bits/pixel
scanimage: acquiring RGB frame, 8 bits/sample
scanimage: reading one scanline, 1299 bytes... FAIL Error: End of file reached
to scanimage: sane_start: Invalid argument

The scanner worked fine under Linux Mint 18 and Ubuntu 17.10.

System: Ubuntu 18.04.1

Epson V370 Scanner working for me with simple scan on Ubuntu18.04 after using Staedtler's suggestions above.

ie. - install the driver from epson site, then.

~$ sudo cp /usr/lib/sane/libsane-epk* /usr/lib/x86_64-linux-gnu/sane/
~$ sudo vim /etc/udev/rules.d/79-udev-epson.rules

(inserting the following).

# chmod device EPSON group
# ACTION=="add", ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0666"
ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0777"

Many thanks.

e-fernbach (e-fernbach) wrote :

I am just a user, thus this post may sound naive but perhaps it gives a different perspective:

Sane used to work until "something" was changed an now it doesn't work anymore for many people. My naive questions:
what was/is the benefit of the change?
do the benefits outweigh the created problems?
if not is there a way to fall back to the original situation?

Hartmut Jürgens (quantfin) wrote :

Brother MFC-215C: Installing drivers from support.brother.com is not sufficient.
But it worked after setting two symbolic links:
~$ sudo ln -s /usr/lib/sane/libsane-brother2.so.1.0.7 /usr/lib/x86_64-linux-gnu/sane/libsane-brother2.so.1.0.7
~$ sudo ln -s /usr/lib/x86_64-linux-gnu/sane/libsane-brother2.so.1.0.7 /usr/lib/x86_64-linux-gnu/sane/libsane-brother2.so.1

Peter Hebert (peterhebert) wrote :

Can confirm that louBurnard's method mentioned in comment #96 also worked for me with Ubuntu 18.04 and the Epson Perfection V500. Thanks also to staedtler-przyborski for his tip in #36.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers