[sane-devel] Canon Maxify MB5455

Rolf Bensch rolf at bensch-online.de
Thu Nov 7 20:36:09 GMT 2019

Hi Louis,

Am 04.11.19 um 22:43 schrieb Louis Lagendijk:
> Hi Rolf,
> I am testing my new printer/scanner: a Maxify MB5455.
> I found out that it needs the PIXMA_CAP_ADF_JPEG flag for ADF support.
> But with that flag it scans the first page, pulls in a second page and
> then exits. I seem to recall that you fixed that for some other
> scanners? Can you please help?

Do you have one or two sheets in the document feeder?

The imageclass sub-backend has a timeout function for inserting sheets
into the document feeder after the scan has been started. I think it
should be similar for the mp150 sub-backend. The timeout has a parameter
(adf-wait) which can be set from any frontend. Sorry, I cannot test
this. I haven't any scanner with ADF.

> I already added the MB5400_PID to the check for the button handling
> code as I would guess that that is correct (like for the MB5000 series)
> but that did not make a difference> Is there a easy way to test the
> button code without setting up scanbd?

(1) push any button
(2) from a console call:
    $ SANE_DEBUG_PIXMA=11 scanimage -A

You should find this inside the response:
        Update button state
[pixma] INTR T=1.224 len=32
[pixma]  00000000:00 00 00 00 01 00 00 00  00 00 00 00 00 00 00 00
[pixma]  00000010:00 00 00 05 00 00 00 00  00 00 00 00 00 00 00 00
    --button-1 <int> [1] [read-only]
        Button 1
    --button-2 <int> [0] [read-only]
        Button 2
    --original <int> [0] [read-only]
        Type of original to scan
    --target <int> [5] [read-only]
        Target operation type
    --scan-resolution <int> [0] [read-only]
        Scan resolution

I pushed a button which has been detected as "target no. 5". Each button
has it's own target number.

--button-1 and --button-2 are historical buttons from old mp150 devices.

Some multi functional scanners use menu driven buttons. Then you can set
the target and the scan resolution from scanner's menu and this info
will be shown from the particular parameters.

You can see different button implementations in function handle_interrupt().

> Thanks in advance for your help
> Louis

You're welcome.


More information about the sane-devel mailing list