[sane-devel] cannon p208 raspberian

Stan stan at analytica.biz
Tue Mar 8 07:05:33 UTC 2016


Hi,

I have set up scanbd to detect buttons.
Did set up filter for name "button" and scanbd reports existence of button-3
However I get always 0 no matter if button is pressed or not.
My understanding of sane is limited, how can I debug button information 
in sane?
Did anyone try to read state of the single button on canon P-208?

Thanks for help.

Stan.


On 28/11/15 2:14 PM, m. allan noah wrote:
> Thanks for the confirmation- I will add a note to our scanner list
> about the switch. Another option would be for us to figure out what
> the windows driver does to the mass storage device to make it
> available as a scanner. This would require a wireshark log under
> windows.
>
> allan
>
> On Sat, Nov 28, 2015 at 6:37 AM, Stan <stan at analytica.biz> wrote:
>> 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,
>>>
>>
>> --
>> sane-devel mailing list: sane-devel at lists.alioth.debian.org
>> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/sane-devel
>> Unsubscribe: Send mail with subject "unsubscribe your_password"
>>              to sane-devel-request at lists.alioth.debian.org
>
>
>



More information about the sane-devel mailing list