Closed diabolusss closed 1 year ago
Xerox_mfp driver and sane debug log:
$ export SANE_DEBUG_DLL=255 && export SANE_DEBUG_XEROX_MFP=4 && scanimage -L
[09:22:12.865644] [sanei_debug] Setting debug level of dll to 255.
[09:22:12.865721] [dll] sane_init: SANE dll backend version 1.0.13 from sane-backends 1.0.32
[09:22:12.865736] [dll] sane_init/read_dlld: attempting to open directory `./dll.d'
[09:22:12.865749] [dll] sane_init/read_dlld: attempting to open directory `/etc/sane.d/dll.d'
[09:22:12.865763] [dll] sane_init/read_dlld: using config directory `/etc/sane.d/dll.d'
[09:22:12.865788] [dll] sane_init/read_dlld: considering /etc/sane.d/dll.d/utsushi
[09:22:12.865807] [dll] sane_init/read_config: reading dll.d/utsushi
[09:22:12.865828] [dll] add_backend: adding backend `utsushi'
[09:22:12.865841] [dll] sane_init/read_dlld: considering /etc/sane.d/dll.d/airscan
[09:22:12.865855] [dll] sane_init/read_config: reading dll.d/airscan
[09:22:12.865868] [dll] add_backend: adding backend `airscan'
[09:22:12.865881] [dll] sane_init/read_dlld: done.
[09:22:12.865898] [dll] sane_init/read_config: reading dll.conf
[09:22:12.865919] [dll] add_backend: adding backend `escl'
[09:22:12.865928] [dll] add_backend: adding backend `hp'
[09:22:12.865935] [dll] add_backend: adding backend `hp3500'
[09:22:12.865945] [dll] add_backend: adding backend `hp3900'
[09:22:12.865954] [dll] add_backend: adding backend `hp4200'
[09:22:12.865962] [dll] add_backend: adding backend `hp5400'
[09:22:12.865971] [dll] add_backend: adding backend `hp5590'
[09:22:12.865993] [dll] add_backend: adding backend `hpljm1005'
[09:22:12.866002] [dll] add_backend: adding backend `hpsj5s'
[09:22:12.866011] [dll] add_backend: adding backend `hs2p'
[09:22:12.866027] [dll] add_backend: adding backend `pint'
[09:22:12.866042] [dll] add_backend: adding backend `xerox_mfp'
[09:22:12.866051] [dll] add_backend: adding backend `smfp'
[09:22:12.866070] [dll] sane_get_devices
[09:22:12.866080] [dll] load: searching backend `smfp' in `/usr/lib/sane'
[09:22:12.866088] [dll] load: trying to load `/usr/lib/sane/libsane-smfp.so.1'
[09:22:12.866105] [dll] load: dlopen()ing `/usr/lib/sane/libsane-smfp.so.1'
[09:22:12.867982] [dll] init: initializing backend `smfp'
[09:22:12.880831] [dll] init: backend `smfp' is version 1.0.1
[09:22:13.882132] [dll] load: searching backend `xerox_mfp' in `/usr/lib/sane'
[09:22:13.882196] [dll] load: trying to load `/usr/lib/sane/libsane-xerox_mfp.so.1'
[09:22:13.882219] [dll] load: dlopen()ing `/usr/lib/sane/libsane-xerox_mfp.so.1'
[09:22:13.882651] [dll] init: initializing backend `xerox_mfp'
[09:22:13.882681] [sanei_debug] Setting debug level of xerox_mfp to 4.
[09:22:13.882690] [xerox_mfp] sane_init: Xerox backend (build 13), version != null, authorize != null
[09:22:13.891292] [dll] init: backend `xerox_mfp' is version 1.0.13
[09:22:13.891320] [xerox_mfp] sane_xerox_mfp_get_devices: 0x7ffeab904220, 0
[09:22:13.891428] [xerox_mfp] list_one_device: tcp 192.168.1.111
[09:22:13.891446] [xerox_mfp] tcp_dev_open: open tcp 192.168.1.111
[09:22:13.894179] [xerox_mfp] :: dev_command(INQUIRY[0x12], 70)
[09:22:13.894281] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[09:22:14.971689] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 0
[09:22:14.971755] [xerox_mfp] dev_command: illegal response len 0, need 70
[09:22:14.971766] [xerox_mfp] tcp_dev_close: closing dev 0x5649ead50220
[09:22:14.971884] [xerox_mfp] list_one_device: dev_inquiry(tcp 192.168.1.111): Error during device I/O
[09:22:14.971975] [dll] load: searching backend `pint' in `/usr/lib/sane'
[09:22:14.971992] [dll] load: trying to load `/usr/lib/sane/libsane-pint.so.1'
[09:22:14.972013] [dll] load: couldn't open `/usr/lib/sane/libsane-pint.so.1' (No such file or directory)
[09:22:14.972023] [dll] load: couldn't find backend `pint' (No such file or directory)
[09:22:14.972042] [dll] load: searching backend `hs2p' in `/usr/lib/sane'
[09:22:14.972051] [dll] load: trying to load `/usr/lib/sane/libsane-hs2p.so.1'
[09:22:14.972073] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hs2p.so.1'
[09:22:14.972361] [dll] init: initializing backend `hs2p'
[09:22:14.972927] [dll] init: backend `hs2p' is version 1.0.0
[09:22:14.972960] [dll] load: searching backend `hpsj5s' in `/usr/lib/sane'
[09:22:14.972970] [dll] load: trying to load `/usr/lib/sane/libsane-hpsj5s.so.1'
[09:22:14.972985] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hpsj5s.so.1'
[09:22:14.973359] [dll] init: initializing backend `hpsj5s'
[09:22:14.973554] [dll] init: backend `hpsj5s' is version 1.0.3
[09:22:14.973575] [dll] load: searching backend `hpljm1005' in `/usr/lib/sane'
[09:22:14.973584] [dll] load: trying to load `/usr/lib/sane/libsane-hpljm1005.so.1'
[09:22:14.973599] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hpljm1005.so.1'
[09:22:14.973895] [dll] init: initializing backend `hpljm1005'
[09:22:14.974028] [dll] init: backend `hpljm1005' is version 1.0.1
[09:22:14.974052] [dll] load: searching backend `hp5590' in `/usr/lib/sane'
[09:22:14.974062] [dll] load: trying to load `/usr/lib/sane/libsane-hp5590.so.1'
[09:22:14.974091] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp5590.so.1'
[09:22:14.974391] [dll] init: initializing backend `hp5590'
[09:22:14.974513] [dll] init: backend `hp5590' is version 1.0.8
[09:22:14.974532] [dll] load: searching backend `hp5400' in `/usr/lib/sane'
[09:22:14.974543] [dll] load: trying to load `/usr/lib/sane/libsane-hp5400.so.1'
[09:22:14.974565] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp5400.so.1'
[09:22:14.974844] [dll] init: initializing backend `hp5400'
[09:22:14.975006] [dll] init: backend `hp5400' is version 1.0.3
[09:22:14.975027] [dll] load: searching backend `hp4200' in `/usr/lib/sane'
[09:22:14.975036] [dll] load: trying to load `/usr/lib/sane/libsane-hp4200.so.1'
[09:22:14.975049] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp4200.so.1'
[09:22:14.975339] [dll] init: initializing backend `hp4200'
[09:22:14.975494] [dll] init: backend `hp4200' is version 1.0.0
[09:22:14.975515] [dll] load: searching backend `hp3900' in `/usr/lib/sane'
[09:22:14.975524] [dll] load: trying to load `/usr/lib/sane/libsane-hp3900.so.1'
[09:22:14.975538] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp3900.so.1'
[09:22:14.976325] [dll] init: initializing backend `hp3900'
[09:22:14.976474] [dll] init: backend `hp3900' is version 1.0.0
[09:22:14.976501] [dll] load: searching backend `hp3500' in `/usr/lib/sane'
[09:22:14.976510] [dll] load: trying to load `/usr/lib/sane/libsane-hp3500.so.1'
[09:22:14.976529] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp3500.so.1'
[09:22:14.976769] [dll] init: initializing backend `hp3500'
[09:22:14.976857] [dll] init: backend `hp3500' is version 1.0.0
[09:22:14.976875] [dll] load: searching backend `hp' in `/usr/lib/sane'
[09:22:14.976886] [dll] load: trying to load `/usr/lib/sane/libsane-hp.so.1'
[09:22:14.976902] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp.so.1'
[09:22:14.977203] [dll] init: initializing backend `hp'
[09:22:14.977232] [dll] init: backend `hp' is version 1.0.8
[09:22:14.977816] [dll] load: searching backend `escl' in `/usr/lib/sane'
[09:22:14.977836] [dll] load: trying to load `/usr/lib/sane/libsane-escl.so.1'
[09:22:14.977849] [dll] load: dlopen()ing `/usr/lib/sane/libsane-escl.so.1'
[09:22:14.997963] [dll] init: initializing backend `escl'
[09:22:14.999620] [dll] init: backend `escl' is version 1.0.0
[09:22:16.018668] [dll] load: searching backend `airscan' in `/usr/lib/sane'
[09:22:16.018700] [dll] load: trying to load `/usr/lib/sane/libsane-airscan.so.1'
[09:22:16.018727] [dll] load: dlopen()ing `/usr/lib/sane/libsane-airscan.so.1'
[09:22:16.022409] [dll] init: initializing backend `airscan'
API: sane_init(): called
loading configuration file /etc/sane.d/airscan.conf
MDNS: AVAHI_CLIENT_S_RUNNING
WSDD: netif addresses update:
WSDD: + 192.168.1.218
WSDD: + fe80::aa5e:45ff:fe38:3f1d%2
WSDD: + 10.160.195.129%2
WSDD: + fe80::216:3eff:fec7:3df0%4
WSDD: 192.168.1.218: started discovery, UDP port=39699
WSDD: fe80::aa5e:45ff:fe38:3f1d: started discovery, UDP port=44714
WSDD: 10.160.195.129: started discovery, UDP port=39658
WSDD: fe80::216:3eff:fec7:3df0: started discovery, UDP port=33992
[09:22:16.030165] [dll] init: backend `airscan' is version 1.0.0
API: sane_get_devices(): called
zeroconf: zeroconf_device_list_get: requested
zeroconf: device_list wait: requested
zeroconf: device_list wait: DNS-SD not finished...
MDNS: browse-ipv6("_ipp._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_ipps._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_uscan._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_uscans._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_scanner._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_ipp._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
MDNS: browse-ipv6("_ipps._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
MDNS: browse-ipv6("_uscan._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
zeroconf: ZEROCONF_USCAN_TCP: initial scan finished
MDNS: browse-ipv6("_uscans._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
zeroconf: ZEROCONF_USCANS_TCP: initial scan finished
zeroconf: device_list wait: DNS-SD not finished...
MDNS: browse-ipv6("_scanner._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
zeroconf: ZEROCONF_MDNS_HINT: initial scan finished
zeroconf: device_list wait: WSDD not finished...
WSDD: 192.168.1.218: done discovery
WSDD: fe80::aa5e:45ff:fe38:3f1d: done discovery
WSDD: fe80::216:3eff:fec7:3df0: done discovery
WSDD: 10.160.195.129: done discovery
zeroconf: ZEROCONF_WSD: initial scan finished
zeroconf: device_list wait: OK
zeroconf: zeroconf_device_list_get: building list of devices
zeroconf: zeroconf_device_list_get: resulting list:
zeroconf: WSD "w0:Samsung SL M2875FD:8018"
zeroconf: eSCL "e1:Samsung SL M2875FD:9400"
API: sane_get_devices(): done
[09:22:18.543965] [dll] load: searching backend `utsushi' in `/usr/lib/sane'
[09:22:18.543988] [dll] load: trying to load `/usr/lib/sane/libsane-utsushi.so.1'
[09:22:18.544019] [dll] load: dlopen()ing `/usr/lib/sane/libsane-utsushi.so.1'
[09:22:18.549993] [dll] init: initializing backend `utsushi'
[09:22:18.550034] [dll] init: backend `utsushi' is version 1.1.0
[09:22:18.663406] [dll] sane_get_devices: found 3 devices
device `escl:http://192.168.1.111:80' is a Samsung M267x 287x Series (192.168.1.111) flatbed or ADF scanner
device `airscan:w0:Samsung SL M2875FD:8018' is a WSD Samsung SL M2875FD:8018 ip=192.168.1.111
device `airscan:e1:Samsung SL M2875FD:9400' is a eSCL Samsung SL M2875FD:9400 ip=192.168.1.111
[09:22:18.663450] [dll] sane_exit: exiting
[09:22:18.663459] [dll] sane_exit: calling backend `smfp's exit function
[09:22:18.663800] [dll] sane_exit: calling backend `xerox_mfp's exit function
[09:22:18.663859] [dll] sane_exit: calling backend `hs2p's exit function
[09:22:18.663902] [dll] sane_exit: calling backend `hpsj5s's exit function
[09:22:18.663952] [dll] sane_exit: calling backend `hpljm1005's exit function
[09:22:18.663990] [dll] sane_exit: calling backend `hp5590's exit function
[09:22:18.664037] [dll] sane_exit: calling backend `hp5400's exit function
[09:22:18.664076] [dll] sane_exit: calling backend `hp4200's exit function
[09:22:18.664118] [dll] sane_exit: calling backend `hp3900's exit function
[09:22:18.664161] [dll] sane_exit: calling backend `hp3500's exit function
[09:22:18.664199] [dll] sane_exit: calling backend `hp's exit function
[09:22:18.664238] [dll] sane_exit: calling backend `escl's exit function
[09:22:18.664290] [dll] sane_exit: calling backend `airscan's exit function
API: sane_exit(): called
API: sane_exit(): OK
[09:22:18.668680] [dll] sane_exit: calling backend `utsushi's exit function
[09:22:18.668736] [dll] sane_exit: finished
I suppose it just doesn't know how to wake printer from sleep!? i'll check this later...
Ful log while scanning:
$ export SANE_DEBUG_DLL=255 && export SANE_DEBUG_XEROX_MFP=4 && scanimage -d "xerox_mfp:tcp 192.168.1.111" --format=png -p -v --resolution=100 --mode=Lineart --source=ADF -x 216 -y 297 --batch='./SCANx%d.png'
[12:49:41.747628] [sanei_debug] Setting debug level of dll to 255.
[12:49:41.747689] [dll] sane_init: SANE dll backend version 1.0.13 from sane-backends 1.0.32
[12:49:41.747704] [dll] sane_init/read_dlld: attempting to open directory `./dll.d'
[12:49:41.747718] [dll] sane_init/read_dlld: attempting to open directory `/etc/sane.d/dll.d'
[12:49:41.747733] [dll] sane_init/read_dlld: using config directory `/etc/sane.d/dll.d'
[12:49:41.747758] [dll] sane_init/read_dlld: considering /etc/sane.d/dll.d/utsushi
[12:49:41.747776] [dll] sane_init/read_config: reading dll.d/utsushi
[12:49:41.747795] [dll] add_backend: adding backend `utsushi'
[12:49:41.747808] [dll] sane_init/read_dlld: considering /etc/sane.d/dll.d/airscan
[12:49:41.747823] [dll] sane_init/read_config: reading dll.d/airscan
[12:49:41.747833] [dll] add_backend: adding backend `airscan'
[12:49:41.747847] [dll] sane_init/read_dlld: done.
[12:49:41.747861] [dll] sane_init/read_config: reading dll.conf
[12:49:41.747881] [dll] add_backend: adding backend `escl'
[12:49:41.747891] [dll] add_backend: adding backend `hp'
[12:49:41.747899] [dll] add_backend: adding backend `hp3500'
[12:49:41.747908] [dll] add_backend: adding backend `hp3900'
[12:49:41.747916] [dll] add_backend: adding backend `hp4200'
[12:49:41.747923] [dll] add_backend: adding backend `hp5400'
[12:49:41.747930] [dll] add_backend: adding backend `hp5590'
[12:49:41.747939] [dll] add_backend: adding backend `hpljm1005'
[12:49:41.747948] [dll] add_backend: adding backend `hpsj5s'
[12:49:41.747956] [dll] add_backend: adding backend `hs2p'
[12:49:41.747969] [dll] add_backend: adding backend `pint'
[12:49:41.747983] [dll] add_backend: adding backend `xerox_mfp'
[12:49:41.747991] [dll] add_backend: adding backend `smfp'
[12:49:41.748012] [dll] sane_open: trying to open `xerox_mfp:tcp 192.168.1.111'
[12:49:41.748023] [dll] load: searching backend `xerox_mfp' in `/usr/lib/sane'
[12:49:41.748032] [dll] load: trying to load `/usr/lib/sane/libsane-xerox_mfp.so.1'
[12:49:41.748047] [dll] load: dlopen()ing `/usr/lib/sane/libsane-xerox_mfp.so.1'
[12:49:41.748241] [dll] init: initializing backend `xerox_mfp'
[12:49:41.748256] [sanei_debug] Setting debug level of xerox_mfp to 4.
[12:49:41.748267] [xerox_mfp] sane_init: Xerox backend (build 13), version != null, authorize != null
[12:49:41.756988] [dll] init: backend `xerox_mfp' is version 1.0.13
[12:49:41.757028] [xerox_mfp] sane_xerox_mfp_open: 'tcp 192.168.1.111'
[12:49:41.757037] [xerox_mfp] sane_xerox_mfp_get_devices: (nil), 1
[12:49:41.757145] [xerox_mfp] list_one_device: tcp 192.168.1.111
[12:49:41.757156] [xerox_mfp] tcp_dev_open: open tcp 192.168.1.111
[12:49:41.759789] [xerox_mfp] :: dev_command(INQUIRY[0x12], 70)
[12:49:41.759887] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:42.951490] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 70
[12:49:42.951560] [xerox_mfp] dev_inquiry: found Samsung/M267x 287x Series
[12:49:42.951575] [xerox_mfp] tcp_dev_close: closing dev 0x55aa3757caf0
[12:49:42.951732] [xerox_mfp] tcp_dev_open: open tcp 192.168.1.111
[12:49:42.953173] [dll] sane_open: open successful
[12:49:42.953244] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=0)
[12:49:42.953255] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 0
[12:49:42.953264] [dll] sane_control_option(handle=0x55aa37580a50,option=0,action=0,value=0x7ffe8e6b13cc,info=(nil))
[12:49:42.953272] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 0, <0>, 0x7ffe8e6b13cc, (nil)
[12:49:42.953281] [xerox_mfp] sane_xerox_mfp_control_option: 0, <0> => 0000000b, 0
[12:49:42.953292] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=0)
[12:49:42.953300] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 0
[12:49:42.953312] [dll] sane_control_option(handle=0x55aa37580a50,option=0,action=0,value=0x7ffe8e6b12d0,info=(nil))
[12:49:42.953320] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 0, <0>, 0x7ffe8e6b12d0, (nil)
[12:49:42.953328] [xerox_mfp] sane_xerox_mfp_control_option: 0, <0> => 0000000b, 0
[12:49:42.953341] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=1)
[12:49:42.953355] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 1
[12:49:42.953366] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=2)
[12:49:42.953376] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 2
[12:49:42.953392] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=3)
[12:49:42.953402] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 3
[12:49:42.953419] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=4)
[12:49:42.953431] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 4
[12:49:42.953442] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=5)
[12:49:42.953449] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 5
[12:49:42.953456] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=6)
[12:49:42.953464] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 6
[12:49:42.953475] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=7)
[12:49:42.953484] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 7
[12:49:42.953495] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=8)
[12:49:42.953515] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 8
[12:49:42.953526] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=9)
[12:49:42.953538] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 9
[12:49:42.953550] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=10)
[12:49:42.953560] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 10
[12:49:42.953567] [dll] sane_control_option(handle=0x55aa37580a50,option=9,action=0,value=0x55aa36b2c3a0,info=(nil))
[12:49:42.953575] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 9, <0>, 0x55aa36b2c3a0, (nil)
[12:49:42.953588] [xerox_mfp] sane_xerox_mfp_control_option: 9, <0> => 00d811bf, 0
[12:49:42.953600] [dll] sane_control_option(handle=0x55aa37580a50,option=7,action=0,value=0x7ffe8e6b12d4,info=(nil))
[12:49:42.953610] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 7, <0>, 0x7ffe8e6b12d4, (nil)
[12:49:42.953626] [xerox_mfp] sane_xerox_mfp_control_option: 7, <0> => 00000000, 0
[12:49:42.953637] [dll] sane_control_option(handle=0x55aa37580a50,option=10,action=0,value=0x55aa36b2c3a4,info=(nil))
[12:49:42.953645] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 10, <0>, 0x55aa36b2c3a4, (nil)
[12:49:42.953655] [xerox_mfp] sane_xerox_mfp_control_option: 10, <0> => 01639999, 0
[12:49:42.953666] [dll] sane_control_option(handle=0x55aa37580a50,option=8,action=0,value=0x7ffe8e6b12d4,info=(nil))
[12:49:42.953676] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 8, <0>, 0x7ffe8e6b12d4, (nil)
[12:49:42.953686] [xerox_mfp] sane_xerox_mfp_control_option: 8, <0> => 00000000, 0
[12:49:42.953701] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=2)
[12:49:42.953712] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 2
[12:49:42.953724] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=2)
[12:49:42.953734] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 2
[12:49:42.953743] [dll] sane_control_option(handle=0x55aa37580a50,option=2,action=1,value=0x55aa37560980,info=0x7ffe8e6b1294)
[12:49:42.953753] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 2, <1>, 0x55aa37560980, 0x7ffe8e6b1294
[12:49:42.953769] [xerox_mfp] sane_xerox_mfp_control_option: 2, <1> => 00000064, 4
[12:49:42.953780] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=3)
[12:49:42.953790] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 3
[12:49:42.953800] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=3)
[12:49:42.953810] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 3
[12:49:42.953820] [dll] sane_control_option(handle=0x55aa37580a50,option=3,action=1,value=0x55aa375612f0,info=0x7ffe8e6b1294)
[12:49:42.953831] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 3, <1>, 0x55aa375612f0, 0x7ffe8e6b1294
[12:49:42.953843] [xerox_mfp] sane_xerox_mfp_control_option: 3, <1> => 656e694c, 6
[12:49:42.953853] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=0)
[12:49:42.953864] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 0
[12:49:42.953874] [dll] sane_control_option(handle=0x55aa37580a50,option=0,action=0,value=0x7ffe8e6b1240,info=(nil))
[12:49:42.953889] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 0, <0>, 0x7ffe8e6b1240, (nil)
[12:49:42.953899] [xerox_mfp] sane_xerox_mfp_control_option: 0, <0> => 0000000b, 0
[12:49:42.953909] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=1)
[12:49:42.953919] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 1
[12:49:42.953928] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=2)
[12:49:42.953938] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 2
[12:49:42.953947] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=3)
[12:49:42.953957] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 3
[12:49:42.953966] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=4)
[12:49:42.953976] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 4
[12:49:42.953985] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=5)
[12:49:42.953995] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 5
[12:49:42.954005] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=6)
[12:49:42.954014] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 6
[12:49:42.954026] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=7)
[12:49:42.954047] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 7
[12:49:42.954056] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=8)
[12:49:42.954064] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 8
[12:49:42.954073] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=9)
[12:49:42.954082] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 9
[12:49:42.954090] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=10)
[12:49:42.954099] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 10
[12:49:42.954107] [dll] sane_control_option(handle=0x55aa37580a50,option=9,action=0,value=0x55aa36b2c3a0,info=(nil))
[12:49:42.954114] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 9, <0>, 0x55aa36b2c3a0, (nil)
[12:49:42.954124] [xerox_mfp] sane_xerox_mfp_control_option: 9, <0> => 00d811bf, 0
[12:49:42.954133] [dll] sane_control_option(handle=0x55aa37580a50,option=7,action=0,value=0x7ffe8e6b1244,info=(nil))
[12:49:42.954142] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 7, <0>, 0x7ffe8e6b1244, (nil)
[12:49:42.954153] [xerox_mfp] sane_xerox_mfp_control_option: 7, <0> => 00000000, 0
[12:49:42.954161] [dll] sane_control_option(handle=0x55aa37580a50,option=10,action=0,value=0x55aa36b2c3a4,info=(nil))
[12:49:42.954170] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 10, <0>, 0x55aa36b2c3a4, (nil)
[12:49:42.954180] [xerox_mfp] sane_xerox_mfp_control_option: 10, <0> => 01639999, 0
[12:49:42.954191] [dll] sane_control_option(handle=0x55aa37580a50,option=8,action=0,value=0x7ffe8e6b1244,info=(nil))
[12:49:42.954203] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 8, <0>, 0x7ffe8e6b1244, (nil)
[12:49:42.954212] [xerox_mfp] sane_xerox_mfp_control_option: 8, <0> => 00000000, 0
[12:49:42.954222] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=5)
[12:49:42.954230] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 5
[12:49:42.954239] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=5)
[12:49:42.954247] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 5
[12:49:42.954255] [dll] sane_control_option(handle=0x55aa37580a50,option=5,action=1,value=0x55aa375612f0,info=0x7ffe8e6b1294)
[12:49:42.954267] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 5, <1>, 0x55aa375612f0, 0x7ffe8e6b1294
[12:49:42.954279] [xerox_mfp] sane_xerox_mfp_control_option: 5, <1> => 00464441, 0
[12:49:42.954292] [dll] sane_control_option(handle=0x55aa37580a50,option=7,action=0,value=0x7ffe8e6b1400,info=(nil))
[12:49:42.954303] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 7, <0>, 0x7ffe8e6b1400, (nil)
[12:49:42.954313] [xerox_mfp] sane_xerox_mfp_control_option: 7, <0> => 00000000, 0
[12:49:42.954322] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=9)
[12:49:42.954331] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 9
[12:49:42.954341] [dll] sane_control_option(handle=0x55aa37580a50,option=9,action=1,value=0x7ffe8e6b1420,info=0x7ffe8e6b12e4)
[12:49:42.954352] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 9, <1>, 0x7ffe8e6b1420, 0x7ffe8e6b12e4
[12:49:42.954364] [xerox_mfp] sane_xerox_mfp_control_option: 9, <1> => 00d80000, 4
[12:49:42.954373] [dll] sane_control_option(handle=0x55aa37580a50,option=8,action=0,value=0x7ffe8e6b1400,info=(nil))
[12:49:42.954384] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 8, <0>, 0x7ffe8e6b1400, (nil)
[12:49:42.954396] [xerox_mfp] sane_xerox_mfp_control_option: 8, <0> => 00000000, 0
[12:49:42.954404] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=10)
[12:49:42.954413] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 10
[12:49:42.954421] [dll] sane_control_option(handle=0x55aa37580a50,option=10,action=1,value=0x7ffe8e6b1420,info=0x7ffe8e6b12e4)
[12:49:42.954432] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 10, <1>, 0x7ffe8e6b1420, 0x7ffe8e6b12e4
[12:49:42.954444] [xerox_mfp] sane_xerox_mfp_control_option: 10, <1> => 01290000, 4
[12:49:42.954454] [dll] sane_get_option_descriptor(handle=0x55aa37580a50,option=2)
[12:49:42.954463] [xerox_mfp] sane_xerox_mfp_get_option_descriptor: 0x55aa3757caf0, 2
[12:49:42.954471] [dll] sane_control_option(handle=0x55aa37580a50,option=2,action=0,value=0x7ffe8e6b12e0,info=(nil))
[12:49:42.954480] [xerox_mfp] sane_xerox_mfp_control_option: 0x55aa3757caf0, 2, <0>, 0x7ffe8e6b12e0, (nil)
[12:49:42.954491] [xerox_mfp] sane_xerox_mfp_control_option: 2, <0> => 00000064, 0
Scanning infinity pages, incrementing by 1, numbering from 1
Scanning page 1
[12:49:42.954529] [dll] sane_start(handle=0x55aa37580a50)
[12:49:42.954537] [xerox_mfp] sane_xerox_mfp_start: 0x55aa3757caf0
[12:49:42.954546] [xerox_mfp] :: dev_command(RESERVE_UNIT[0x16], 32)
[12:49:42.954602] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:43.991261] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:43.991334] [xerox_mfp] :: dev_command(SET_WINDOW[0x24], 32)
[12:49:43.991435] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:45.031304] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:45.031376] [xerox_mfp] :: dev_command(OBJECT_POSITION[0x31], 32)
[12:49:45.031498] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:46.081224] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:46.081293] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:49:46.081356] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:47.111324] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:47.111372] [xerox_mfp] dev_command(READ[0x28]): => 3: Device busy
[12:49:47.111426] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:49:47.111501] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:48.151447] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:48.151519] [xerox_mfp] dev_command(READ[0x28]): => 3: Device busy
[12:49:48.151530] [xerox_mfp] (READ) sleeping(10 ms).. [0 0]
[12:49:48.161641] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:49:48.161794] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:49.191200] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:49.191266] [xerox_mfp] dev_command(READ[0x28]): => 3: Device busy
[12:49:49.191277] [xerox_mfp] (READ) sleeping(100 ms).. [0 0]
[12:49:49.291411] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:49:49.291605] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:50.391329] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:50.391385] [xerox_mfp] acquiring, size per band v: 128, h: 128, block: 16400, slack: 16
[12:49:50.391494] [dll] sane_get_parameters(handle=0x55aa37580a50,params=0x7ffe8e6b1400)
[12:49:50.391526] [xerox_mfp] sane_xerox_mfp_get_parameters: 0x55aa3757caf0, 0x7ffe8e6b1400
scanimage: scanning image of size 864x1189 pixels at 1 bits/pixel
scanimage: acquiring gray frame
[12:49:50.391652] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:49:50.391678] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:49:50.391691] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:49:50.391773] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:49:51.431175] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 16400
[12:49:51.432193] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:49:51.432213] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:49:51.432223] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:49:51.432284] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:52.471428] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:52.471499] [xerox_mfp] acquiring, size per band v: 128, h: 128, block: 16400, slack: 16
[12:49:52.471509] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:49:52.471629] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:49:53.511689] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 16400
[12:49:53.513635] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:49:53.513664] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:49:53.513674] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:49:53.513741] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:54.551470] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:54.551553] [xerox_mfp] acquiring, size per band v: 128, h: 128, block: 16400, slack: 16
[12:49:54.551564] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:49:54.551680] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:49:55.591304] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 16400
[12:49:55.593688] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:49:55.593738] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:49:55.593750] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:49:55.593855] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:56.631280] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:56.631358] [xerox_mfp] acquiring, size per band v: 128, h: 128, block: 16400, slack: 16
[12:49:56.631369] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:49:56.631471] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:49:58.711440] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 16400
[12:49:58.714455] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:49:58.714494] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:49:58.714505] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:49:58.714619] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:49:59.751472] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:49:59.751529] [xerox_mfp] acquiring, size per band v: 128, h: 128, block: 16400, slack: 16
[12:49:59.751539] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:49:59.751609] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:50:00.801590] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 16400
[12:50:00.803656] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:50:00.803677] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:50:00.803687] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:50:00.803816] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:01.831264] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:50:01.831315] [xerox_mfp] acquiring, size per band v: 128, h: 128, block: 16400, slack: 16
[12:50:01.831328] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:50:01.831410] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:50:02.871494] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 16400
[12:50:02.873377] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:50:02.873392] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:50:02.873402] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:50:02.873493] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:03.921187] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:50:03.921253] [xerox_mfp] acquiring, size per band v: 128, h: 128, block: 16400, slack: 16
[12:50:03.921265] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:50:03.921324] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:50:04.951510] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 16400
[12:50:04.953375] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:50:04.953394] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:50:04.953404] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:50:04.953514] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:05.991167] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:50:05.991222] [xerox_mfp] acquiring, size per band v: 128, h: 128, block: 16400, slack: 16
[12:50:05.991238] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:50:05.991301] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:50:07.031172] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 16400
[12:50:07.033689] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:50:07.033714] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:50:07.033724] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:50:07.033774] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:08.081648] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:50:08.081738] [xerox_mfp] acquiring, size per band v: 128, h: 128, block: 16400, slack: 16
[12:50:08.081750] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:50:08.081857] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:50:09.121255] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 16400
[12:50:09.122509] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:50:09.122525] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:50:09.122535] [xerox_mfp] :: dev_command(READ[0x28], 32)
[12:50:09.122592] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:10.151516] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:50:10.151584] [xerox_mfp] acquiring, size per band v: 5, h: 128, last block: 656, slack: 16
[12:50:10.151595] [xerox_mfp] :: dev_command(READ_IMAGE[0x29], 32)
[12:50:10.151658] [xerox_mfp] tcp_dev_request: wait for 65536 bytes
[12:50:11.191315] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 65536, bytes read: 656
[12:50:11.191419] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:50:11.191436] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:50:11.191859] [dll] sane_read(handle=0x55aa37580a50,data=0x55aa37561ea0,maxlen=32768,lenp=0x7ffe8e6b13d4)
[12:50:11.191874] [xerox_mfp] sane_xerox_mfp_read: 0x55aa3757caf0, 0x55aa37561ea0, 32768, 0x7ffe8e6b13d4
[12:50:11.191884] [xerox_mfp] dev_stop: 0x55aa3757caf0, scanning 1, reserved 1
[12:50:11.191894] [xerox_mfp] :: dev_command(RELEASE_UNIT[0x17], 32)
[12:50:11.191993] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:12.231192] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:50:12.231252] [xerox_mfp] total image 864*1189 size 128412 (win 10204*14031), 1024*1157 10 data: 148256, out 128412 bytes
scanimage: read 128412 bytes in total
Scanned page 1. (scanner status = 5)
Scanning page 2
[12:50:12.231538] [dll] sane_start(handle=0x55aa37580a50)
[12:50:12.231559] [xerox_mfp] sane_xerox_mfp_start: 0x55aa3757caf0
[12:50:12.231572] [xerox_mfp] :: dev_command(RESERVE_UNIT[0x16], 32)
[12:50:12.231650] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:13.271525] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:50:13.271608] [xerox_mfp] :: dev_command(SET_WINDOW[0x24], 32)
[12:50:13.271780] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:14.311887] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:50:14.311949] [xerox_mfp] dev_command(SET_WINDOW[0x24]): => 3: Device busy
[12:50:14.311961] [xerox_mfp] :: dev_command(OBJECT_POSITION[0x31], 32)
[12:50:14.312051] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:15.351240] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 32
[12:50:15.351293] [xerox_mfp] dev_command(OBJECT_POSITION[0x31]): => 3: Device busy
[12:50:15.351303] [xerox_mfp] (OBJECT_POSITION) sleeping(10 ms).. [0 1]
[12:50:15.361386] [xerox_mfp] :: dev_command(OBJECT_POSITION[0x31], 32)
[12:50:15.361493] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:16.391239] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 0
[12:50:16.391309] [xerox_mfp] dev_command: illegal response len 0, need 32
[12:50:16.391320] [xerox_mfp] dev_stop: 0x55aa3757caf0, scanning 0, reserved 1
[12:50:16.391329] [xerox_mfp] :: dev_command(RELEASE_UNIT[0x17], 32)
[12:50:16.391432] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[12:50:17.431729] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 0
[12:50:17.431785] [xerox_mfp] dev_command: illegal response len 0, need 32
[12:50:17.431795] [xerox_mfp] total image 864*1189 size 0 (win 10204*14031), 1024*1157 0 data: 0, out 0 bytes
scanimage: sane_start: Error during device I/O
Batch terminated, 1 page scanned
[12:50:17.431812] [dll] sane_cancel(handle=0x55aa37580a50)
[12:50:17.431823] [xerox_mfp] sane_xerox_mfp_cancel: 0x55aa3757caf0
[12:50:17.431833] [dll] sane_close(handle=0x55aa37580a50)
[12:50:17.431840] [xerox_mfp] sane_xerox_mfp_close: 0x55aa3757caf0 (tcp 192.168.1.111)
[12:50:17.431848] [xerox_mfp] tcp_dev_close: closing dev 0x55aa3757caf0
[12:50:17.431949] [dll] sane_exit: exiting
[12:50:17.431964] [dll] sane_exit: calling backend `xerox_mfp's exit function
[12:50:17.432106] [dll] sane_exit: finished
Still can't figure it out, how to make xerox_mfp to appear in scanner list...
Hi @diabolusss,
first of all, I see the following lines:
List of available devices:
escl:http://192.168.1.111:80 escl:http://192.168.1.111:80
airscan:w0:Samsung SL M2875FD
It means that your printer was recognized by 2 drivers: sane-escl
, which supports only eSCL protocol, and sane-airscan
, which supports eSCL and WSD. And sane-airscan recognizes your printer as WSD device.
Then, scanimage
fails, trying to open device, exposed by sane-escl
:
scanimage: open of device escl:http://192.168.1.111:80 failed: Out of memory
It is hard to say, why scanimage
prefers device, exposed by sane-escl
, not by sane-airscan
. Probably, it happens because that device name appears first in the list. So you may try to give device's name to the scanimage
directly (w0:Samsung SL M2875FD
) or use some GUI app that allows to choose device out of the list.
Then about your changes in the airscan.conf
file. Guessing WSD port is exceptionally hard. Typically, it is not 80, not 8080 and not printer's port. There are airscan-discover
utility that comes with sane-airscan
, it does it automatically and prints all the discovered devices in the format, suitable to adding to the airscan.conf
file. But as I see in the first log that device was discovered, probably this step is not needed.
Also, I see a lot of error messages from the XML parser. Most likely, these messages come from the sane-escl
driver, because sane-airscan
attempts to hook libxml
error messages, but here I cannot be 100% sure, because this stuff in libxml
is quite messy.
It is hard to say, why sane-airscan
doesn't discover the device as eSCL, while sane-escl
does, without seeing the sane-airscan
trace files (it is much more detailed log that log which goes to console). To enable protocol trace, the following lines in the airscan.conf
file needs to be uncommented:
[debug]
trace = ~/airscan/trace
enable = true
Protocol trace files will be written to the ~/airscan/trace
directory, which will be created automatically.
So, my recommendations are following:
1, With unmodified airscan.conf
, try to choose the w0:Samsung SL M2875FD
device explicitly
airscan.conf
file and retry:
[options]
protocol = manual
Note, setting protocol = manual
will expose WSD side of the device, even if shadowed by its eSCL instance (by default, if device supports both protocols, sane-airscan
automatically prefers eSCL).
Hello, @alexpevzner! First of all, thank you for checking this issue.
It means that your printer was recognized by 2 drivers:
sane-escl
, which supports only eSCL protocol, andsane-airscan
, which supports eSCL and WSD. And sane-airscan recognizes your printer as WSD device.
- With unmodified
airscan.conf
, try to choose thew0:Samsung SL M2875FD
device explicitly- If you got "device not found" error, write the following lines in the
airscan.conf
file and retry:
I don't know about escl side, (i've remembered, that it's static record, too) but second part, related to sane-aiscan, wasn't automatically recognized - i have statically added this line to airscan.conf, as i've previously mentioned. What i see from tests, that it doesn't matter what i write there - it will be listed (and checked) anyway. airscan-discover finds nothing in any case.
Guessing WSD port is exceptionally hard.
I believe there is nothing to guess, because it's listed in printer settings as 8018. But it just doesn't work. I suppose service can be hidden behind some url path, like in example "Kyocera MFP Scanner" = http://192.168.1.102:9095/eSCL, or like http://192.168.1.111:8018/ScannerCapabilities. But of course, this obvious examples doesn't work. Maybe we can find an answer in Samsung mobile print app which perfectly works on android from the same place...
scanimage-zeroconf.log scanimage-Samsung-SL-M2875FD:8018.log scanimage-Samsung-SL-M2875FD:test.log
It is hard to say, why
scanimage
prefers device, exposed bysane-escl
, not bysane-airscan
Sorry for that, i've forgot that i made changes in escl.conf, too. I've explicitly added "device http://192.168.1.111:80 "Samsung M267x 287x Series (192.168.1.111)" \"hack=localhost\"", which actually means that only xerox_mfp is kind of working out of the box (magically triggered, only once and only for 1 page)...
Checking escl debug we see that it just return invalid request html page. export SANE_DEBUG_DLL=255 && export SANE_DEBUG_XEROX_MFP=4 && export SANE_DEBUG_ESCL=255 && scanimage -d "escl:http://192.168.1.111:80"
[sanei_debug] Setting debug level of escl to 255.
[07:46:44.653294] [escl] escl sane_init
[07:46:44.655191] [dll] init: backend `escl' is version 1.0.0
[07:46:44.655227] [escl] escl sane_open
[07:46:44.655236] [escl] escl_parse_name
[07:46:44.655278] [escl] escl_curl_url: URL: http://192.168.1.111:80/eSCL/ScannerCapabilities
[07:46:44.655303] [escl] Before use hack
[07:46:44.655310] [escl] After use hack
[07:46:44.660937] [escl] XML Capabilities[
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>Invalid Request</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<CENTER>
<FONT SIZE="+2" COLOR="#FFFFFF" ALIGN="Center">
</FONT>
<B>Invalid Request. Some Error</B>
</BODY>
</HTML>
]
file.xml:1: parser error : Space required after the Public Identifier
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
^
file.xml:1: parser error : SystemLiteral " or ' expected
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
^
file.xml:1: parser error : SYSTEM or PUBLIC, the URI is missing
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
^
file.xml:12: parser error : Opening and ending tag mismatch: CENTER line 0 and BODY
</BODY>
^
file.xml:14: parser error : Opening and ending tag mismatch: BODY line 0 and HTML
</HTML>
^
file.xml:16: parser error : EndTag: '</' not found
^
scanimage: open of device escl:http://192.168.1.111:80 failed: Out of memory
[07:46:44.661415] [dll] sane_exit: exiting
[07:46:44.661438] [dll] sane_exit: calling backend `escl's exit function
[07:46:44.661447] [escl] escl sane_exit
[07:46:44.661851] [dll] sane_exit: finished
Hi @diabolusss,
Samsung mobile print app may use its own proprietary protocol. If printer supports eSCL, it must work with Mopria scan for Android.
I've looked to the manual for your device.
The manual claims, on page 248, that WSD URL is http://111.111.111.111/ws/ (assuming device address is 111.111.111.111)
Also strange that device is not recognized by Avahi. Are you sure that MDNS is enabled? Page 203 of the manual explains how to enable it.
Thank you, for finding manual, i haven't thought that there could be any useful information. I have tried any new possible option using new url, but have no success. However, now i have a strong belief that this printer is not escl capable based on Samsung mobile print app - i think that you are right, it uses propritary driver, because it
It's interesting, but xerox_mfp uses some unknown port, because when i use 80 or 8018(wsd) it doesn't recognize it.
$ export SANE_DEBUG_DLL=255 && export SANE_DEBUG_XEROX_MFP=255 && SANE_DEBUG_ESCL=255 && scanimage -L
[23:01:00.866358] [sanei_debug] Setting debug level of dll to 255.
[23:01:00.866447] [dll] sane_init: SANE dll backend version 1.0.13 from sane-backends 1.0.32
[23:01:00.866464] [dll] sane_init/read_dlld: attempting to open directory `./dll.d'
[23:01:00.866481] [dll] sane_init/read_dlld: attempting to open directory `/etc/sane.d/dll.d'
[23:01:00.866497] [dll] sane_init/read_dlld: using config directory `/etc/sane.d/dll.d'
[23:01:00.866528] [dll] sane_init/read_dlld: considering /etc/sane.d/dll.d/utsushi
[23:01:00.866549] [dll] sane_init/read_config: reading dll.d/utsushi
[23:01:00.866577] [dll] add_backend: adding backend `utsushi'
[23:01:00.866591] [dll] sane_init/read_dlld: considering /etc/sane.d/dll.d/airscan
[23:01:00.866609] [dll] sane_init/read_config: reading dll.d/airscan
[23:01:00.866624] [dll] add_backend: adding backend `airscan'
[23:01:00.866642] [dll] sane_init/read_dlld: done.
[23:01:00.866657] [dll] sane_init/read_config: reading dll.conf
[23:01:00.866681] [dll] add_backend: adding backend `escl'
[23:01:00.866692] [dll] add_backend: adding backend `hp'
[23:01:00.866701] [dll] add_backend: adding backend `hp3500'
[23:01:00.866709] [dll] add_backend: adding backend `hp3900'
[23:01:00.866717] [dll] add_backend: adding backend `hp4200'
[23:01:00.866724] [dll] add_backend: adding backend `hp5400'
[23:01:00.866735] [dll] add_backend: adding backend `hp5590'
[23:01:00.866743] [dll] add_backend: adding backend `hpljm1005'
[23:01:00.866753] [dll] add_backend: adding backend `hpsj5s'
[23:01:00.866760] [dll] add_backend: adding backend `hs2p'
[23:01:00.866773] [dll] add_backend: adding backend `pint'
[23:01:00.866787] [dll] add_backend: adding backend `xerox_mfp'
[23:01:00.866799] [dll] add_backend: adding backend `smfp'
[23:01:00.866826] [dll] sane_get_devices
[23:01:00.866838] [dll] load: searching backend `smfp' in `/usr/lib/sane'
[23:01:00.866849] [dll] load: trying to load `/usr/lib/sane/libsane-smfp.so.1'
[23:01:00.866867] [dll] load: dlopen()ing `/usr/lib/sane/libsane-smfp.so.1'
[23:01:00.868894] [dll] init: initializing backend `smfp'
[23:01:00.881464] [dll] init: backend `smfp' is version 1.0.1
[23:01:01.883537] [dll] load: searching backend `xerox_mfp' in `/usr/lib/sane'
[23:01:01.883596] [dll] load: trying to load `/usr/lib/sane/libsane-xerox_mfp.so.1'
[23:01:01.883620] [dll] load: dlopen()ing `/usr/lib/sane/libsane-xerox_mfp.so.1'
[23:01:01.884056] [dll] init: initializing backend `xerox_mfp'
[23:01:01.884088] [sanei_debug] Setting debug level of xerox_mfp to 255.
[23:01:01.884098] [xerox_mfp] sane_init: Xerox backend (build 13), version != null, authorize != null
[23:01:01.892523] [dll] init: backend `xerox_mfp' is version 1.0.13
[23:01:01.892552] [xerox_mfp] sane_xerox_mfp_get_devices: 0x7ffd8848d910, 0
[23:01:01.892679] [xerox_mfp] list_one_device: tcp 192.168.1.111
[23:01:01.892692] [xerox_mfp] tcp_dev_open: open tcp 192.168.1.111
[23:01:01.894064] [xerox_mfp] :: dev_command(INQUIRY[0x12], 70)
[23:01:01.894163] [xerox_mfp] tcp_dev_request: wait for 1024 bytes
[23:01:02.942502] [xerox_mfp] tcp_dev_request: error Resource temporarily unavailable, bytes requested: 1024, bytes read: 70
[23:01:02.942558] [xerox_mfp] [70] a8 00 43 10 53 61 6d 73 75 6e 67 20 4d 32 36 37 78 20 32 38 37 78 20 53 65 72 69 65 73 20 20 20 20 20 20 20 11 33 86 2b 00 00 27 e0 00 00 41 a0 00 01 51 00 00 02 00 00 00 00 41 a0 00 00 36 d8 00 00 05 05 11 00
[23:01:02.942571] [xerox_mfp] dev_inquiry: found Samsung/M267x 287x Series
[23:01:02.942584] [xerox_mfp] tcp_dev_close: closing dev 0x55e1760d5ca0
[23:01:02.942743] [dll] load: searching backend `pint' in `/usr/lib/sane'
[23:01:02.942760] [dll] load: trying to load `/usr/lib/sane/libsane-pint.so.1'
[23:01:02.942780] [dll] load: couldn't open `/usr/lib/sane/libsane-pint.so.1' (No such file or directory)
[23:01:02.942790] [dll] load: couldn't find backend `pint' (No such file or directory)
[23:01:02.942799] [dll] load: searching backend `hs2p' in `/usr/lib/sane'
[23:01:02.942806] [dll] load: trying to load `/usr/lib/sane/libsane-hs2p.so.1'
[23:01:02.942832] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hs2p.so.1'
[23:01:02.943038] [dll] init: initializing backend `hs2p'
[23:01:02.943531] [dll] init: backend `hs2p' is version 1.0.0
[23:01:02.943549] [dll] load: searching backend `hpsj5s' in `/usr/lib/sane'
[23:01:02.943560] [dll] load: trying to load `/usr/lib/sane/libsane-hpsj5s.so.1'
[23:01:02.943575] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hpsj5s.so.1'
[23:01:02.943852] [dll] init: initializing backend `hpsj5s'
[23:01:02.943992] [dll] init: backend `hpsj5s' is version 1.0.3
[23:01:02.944007] [dll] load: searching backend `hpljm1005' in `/usr/lib/sane'
[23:01:02.944018] [dll] load: trying to load `/usr/lib/sane/libsane-hpljm1005.so.1'
[23:01:02.944032] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hpljm1005.so.1'
[23:01:02.944259] [dll] init: initializing backend `hpljm1005'
[23:01:02.944362] [dll] init: backend `hpljm1005' is version 1.0.1
[23:01:02.944380] [dll] load: searching backend `hp5590' in `/usr/lib/sane'
[23:01:02.944390] [dll] load: trying to load `/usr/lib/sane/libsane-hp5590.so.1'
[23:01:02.944409] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp5590.so.1'
[23:01:02.944625] [dll] init: initializing backend `hp5590'
[23:01:02.944712] [dll] init: backend `hp5590' is version 1.0.8
[23:01:02.944728] [dll] load: searching backend `hp5400' in `/usr/lib/sane'
[23:01:02.944739] [dll] load: trying to load `/usr/lib/sane/libsane-hp5400.so.1'
[23:01:02.944756] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp5400.so.1'
[23:01:02.944965] [dll] init: initializing backend `hp5400'
[23:01:02.945079] [dll] init: backend `hp5400' is version 1.0.3
[23:01:02.945093] [dll] load: searching backend `hp4200' in `/usr/lib/sane'
[23:01:02.945102] [dll] load: trying to load `/usr/lib/sane/libsane-hp4200.so.1'
[23:01:02.945115] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp4200.so.1'
[23:01:02.945318] [dll] init: initializing backend `hp4200'
[23:01:02.945439] [dll] init: backend `hp4200' is version 1.0.0
[23:01:02.945451] [dll] load: searching backend `hp3900' in `/usr/lib/sane'
[23:01:02.945459] [dll] load: trying to load `/usr/lib/sane/libsane-hp3900.so.1'
[23:01:02.945471] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp3900.so.1'
[23:01:02.946069] [dll] init: initializing backend `hp3900'
[23:01:02.946199] [dll] init: backend `hp3900' is version 1.0.0
[23:01:02.946214] [dll] load: searching backend `hp3500' in `/usr/lib/sane'
[23:01:02.946223] [dll] load: trying to load `/usr/lib/sane/libsane-hp3500.so.1'
[23:01:02.946237] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp3500.so.1'
[23:01:02.946474] [dll] init: initializing backend `hp3500'
[23:01:02.946563] [dll] init: backend `hp3500' is version 1.0.0
[23:01:02.946583] [dll] load: searching backend `hp' in `/usr/lib/sane'
[23:01:02.946596] [dll] load: trying to load `/usr/lib/sane/libsane-hp.so.1'
[23:01:02.946615] [dll] load: dlopen()ing `/usr/lib/sane/libsane-hp.so.1'
[23:01:02.946906] [dll] init: initializing backend `hp'
[23:01:02.946943] [dll] init: backend `hp' is version 1.0.8
[23:01:02.947548] [dll] load: searching backend `escl' in `/usr/lib/sane'
[23:01:02.947569] [dll] load: trying to load `/usr/lib/sane/libsane-escl.so.1'
[23:01:02.947582] [dll] load: dlopen()ing `/usr/lib/sane/libsane-escl.so.1'
[23:01:02.967732] [dll] init: initializing backend `escl'
[23:01:02.967776] [sanei_debug] Setting debug level of escl to 255.
[23:01:02.967785] [escl] escl sane_init
[23:01:02.969479] [dll] init: backend `escl' is version 1.0.0
[23:01:02.969505] [escl] escl sane_get_devices
[23:01:03.986287] [dll] load: searching backend `airscan' in `/usr/lib/sane'
[23:01:03.986357] [dll] load: trying to load `/usr/lib/sane/libsane-airscan.so.1'
[23:01:03.986395] [dll] load: dlopen()ing `/usr/lib/sane/libsane-airscan.so.1'
[23:01:03.990410] [dll] init: initializing backend `airscan'
API: sane_init(): called
loading configuration file /etc/sane.d/airscan.conf
MDNS: AVAHI_CLIENT_S_RUNNING
WSDD: netif addresses update:
WSDD: + 192.168.1.218
WSDD: + fe80::aa5e:45ff:fe38:3f1d%2
WSDD: + 10.160.195.129%2
WSDD: + fe80::216:3eff:fec7:3df0%4
WSDD: 192.168.1.218: started discovery, UDP port=38477
WSDD: fe80::aa5e:45ff:fe38:3f1d: started discovery, UDP port=36458
WSDD: 10.160.195.129: started discovery, UDP port=36597
WSDD: fe80::216:3eff:fec7:3df0: started discovery, UDP port=34315
[23:01:03.999445] [dll] init: backend `airscan' is version 1.0.0
API: sane_get_devices(): called
zeroconf: zeroconf_device_list_get: requested
zeroconf: device_list wait: requested
zeroconf: device_list wait: DNS-SD not finished...
MDNS: browse-ipv6("_ipp._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_ipps._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_uscan._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_uscans._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_scanner._tcp"): AVAHI_BROWSER_CACHE_EXHAUSTED
MDNS: browse-ipv6("_ipp._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
MDNS: browse-ipv6("_ipps._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
MDNS: browse-ipv6("_uscan._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
zeroconf: ZEROCONF_USCAN_TCP: initial scan finished
MDNS: browse-ipv6("_uscans._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
zeroconf: ZEROCONF_USCANS_TCP: initial scan finished
MDNS: browse-ipv6("_scanner._tcp"): AVAHI_BROWSER_ALL_FOR_NOW
zeroconf: ZEROCONF_MDNS_HINT: initial scan finished
zeroconf: device_list wait: WSDD not finished...
WSDD: fe80::aa5e:45ff:fe38:3f1d: done discovery
WSDD: fe80::216:3eff:fec7:3df0: done discovery
WSDD: 192.168.1.218: done discovery
WSDD: 10.160.195.129: done discovery
zeroconf: ZEROCONF_WSD: initial scan finished
zeroconf: device_list wait: OK
zeroconf: zeroconf_device_list_get: building list of devices
zeroconf: zeroconf_device_list_get: resulting list:
zeroconf: WSD "w0:Samsung SL M2875FD:8018"
zeroconf: WSD "w1:Samsung SL M2875FD:manual"
API: sane_get_devices(): done
[23:01:06.513086] [dll] load: searching backend `utsushi' in `/usr/lib/sane'
[23:01:06.513117] [dll] load: trying to load `/usr/lib/sane/libsane-utsushi.so.1'
[23:01:06.513165] [dll] load: dlopen()ing `/usr/lib/sane/libsane-utsushi.so.1'
[23:01:06.519921] [dll] init: initializing backend `utsushi'
[23:01:06.519954] [dll] init: backend `utsushi' is version 1.1.0
[23:01:06.635139] [dll] sane_get_devices: found 3 devices
device `xerox_mfp:tcp 192.168.1.111' is a Samsung M267x 287x Series multi-function peripheral
device `airscan:w0:Samsung SL M2875FD:8018' is a WSD Samsung SL M2875FD:8018 ip=192.168.1.111
device `airscan:w1:Samsung SL M2875FD:manual' is a WSD Samsung SL M2875FD:manual ip=192.168.1.111
[23:01:06.635184] [dll] sane_exit: exiting
[23:01:06.635192] [dll] sane_exit: calling backend `smfp's exit function
[23:01:06.635657] [dll] sane_exit: calling backend `xerox_mfp's exit function
[23:01:06.635738] [dll] sane_exit: calling backend `hs2p's exit function
[23:01:06.635791] [dll] sane_exit: calling backend `hpsj5s's exit function
[23:01:06.635850] [dll] sane_exit: calling backend `hpljm1005's exit function
[23:01:06.635903] [dll] sane_exit: calling backend `hp5590's exit function
[23:01:06.635956] [dll] sane_exit: calling backend `hp5400's exit function
[23:01:06.636011] [dll] sane_exit: calling backend `hp4200's exit function
[23:01:06.636061] [dll] sane_exit: calling backend `hp3900's exit function
[23:01:06.636122] [dll] sane_exit: calling backend `hp3500's exit function
[23:01:06.636172] [dll] sane_exit: calling backend `hp's exit function
[23:01:06.636237] [dll] sane_exit: calling backend `escl's exit function
[23:01:06.636248] [escl] escl sane_exit
[23:01:06.636308] [dll] sane_exit: calling backend `airscan's exit function
API: sane_exit(): called
API: sane_exit(): OK
[23:01:06.640923] [dll] sane_exit: calling backend `utsushi's exit function
[23:01:06.640975] [dll] sane_exit: finished
I tried to scan which ports are open on printer and after that xefox_mfd lost printer and printer got insane: web service doesn't load properly and doesn't respond on succesfully rendered options, and printer doesn't respond on wakeup button. Samsung app can't scan, too. Power cycling is needed...
$ sudo nmap -sTU -O 192.168.1.111
Starting Nmap 7.92 ( https://nmap.org ) at 2021-08-26 23:43 EEST
Nmap scan report for 192.168.1.111
Host is up (0.0011s latency).
Not shown: 993 closed udp ports (port-unreach), 993 closed tcp ports (conn-refused)
PORT STATE SERVICE
80/tcp open http
427/tcp open svrloc
515/tcp open printer
631/tcp open ipp
5200/tcp open targus-getdata
9100/tcp open jetdirect
10001/tcp open scp-config
137/udp open|filtered netbios-ns
161/udp open|filtered snmp
427/udp open|filtered svrloc
1900/udp open|filtered upnp
3702/udp open|filtered ws-discovery
5353/udp open|filtered zeroconf
6000/udp open|filtered X11
No exact OS matches for host (If you know what OS is running on it, see https://nmap.org/submit/ ).
TCP/IP fingerprint:
OS:SCAN(V=7.92%E=4%D=8/26%OT=80%CT=1%CU=2%PV=Y%DS=2%DC=I%G=Y%TM=6127FCF8%P=
OS:x86_64-pc-linux-gnu)SEQ(SP=104%GCD=1%ISR=105%TI=I%II=I%TS=A)SEQ(SP=105%G
OS:CD=1%ISR=10B%TI=I%CI=I%II=I%TS=A)SEQ(SP=108%GCD=1%ISR=10B%TI=I%TS=A)OPS(
OS:O1=M5B4NW0NNSNNT11%O2=M578NW0NNSNNT11%O3=M280NW0NNT11%O4=M218NW0NNSNNT11
OS:%O5=M218NW0NNSNNT11%O6=M109NNSNNT11)WIN(W1=21F0%W2=2088%W3=2258%W4=20C0%
OS:W5=20C0%W6=209D)ECN(R=Y%DF=Y%T=40%W=2238%O=M5B4NW0NNS%CC=N%Q=)T1(R=Y%DF=
OS:Y%T=40%S=O%A=S+%F=AS%RD=0%Q=)T2(R=N)T3(R=N)T4(R=Y%DF=N%T=40%W=0%S=A%A=Z%
OS:F=R%O=%RD=0%Q=)T5(R=Y%DF=N%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=N
OS:%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T7(R=N)U1(R=Y%DF=N%T=FF%IPL=38%UN=0%RIP
OS:L=G%RID=G%RIPCK=G%RUCK=G%RUD=G)IE(R=Y%DFI=N%T=FF%CD=S)
Network Distance: 2 hops
OS detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 16.21 seconds
Clean scan after power cycling . There is no 8018 port, while settings show that WSD is enabled.
$ sudo nmap -sTU -O 192.168.1.111
Starting Nmap 7.92 ( https://nmap.org ) at 2021-08-26 23:25 EEST
Nmap scan report for 192.168.1.111
Host is up (0.0012s latency).
Not shown: 993 closed udp ports (port-unreach), 993 closed tcp ports (conn-refused)
PORT STATE SERVICE
80/tcp open http
427/tcp open svrloc
515/tcp open printer
631/tcp open ipp
5200/tcp open targus-getdata
9100/tcp open jetdirect
10001/tcp open scp-config
137/udp open netbios-ns
161/udp open snmp
427/udp open svrloc
1900/udp open|filtered upnp
3702/udp open|filtered ws-discovery
5353/udp open zeroconf
6000/udp open|filtered X11
No exact OS matches for host (If you know what OS is running on it, see https://nmap.org/submit/ ).
TCP/IP fingerprint:
OS:SCAN(V=7.92%E=4%D=8/26%OT=80%CT=1%CU=2%PV=Y%DS=2%DC=I%G=Y%TM=6127F8E4%P=
OS:x86_64-pc-linux-gnu)SEQ(SP=103%GCD=1%ISR=10E%TI=I%CI=RI%II=RI%SS=O%TS=A)
OS:SEQ(SP=100%GCD=1%ISR=107%TI=I%CI=I%II=I%TS=A)SEQ(SP=106%GCD=1%ISR=107%TI
OS:=I%TS=A)OPS(O1=M5B4NW0NNSNNT11%O2=M578NW0NNSNNT11%O3=M280NW0NNT11%O4=M21
OS:8NW0NNSNNT11%O5=M218NW0NNSNNT11%O6=M109NNSNNT11)WIN(W1=21F0%W2=2088%W3=2
OS:258%W4=20C0%W5=20C0%W6=209D)ECN(R=Y%DF=Y%T=40%W=2238%O=M5B4NW0NNS%CC=N%Q
OS:=)T1(R=Y%DF=Y%T=40%S=O%A=S+%F=AS%RD=0%Q=)T2(R=N)T3(R=N)T4(R=Y%DF=N%T=40%
OS:W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T5(R=Y%DF=N%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=
OS:)T6(R=Y%DF=N%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T7(R=N)U1(R=Y%DF=N%T=FF%IPL
OS:=38%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUD=G)IE(R=Y%DFI=N%T=FF%CD=S)
Network Distance: 2 hops
OS detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 14.82 seconds
Maybe i'll try to sniff packets when xerox_mfd will show up again... I'm curious which port it actually uses.
By the way, xerox_mfp 70 byte long response
a800431053616d73756e67204d32363778203238377820536572696573202020202020201133862b000027e0000041a00001510000020000000041a0000036d8000005051100
can be decoded as
¨CSamsung M267x 287x Series 3+'àA QA 6Ø
Xerox mfp is scanning via 9400 port. But it's doing it very long. Maybe it's related with network speed setting that was set to auto, i'll try again with full speed (100mbps full duplex)...
xerox_mfp driver log wireshark capture calling scanimage -L and -h -d "xerox_mfp:..." wireshark capture while scanning
Just for a note Version info. (Network settings can be found in first post, it's default and still valid)
System Firmware Version V3.00.01.40 AUG-18-2017
Network Firmware Version 31.03.60_0.1_13-11-18
IP Core Version 31.03.60_0.1_13-11-18
Engine Firmware Version V1.00.15 06-05-2017
PCL5E Version F7.67.01 01-15-2016
PCLXL Version F9.00.12.01 03-22-2016
SPL Version SPL 5.98.01 05-15-2015
UPD01 Network speed setting change fixes scanner service availability for sure. More than 3 consecutive scans using ADF and flatbed sources and it's still there. But only 1 page out of two can be scanned using ADF, second page gets lost somewhere. Flatbed is buggy. While ADF is working (scans only 1 page, but still i can repeat multiple times), Flatbed got lost and xerox_mfp can't read from there (device busy). Every scan is very long, and i suppose it's a problem of driver, because printer physically make scan in few seconds. But to receive bytes via xerox_mfp passes a way more that few seconds. I believe it's the main reason why with adf scan only one page gets retrieved and with flatbed high resolution it disappears - buffer overflow on scanner side.
xerox_mfp_9400_scanimage_adf_scan2.pcapng.gz xerox_mfp_9400_scanimage_adf_scan3.pcapng.gz
To finish this up i'll try to scan from wine maybe there is will work, obviously with proprietary drivers. It's very sad that manufacturer doesn't fully support Linux...
I have been testing with a Brother MFP8710 . This scanner pre-dates eSCL on Brother. I have the choice of WSD or Brother drivers on this device. Honestly I found the WSD driver here to be spotty. It does not provide full resolutions on most scanners and does not work consistently on others . I strongly suggest you install the Brother Linux drivers and call it good. In fact I have now seen that if Windows installs a generic WSD driver like it did on Brother and on an HP, WSD did not offer the full resolutions offered by proprietary ( or in the case of the HP driverless escl) drivers . I mean on the HP if I compare mopria Android resolutions and features available over eSCL it is superior to any WSD support I have seen for it. Same goes for the HP drivers, which also are way better than WSD.
The Brother is no different it just seems to be a limited feature set on WSD.
@markosjal Thank you for your suggestion, but i can hardly imagine how Brother even linux drivers can help me to scan using Samsung mfp over lan. If you know how it will help me, then, please, describe the steps i should follow to be able to scan over lan. I'm using archlinux. And, in my case Android Mopria app doesn't even identify my scanner (please, see above).
Sorry My bad about Brother but Ditto for Samsung. I have one of those too . Mine is a M283fdw so I guess I confused them at time of writing. The Samsung ULD driver works well https://support.hp.com/in-en/drivers/selfservice/samsung-xpress-sl-m2875-laser-multifunction-printer-series/16462699/model/16462703. I know there is a debian ULD repo somewhere but if all else fails download the ULD (Universal Linux Driver) driver from Samsung . Once extracted you can choose to install only the scanner if you are Okay with the driverless printing option, but I think you will get more options using the Samsung Print driver.
This will allow you to connect over a LAN to the Samsung MFP. It also offers more options than the WSD driver . I did finally have some success also with SimulPiscator/AirSane to share the Samsung with Android using Mopria but came to find out the hard way that it does not support the feeder, which defeats the whole purpose in my case.
maybe you should try this config:
[devices]
"Samsung M2070" = http://10.0.1.111:8018/wsd/scan, wsd
in my arch setup this works just fine!
Hi!
sorry for disappearing for very long time.
Is this issue still relevant?
Hi. I believe it's not, i don't use scanner very often, so for my needs scanimage via tcp is enough right now. It's stable for few consequential scans even for ADF source, but i haven't tested it thoroughly. Of course, it's sad that i couldn't find any UI app for user-friendly management, but like i've said, for a rare use case it's acceptable right now.
device xerox_mfp:tcp 192.168.1.111' is a Samsung M267x 287x Series multi-function peripheral
$ cat /usr/bin/scanimage_adf
#!/bin/bash
scanimage --batch='scan_out%d.png' --source ADF -d 'xerox_mfp:tcp 192.168.1.111 9400'
The issue looks obsoleted - closing it for now
Hello! I'm trying to get this mfd printer to work over lan, but i'm completely stuck with a bunch of errors. First, to get my printer recognized i had to start avahi-daemon
systemctl start avahi-daemon
After this step it gets recognized as escl device, which, as i assume, is wrong, because it selects Sync Thru WebService port :80 and fails with out of memory error:
To get wsd recognized, i had to add it into "/etc/sane.d/airscan.conf" file, where wsd port i took from printer config.
Now i see both of them, but wsd is not completely working, too.
However, It does work if directly connected to pc. From Lan Android and windows apps can scan and print without issues...
Printer Network configuration:
Any help will be appreciated.
p.s. at the same time, even with this changes made, airscan-discover finds nothing. The same is with default scanning apps. Only dig is working if pointing it to printer address.
avahi-browse --all -a --resolve
p.p.s and i should note that printing from this pc to this printer via lan works as expected. From the same lan, but via Android or Windows i can scan without issues and in Windows Scan to PC works, too. I've noticed that Android app (Mobile print) uses default :9100 port to get info from printer, so i've tried this too, both as escl and wsd, with airscan without success.
NB airscan requests to ports (9100, 9400) just makes printer to print this request headers. It's useless.
UPD01 managed to scan one page out of three, but at least something to start with... I've found that /etc/sane.d/xerox_mfp.conf has default tcp record for another samsung printer, and what is more important, that this file accepts not only pid&vid, i.e. direct usb connection. ~~ So i've added just tcp with my printer ip and luckily it got recognized.~~
It got recognized only once, as xerox_mfp device and never come up again. At least i haven't yet figured out how i triggered that. But i suppose it got recognized instantly after it printed request to 9400 port headers and disappeared after going to sleep mode.