Package: libsane Version: 1.0.25-4.1 Severity: important Dear Maintainer,
SANE worked correctly and reliably for me in Debian 8/Jessie (package version 1.0.24-8+deb8u2.) Since upgrading to 9/Stretch, it no longer does. Specifically, I have an HP ScanJet 7400c connected via USB. When I first turn it on, sane-find-scanner sees it correctly: found USB scanner (vendor=0x03f0 [hp], product=0x0801 [hp scanjet 7400c]) at libusb:001:013 Running scanimage -L right away shows after 5 seconds: device `avision:libusb:001:013' is a Hewlett-Packard ScanJet 7400c flatbed scanner Running it again immediately, it pauses for 60 seconds, then sometimes shows the same line, other times shows that no devices were detected. If I try to use it with a front-end such as Skanlite after initial power up, it looks for devices for 5 seconds (normal,) connects to my scanner, but then takes about 60 seconds to complete initial communication and display its GUI. (This used to be 1 second or so.) The scanner then works correctly for that session, despite some problems with the initial communication: "1 instead of 0 arguments to message { DPI} supplied before conversion." "1 instead of 0 arguments to message { DPI} supplied before conversion." "1 instead of 0 arguments to message { %} supplied before conversion." "1 instead of 0 arguments to message { %} supplied before conversion." "1 instead of 0 arguments to message { DPI} supplied before conversion." "1 instead of 0 arguments to message { DPI} supplied before conversion." "1 instead of 0 arguments to message { %} supplied before conversion." "1 instead of 0 arguments to message { DPI} supplied before conversion." If I exit Skanlite and check sane-find-scanner again, it still displays the scanner correctly: found USB scanner (vendor=0x03f0 [hp], product=0x0801 [hp scanjet 7400c]) at libusb:001:014 But if I now start Scanlite again, it looks for devices for about 60 seconds, finds the scanner, tries to communicate with it for another 60 seconds, then reports an I/O error: sane_open(" "avision:libusb:001:014" ", &handle) failed! status = Error during device I/O Other times it doesn't even find the scanner and reports via GUI pop-up that SANE couldn't find any device. Indeed at these points, sane-find-scanner reports: could not fetch string descriptor: Operation timed out could not fetch string descriptor: Pipe error found USB scanner (vendor=0x03f0, product=0x0801) at libusb:001:017 (I had power-cycled the scanner so the USB bus ID changed) When I try using xsane v0.999, it fails almost every time. When I first power up the scanner and start xsane, it looking for devices for 5 seconds (normal,) attempts to communicate with the scanner for 60 seconds, then reports "Error during device I/O." sane-find-scanner shows the same problem at that point: could not fetch string descriptor: Operation timed out could not fetch string descriptor: Pipe error found USB scanner (vendor=0x03f0, product=0x0801) at libusb:001:018 In that state, running xsane again causes it to look for devices for 60 seconds then fail to find any. Possibly related, libsane no longer sees my webcam. I did try using the environment variable SANE_USB_WORKAROUND=1 as suggested on http://www.sane-project.org/ but that made no difference. So there are at least two problems: 1) I/O errors preventing the scanner from being detected or used and 2) the 60s lag during initial communication every time after the first after device power up. None of this was a problem on Debian 8/Jessie or 7/Wheezy. The only thing I did differently was install sane-utils to get sane-find-scanner to help troubleshoot. -- System Information: Debian Release: 9.3 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.9.0-5-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system)