[sane-devel] FUJITSU fi-4340Cd ADF and page-height

m. allan noah kitno455 at gmail.com
Tue Jun 28 12:09:45 UTC 2011


you must set the page-height option. it is disabled when you are in
flatbed mode. flatbed mode is the default for fujitsu machines which
have flatbed. so you should see it like this:

scanimage --source="ADF duplex" -h

Note also that the backend operation is dependent on the order of the
options, so you should likely set the 'fundamental' (for lack of
better term) options before the scan area options:

scanimage --source "ADF Duplex" --mode Gray --page-height=297 -l 0 -t
0 -x 210 -y 297 --batch-start=1 --batch-count=2 --resolution 200

allan

On Tue, Jun 28, 2011 at 7:56 AM, Mario Goppold <mgoppold at tbz-pariv.de> wrote:
> Hi,
>
> I have some problems to scan A4 sized pages form ADF with the fujitsu
> backend.
>
> Every time the backend rounds the page to letter:
>
> SANE_DEBUG_FUJITSU=25 scanimage -l 0 -t 0 -x 210 -y 297 --source "ADF
> Duplex" --mode Gray --batch-start=1 --batch-count=2 --resolution 200
> --verbose
>
> [fujitsu] update_params: start
> [fujitsu] update_params: x: max=10368, page=10200, gpw=10368, res=600
> [fujitsu] update_params: y: max=72816, page=13200, gph=72816, res=600
> [fujitsu] update_params: area: tlx=0, brx=10200, tly=0, bry=13200
> [fujitsu] update_params: params: ppl=5100, Bpl=15300, lines=6600
> [fujitsu] update_params: params: format=1, depth=8, last=1
> [fujitsu] update_params: finish
> ...
> [fujitsu] update_params: start
> [fujitsu] update_params: x: max=10368, page=10200, gpw=10200, res=200
> [fujitsu] update_params: y: max=72816, page=13200, gph=13200, res=200
> [fujitsu] update_params: area: tlx=0, brx=9923, tly=0, bry=13200
> [fujitsu] update_params: params: ppl=1653, Bpl=1653, lines=2200
> [fujitsu] update_params: params: format=0, depth=8, last=1
> [fujitsu] update_params: finish
>
> The second update_param happens due to the iterpretation of the source=ADF.
>
> The options --page-width/--page-height are inactive so I can't set them
> as you suggested in "Not able to scan A3 size with Fujitsu fi-5650c"
> 05.02.2011
>
> In fujitsu.c:get_page_height I find the following:
>
>  /* current paper size for adf not overscan */
>  if(s->overscan != MSEL_ON){
>      return s->page_width;
>  }
>
> My questions is why returns get_page_height s->page_width an not s->max_y?
>
> If get_page_height returns s->max_y I can scan pages in A4 and all other
> greater then letter:
>
> [fujitsu] update_params: start
> [fujitsu] update_params: x: max=10368, page=10200, gpw=10368, res=600
> [fujitsu] update_params: y: max=72816, page=13200, gph=72816, res=600
> [fujitsu] update_params: area: tlx=0, brx=10200, tly=0, bry=13200
> [fujitsu] update_params: params: ppl=5100, Bpl=15300, lines=6600
> [fujitsu] update_params: params: format=1, depth=8, last=1
> [fujitsu] update_params: finish
> ...
> [fujitsu] update_params: start
> [fujitsu] update_params: x: max=10368, page=10200, gpw=10200, res=200
> [fujitsu] update_params: y: max=72816, page=13200, gph=72816, res=200
> [fujitsu] update_params: area: tlx=0, brx=9923, tly=0, bry=14033
> [fujitsu] update_params: params: ppl=1653, Bpl=1653, lines=2338
> [fujitsu] update_params: params: format=0, depth=8, last=1
> [fujitsu] update_params: finish
>
>
> I think the problem lies in the interpretation/evaluation of br_y. But
> I can not see where the value changes.
>
> Original Code with some more debugs:
>
> [fujitsu] sane_get_option_descriptor: 10
> [fujitsu] MG get_page_height: x: max=10368, page=10200, res=200
> max_basic=5184 basic_res=600
> [fujitsu] MG get_page_height: y: max=72816, page=13200, res=200
> max_basic=36408 basic_res=600
> [fujitsu] MG get_page_height: area: tlx=0, brx=9923, tly=0, bry=13200
> [fujitsu] MG get_page_height: Fall s->overscan != MSEL_ON return 13200
> [fujitsu] MG get_page_height: x: max=10368, page=10200, res=200
> max_basic=5184 basic_res=600
> [fujitsu] MG get_page_height: y: max=72816, page=13200, res=200
> max_basic=36408 basic_res=600
> [fujitsu] MG get_page_height: area: tlx=0, brx=9923, tly=0, bry=13200
> [fujitsu] MG get_page_height: Fall s->overscan != MSEL_ON return 13200
> [fujitsu] MG sane_get_option_descriptor: option==OPT_BR_Y
> get_page_height 13200
> [fujitsu] MG sane_get_option_descriptor: option==OPT_BR_Y br_y_range.max
> 18308400
> MG scanimage: option br-y = 297
> [dll]
> sane_control_option(handle=0x805a8b0,option=10,action=1,value=0xbfa0aeb0,info=0xbfa0addc)
> [fujitsu] sane_control_option: set value for 'br-y' (10)
> [fujitsu] MG sane_control_option set : OPT_BR_Y   val_c/(1 << 16)=
> 279.36
> [fujitsu] MG sane_control_option set : OPT_BR_Y             val_c=
> 18308400
> [fujitsu] MG sane_control_option set : OPT_BR_Y           s->br_y=
>  13200
> [fujitsu] MG sane_control_option set : OPT_BR_Y no update needed
> MG scanimage: option br-y = 279.364
> scanimage: rounded value of br-y from 297 to 279.364
>
>
>
>
>
> and with get_page_height returns s->max_y:
>
> [fujitsu] sane_get_option_descriptor: 10
> [fujitsu] MG get_page_height: x: max=10368, page=10200, res=200
> max_basic=5184 basic_res=600
> [fujitsu] MG get_page_height: y: max=72816, page=13200, res=200
> max_basic=36408 basic_res=600
> [fujitsu] MG get_page_height: area: tlx=0, brx=9923, tly=0, bry=13200
> [fujitsu] MG get_page_height: Fall s->overscan != MSEL_ON return
> s->max_y 72816
> [fujitsu] MG get_page_height: x: max=10368, page=10200, res=200
> max_basic=5184 basic_res=600
> [fujitsu] MG get_page_height: y: max=72816, page=13200, res=200
> max_basic=36408 basic_res=600
> [fujitsu] MG get_page_height: area: tlx=0, brx=9923, tly=0, bry=13200
> [fujitsu] MG get_page_height: Fall s->overscan != MSEL_ON return
> s->max_y 72816
> [fujitsu] MG sane_get_option_descriptor: option==OPT_BR_Y
> get_page_height 72816
> [fujitsu] MG sane_get_option_descriptor: option==OPT_BR_Y br_y_range.max
> 100995792
> MG scanimage: option br-y = 297
> [dll]
> sane_control_option(handle=0x805a8b0,option=10,action=1,value=0xbfb4bc40,info=0xbfb4bb6c)
> [fujitsu] sane_control_option: set value for 'br-y' (10)
> [fujitsu] MG sane_control_option set : OPT_BR_Y   val_c/(1 << 16)=
> 296.99
> [fujitsu] MG sane_control_option set : OPT_BR_Y             val_c=
> 19463771
> [fujitsu] MG sane_control_option set : OPT_BR_Y           s->br_y=
>  13200
> [fujitsu] MG sane_control_option set : OPT_BR_Y new br_y=14033 reload
> PARAMS+OPTIONS
> MG scanimage: option br-y = 296.994
> scanimage: rounded value of br-y from 297 to 296.994
>
>
>
> Why is val_c in the above Log 18308400 and not 19463771 and how depends
> it on page_height?
>
> The whole logs are available on reqest.
>
> Thanks in advance.
>
> Mario
>
>
>
>
> --
> 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
>



-- 
"The truth is an offense, but not a sin"



More information about the sane-devel mailing list