[sane-devel] Looking to add support for Avision AV50F plus scanner

Ove Laurum laurum.tech at gmail.com
Wed Sep 4 14:27:49 BST 2024


Hello and thanks for your responses.

The effort does not dissuade me, it will have to take the time it takes, in
the meantime I will just have to retain a windows VM for using the scanner.

Luja, Yes, I did Open up the scanner, but all chips were covered with
stickers and pads, so I have not yet tried to take them off and read the
chips.
The one visible number "MBA691 100/103 MP 00485509*103*AB1501160083" looks
like it's referring to the Circuit board.
I did not see anything looking like a tty/rs232 port, as you can see in the
image of the circuit board from the original email attachment.
Well, there is what looks like a place to solder in a 2*4 connector in one
place, hard to tell what the purpose may be. It's just called J6.
But before I do any of that, I have been looking for some wiki that has a
list of scanners and their chips/circuits listed, or where would I find a
list to compare with?
Also fyi, the scanner is at least 10 years old but works fine on Windows
10, I have not tried Windows 11.

Ralph, I was trying to find where the source code is, GIT hub? or
somewhere else? so that I can take a look at the code for some examples of
backends. I assume it's written in C.
I found
https://www.commandlinux.com/man-page/man-page/man-page/man5/sane-avision.5.html

So I will start there trying to figure out how to read logs for the scanner
as per your suggestion.

The other thing I will have to do is to trace a successful scan operation
on Windows.
My goto tracer would be wireshark, I know I can trace USB ports in Linux so
I assume that is possible on Windows as well to get a trace of
successful scanning.
But is there a better tool to trace the USB traffic on Windows for the
purpose of establishing some form of API?

Thanks again.

Ove

On Tue, 3 Sept 2024 at 19:02, Ralph Little <skelband at gmail.com> wrote:

> Hi,
>
> On Mon, Sep 2, 2024 at 6:38 AM Ove Laurum <laurum.tech at gmail.com> wrote:
>
>> Hello.
>>
>> I am new to sane but hope to find some guidance on how I can help adding
>> this printer to sane supported devices.
>>
>> I am trying to use a scanner "Avision AV50F plus" on Linux (Ubuntu).
>> I do not see it listed as a supported scanner by sane.
>> Also after installing xsane it is not recognised, see command line output
>> at the end of the mail.
>> The scanner works fine on Windows with Avision driver and SW and Button
>> Manager SW.
>> I have attached screenshots from Windows Device Manager.
>> I also attached a photo of the circuit board of the scanner as well as a
>> pdf  product sheet of the scanner.
>>
>> I would be grateful for any advice on:
>> a: has anybody else tried, failed, succeeded in adding support, if so
>> what is your experience?
>> b: what is the recommended process for me to follow?
>> c: how do I know if this can be added to an existing backend, or if I
>> need to write a new backend.
>> d: any advice on how to trace the driver/scanner communication on windows
>> to reverse engineer the protocol?
>>
>>
> Many Avision devices use a specific prococol supported by the avision
> backend.
> It might be worthwhile adding the identity of this scanner to the backend
> and having a look at the diagnostic output set using the SANE_DEBUG_AVISION
> environmental variable set to some highish number (e.g. 50). Early on,
> IIRC, the backend queries the device for capabilities. If the device gives
> some kind of proper response to this request then that would be the best
> place to start.
>
> But it is not for the faint of heart.
>
> Cheers,
> Ralph
>
>
>> Looking forward to contributing to sane.
>> Kind regards
>> Ove.
>>
>>
>>
>>
>>
>> Command Line Output:
>>
>> $ 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 possible USB scanner (vendor=0x04a9 [Canon], product=0x190f
>> [CanoScan], chip=GL848+) at libusb:001:004
>> found possible USB scanner (vendor=0x0638 [AVISION], product=0x2b6a
>> [AV50F Plus]) at libusb:001:003
>>   # 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.
>>
>> $ sudo scanimage -L
>> device `genesys:libusb:001:004' is a Canon LiDE 220 flatbed scanner
>>
>> $ lsusb
>> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
>> Bus 001 Device 002: ID 0627:0001 Adomax Technology Co., Ltd QEMU Tablet
>> Bus 001 Device 003: ID 0638:2b6a Avision, Inc. AV50F Plus
>> Bus 001 Device 004: ID 04a9:190f Canon, Inc. CanoScan LiDE 220
>> Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/sane-devel/attachments/20240904/16e32702/attachment.htm>


More information about the sane-devel mailing list