[sane-devel] cannon p208 raspberian

Stan stan at analytica.biz
Sat Nov 28 11:37:31 UTC 2015


Olaf, thanks for help,
Switching switch to auto start off, reports correct device id 0x1083 
0x164c and scanner is properly detected.

So sorted ;o)

Thanks again.

Stan

On 27/11/15 10:49 AM, Olaf Meeuwissen wrote:
> 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,
>



More information about the sane-devel mailing list