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