[sane-devel] cannon p208 raspberian
Olaf Meeuwissen
paddy-hack at member.fsf.org
Fri Nov 27 09:49:41 UTC 2015
Hi Stan,
Sorry for the late reply. I meant to follow-up earlier.
Stan writes:
> Hi,
>
> does anyone have an experience with using sane on rasperian OS?
Not me.
> I have found officil linux driver for cannon P-208 scanner.
You may want to mention where so others can find it too.
> Followed installation instruction and compiled module with specific Sane
> backend sane-backends-1.0.19
1.0.19? That's ancient, but not necessarily problematic.
> but it did not helped anything.
>
> Most strange is that sane-find-scanner reports as scanner network
> devices but not the real scanner.
Please note that sane-find-scanner is mostly just a heuristic. It
hasn't got much attention in the last, oh, four years.
I had a peek at the source code basically reports *any* USB device with
a vendor specific class as a scanner. While many USB scanners *are* in
fact devices in the vendor specific class, the reverse is of course not
necessarily true.
> What to do with this?
I wouldn't care too much about the results of sane-find-scanner.
> [...]
> pi at raspberrypi ~ $ sudo scanimage -L
> [bjnp] create_broadcast_socket: bind socket to local address failed -
> Cannot assign requested address
>
> 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).
> pi at raspberrypi ~ $
As you have installed the "official driver", one would assume the above
would find your scanner. It doesn't. Often this is due to the driver
getting installed in a place where scanimage won't find it. Assuming
that rasperian is like most Linux distributions, the "drivers" are very
likely installed in /usr/lib/sane/ or /usr/lib/*/sane/ (where the * is
shorthand for an architecture/OS specific name, on my system that would
be x86_64-linux-gnu).
If your "official driver" is installed in any of these places, you may
need to add it to dll.conf (normally installed in /etc/sane.d/) to solve
your problem.
If your "official driver" ended up getting installed some other place,
e.g. /usr/local/lib/sane/, you can:
- add symbolic links from /usr/lib/sane/ to the installed location, or
- set and export LD_LIBRARY_PATH to include the directory your driver
was installed to
You still may have to add it to dll.conf before things work, though.
> On 22/11/15 2:58 PM, Stan wrote:
>> [...]
>> I have also found that product id is slightly different for my device to
>> the one in cannon config, for my device it reports "e" at the end
>> instead of "c"
>> [...]
>> so I added line with my product id to /etc/sane.d/canon_dr.conf
>> # P-208
>> usb 0x1083 0x164c
>> usb 0x1083 0x164e
If the canon_dr backend supports your scanner that should to the trick.
But, seeing that you had to add them, we don't know yet whether the
canon_dr backend actually does.
>> not sure for what this exatly is but I have also created
>> /lib/udev/rules.d/40-libsane.rules
# These are used to set device access permissions. You will need to
# replug your scanner to make sure the permissions are updated.
>> with
>> # Canon P208
>> ATTRS{idVendor}=="1083", ATTRS{idProduct}=="164e",
>> ENV{libsane_matched}="yes"
>>
>> # Canon P208
>> ATTRS{idVendor}=="1083", ATTRS{idProduct}=="164c",
>> ENV{libsane_matched}="yes"
Assuming you followed the pattern of the installed libsane.rules, that
should do.
>> Not sure what else to check.
You might want to try running scanimage so that it produces debugging
output. Maybe that will give other people a clue. To do so for the
canon_dr backend
SANE_DEBUG_CANON_DR=127 scanimage -L
For the "official driver" all I can do is guess. I would try something
like for the canon_dr backend but with the CANON_DR part replaced by the
driver name in ALLCAPS (or check the source code for a hint to turn on
debugging).
By the way, to check if scanimage finds your "official driver", you can
use
SANE_DEBUG_DLL=5 scanimage -L
# Bigger numbers normally mean more debugging output.
Hope this helps,
--
Olaf Meeuwissen, LPIC-2 FSF Associate Member since 2004-01-27
Support Free Software Support the Free Software Foundation
https://my.fsf.org/donate https://my.fsf.org/join
GnuPG key: F84A2DD9/B3C0 2F47 EA19 64F4 9F13 F43E B8A4 A88A F84A 2DD9
More information about the sane-devel
mailing list