[sane-devel] scanbd and Canon LiDE 60: buttons not recognized ?

Florian Gagel ghostrider at trollaris.de
Sat Apr 15 14:13:17 UTC 2017


Hi Wilhelm,

thanks for your reply -  I made some progress in this issue however 
still did not fully succeed.

- First step as you told me: make clean, configure --enable-scanbuttond, 
make, make install, copy manually the
old backends to /usr/local/lib/scanbd/scanbuttond as described in the 
README (this all with the 1.5.0 version of scanbd).
- Starting scanbd -f -d7, I first got a "scanbd: Can't get the scbtn 
device list" error.
- I edited /usr/local/lib/scanbd/scanbuttond/backends/meta.conf, making 
it contain the single line "genesys" which was missing before.
- Then the LiDE-60 was recognized by the old backend, together with its 
four buttons !
- However, scanbd finally stumbled on an assertion:/
/
root at gandroid:/usr/local/etc/scanbd# scanbd -f -d7
scanbd: reading config file /usr/local/etc/scanbd/scanbd.conf
scanbd: debug on: level: 7
scanbd: dropping privs to uid saned
scanbd: dropping privs to gid scanner
scanbd: group scanner has member:
scanbd: saned
scanbd: drop privileges to gid: 121
scanbd: Running as effective gid 121
scanbd: drop privileges to uid: 120
scanbd: Running as effective uid 120
scanbd: dbus_init
scanbd: dbus match type='signal',interface='org.freedesktop.Hal.Manager'
scanbd: Loading /usr/local/lib/scanbd/scanbuttond/backends/meta.so
scanbd: Loading /usr/local/lib/scanbd/scanbuttond/backends/genesys.so
scanbd: Scanning for local-only devices
scanbd: found device: CanoScan LiDE 60 Canon genesys:libusb:001:016
scanbd: start_scbtn_threads
scanbd: start the threads (1)
scanbd: Starting poll thread for CanoScan LiDE 60
scanbd: Thread started for device CanoScan LiDE 60
scanbd: start dbus thread
scanbd: scbtn_poll
scanbd: udev init
scanbd: get udev monitor
scanbd: udev fd is non-blocking, now setting to blocking mode
scanbd: start udev thread
scanbd: udev thread started
scanbd: timeout: 500 ms
scanbd: Iteration on dbus call
scanbd: found 15 options for device CanoScan LiDE 60
scanbd: sane_find_matching_options
scanbd: found 3 actions in section (null)
scanbd: checking action scan with filter: ^scan.*
scanbd: scanbtnd_button_name (1)
scanbd: scanbtnd_button_name, backend: Genesys USB
scanbd: found active option[0] scan for device CanoScan LiDE 60
scanbd: installing action scan (0) for CanoScan LiDE 60, option[0]: scan 
as: test.script
scanbd: multiple actions allowed
scanbd: scanbtnd_button_name (2)
scanbd: scanbtnd_button_name, backend: Genesys USB
scanbd: found active option[1] copy for device CanoScan LiDE 60
scanbd: scanbtnd_button_name (3)
scanbd: scanbtnd_button_name, backend: Genesys USB
scanbd: found active option[2] email for device CanoScan LiDE 60
scanbd: scanbtnd_button_name (4)
scanbd: scanbtnd_button_name, backend: Genesys USB
scanbd: found active option[3] pdf for device CanoScan LiDE 60
scanbd: scanbtnd_button_name (5)
scanbd: scanbtnd_button_name, backend: Genesys USB
scanbd: found active option[4] stop for device CanoScan LiDE 60
scanbd: scanbtnd_button_name (6)
scanbd: scanbtnd_button_name, backend: Genesys USB
scanbd: scanbuttond_wrapper.c:1066: scanbtnd_button_name: Assertion 
`button <= 5' failed.
Aborted

Of course there are only 4 buttons physically, plus one hidden reset 
button. Now i am unsure whether simply to edit the source code in order to
remove the assertion. My feeling is it might work then.

Regards,

   Florian/

/Am 15.04.2017 um 12:26 schrieb Wilhelm Meier:
> Hi Florian,
>
> scanbd totally relies on libsane to read the option (button) values. It
> is known, that some backends aren't capable doing this ...
>
> For the Lide60 you can try uing the old scanbuttond backends included in
> the scanbd source tree. See the ReadMe.txt for instructions please.
>
>
>
> Am 15.04.2017 um 10:44 schrieb Florian Gagel:
>> Hi,
>>
>> my LiDE60 is working well, either directly using scanimage with scanbd
>> not running, as "genesys:libusb:001:016" or with running scanbd using
>> xinetd as"net:localhost:genesys:libusb:001:016".
>> However, none of the four buttons seem to be recognized:
>>
>> root at gandroid:/usr/local/etc/scanbd# scanbd -f -d7
>> scanbd: reading config file /usr/local/etc/scanbd/scanbd.conf
>> scanbd: debug on: level: 7
>> scanbd: dropping privs to uid saned
>> scanbd: dropping privs to gid scanner
>> scanbd: group scanner has member:
>> scanbd: saned
>> scanbd: drop privileges to gid: 121
>> scanbd: Running as effective gid 121
>> scanbd: drop privileges to uid: 120
>> scanbd: Running as effective uid 120
>> scanbd: dbus_init
>> scanbd: dbus match type='signal',interface='org.freedesktop.Hal.Manager'
>> scanbd: SANE_CONFIG_DIR=/usr/local/etc/scanbd
>> scanbd: sane version 1.0
>> scanbd: Scanning for local-only devices
>> scanbd: found device: genesys:libusb:001:016 Canon LiDE 60 flatbed scanner
>> scanbd: start_sane_threads
>> scanbd: Starting poll thread for genesys:libusb:001:016
>> scanbd: Thread started for device genesys:libusb:001:016
>> scanbd: sane_poll
>> scanbd: start dbus thread
>> scanbd: udev init
>> scanbd: get udev monitor
>> scanbd: udev fd is non-blocking, now setting to blocking mode
>> scanbd: start udev thread
>> scanbd: udev thread started
>> scanbd: timeout: 500 ms
>> scanbd: Iteration on dbus call
>> scanbd: Iteration on dbus call
>> scanbd: found 49 options for device genesys:libusb:001:016
>> scanbd: sane_find_matching_options
>> scanbd: found 5 actions in section (null)
>> scanbd: checking action scan with filter: ^scan.*
>> scanbd: found active option[2] mode (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[4] preview (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[5] depth (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[6] resolution (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[8] tl-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[9] tl-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[10] br-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[11] br-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[13] custom-gamma (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[18] swdeskew (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[19] swcrop (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[20] swdespeck (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[21] despeck (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[22] swskip (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[23] swderotate (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[24] brightness (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[25] contrast (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[27] lamp-off-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[28] lamp-off-scan (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[29] threshold (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[30] threshold-curve (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[31] disable-dynamic-lineart (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[32] disable-interpolation (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[33] color-filter (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[34] calibration-file (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[35] expiration-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[48] clear-calibration (type: 4) for device
>> genesys:libusb:001:016
>> scanbd: checking action email with filter: ^email$
>> scanbd: found active option[2] mode (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[4] preview (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[5] depth (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[6] resolution (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[8] tl-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[9] tl-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[10] br-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[11] br-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[13] custom-gamma (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[18] swdeskew (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[19] swcrop (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[20] swdespeck (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[21] despeck (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[22] swskip (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[23] swderotate (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[24] brightness (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[25] contrast (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[27] lamp-off-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[28] lamp-off-scan (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[29] threshold (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[30] threshold-curve (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[31] disable-dynamic-lineart (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[32] disable-interpolation (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[33] color-filter (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[34] calibration-file (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[35] expiration-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[48] clear-calibration (type: 4) for device
>> genesys:libusb:001:016
>> scanbd: checking action copy with filter: ^copy$
>> scanbd: found active option[2] mode (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[4] preview (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[5] depth (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[6] resolution (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[8] tl-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[9] tl-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[10] br-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[11] br-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[13] custom-gamma (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[18] swdeskew (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[19] swcrop (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[20] swdespeck (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[21] despeck (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[22] swskip (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[23] swderotate (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[24] brightness (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[25] contrast (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[27] lamp-off-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[28] lamp-off-scan (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[29] threshold (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[30] threshold-curve (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[31] disable-dynamic-lineart (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[32] disable-interpolation (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[33] color-filter (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[34] calibration-file (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[35] expiration-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[48] clear-calibration (type: 4) for device
>> genesys:libusb:001:016
>> scanbd: checking action preview with filter: ^preview$
>> scanbd: found active option[2] mode (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[4] preview (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: installing action preview (0) for genesys:libusb:001:016,
>> option[4]: preview as: test.script
>> scanbd: multiple actions allowed
>> scanbd: get_sane_option_value
>> scanbd: Initial value of option preview is 0
>> scanbd: found active option[5] depth (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[6] resolution (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[8] tl-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[9] tl-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[10] br-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[11] br-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[13] custom-gamma (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[18] swdeskew (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[19] swcrop (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[20] swdespeck (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[21] despeck (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[22] swskip (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[23] swderotate (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[24] brightness (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[25] contrast (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[27] lamp-off-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[28] lamp-off-scan (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[29] threshold (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[30] threshold-curve (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[31] disable-dynamic-lineart (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[32] disable-interpolation (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[33] color-filter (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[34] calibration-file (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[35] expiration-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[48] clear-calibration (type: 4) for device
>> genesys:libusb:001:016
>> scanbd: checking action globaltest with filter: ^message.*
>> scanbd: found active option[2] mode (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[4] preview (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[5] depth (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[6] resolution (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[8] tl-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[9] tl-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[10] br-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[11] br-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[13] custom-gamma (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[18] swdeskew (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[19] swcrop (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[20] swdespeck (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[21] despeck (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[22] swskip (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[23] swderotate (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[24] brightness (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[25] contrast (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[27] lamp-off-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[28] lamp-off-scan (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[29] threshold (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[30] threshold-curve (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[31] disable-dynamic-lineart (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[32] disable-interpolation (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[33] color-filter (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[34] calibration-file (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[35] expiration-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[48] clear-calibration (type: 4) for device
>> genesys:libusb:001:016
>> scanbd: sane_find_matching_functions
>> scanbd: found 2 functions in section (null)
>> scanbd: checking function function_knob with filter: ^message.*
>> scanbd: option[1] has no name
>> scanbd: found active option[2] mode (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: option[3] is not active
>> scanbd: found active option[4] preview (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[5] depth (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[6] resolution (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: option[7] has no name
>> scanbd: found active option[8] tl-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[9] tl-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[10] br-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[11] br-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: option[12] has no name
>> scanbd: found active option[13] custom-gamma (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: option[14] is not active
>> scanbd: option[15] is not active
>> scanbd: option[16] is not active
>> scanbd: option[17] is not active
>> scanbd: found active option[18] swdeskew (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[19] swcrop (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[20] swdespeck (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[21] despeck (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[22] swskip (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[23] swderotate (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[24] brightness (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[25] contrast (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: option[26] has no name
>> scanbd: found active option[27] lamp-off-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[28] lamp-off-scan (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[29] threshold (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[30] threshold-curve (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[31] disable-dynamic-lineart (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[32] disable-interpolation (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[33] color-filter (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[34] calibration-file (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[35] expiration-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: option[36] has no name
>> scanbd: option[37] is not active
>> scanbd: option[38] is not active
>> scanbd: option[39] is not active
>> scanbd: option[40] is not active
>> scanbd: option[41] is not active
>> scanbd: option[42] is not active
>> scanbd: option[43] is not active
>> scanbd: option[44] is not active
>> scanbd: option[45] is not active
>> scanbd: option[46] has no name
>> scanbd: option[47] is not active
>> scanbd: found active option[48] clear-calibration (type: 4) for device
>> genesys:libusb:001:016
>> scanbd: checking function function_mode with filter: ^mode.*
>> scanbd: option[1] has no name
>> scanbd: found active option[2] mode (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: installing function function_mode for genesys:libusb:001:016,
>> option[2]: mode as env: SCANBD_FUNCTION_MODE
>> scanbd: option[3] is not active
>> scanbd: found active option[4] preview (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[5] depth (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[6] resolution (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: option[7] has no name
>> scanbd: found active option[8] tl-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[9] tl-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[10] br-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[11] br-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: option[12] has no name
>> scanbd: found active option[13] custom-gamma (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: option[14] is not active
>> scanbd: option[15] is not active
>> scanbd: option[16] is not active
>> scanbd: option[17] is not active
>> scanbd: found active option[18] swdeskew (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[19] swcrop (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[20] swdespeck (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[21] despeck (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[22] swskip (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[23] swderotate (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[24] brightness (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[25] contrast (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: option[26] has no name
>> scanbd: found active option[27] lamp-off-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[28] lamp-off-scan (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[29] threshold (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[30] threshold-curve (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[31] disable-dynamic-lineart (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[32] disable-interpolation (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[33] color-filter (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[34] calibration-file (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[35] expiration-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: option[36] has no name
>> scanbd: option[37] is not active
>> scanbd: option[38] is not active
>> scanbd: option[39] is not active
>> scanbd: option[40] is not active
>> scanbd: option[41] is not active
>> scanbd: option[42] is not active
>> scanbd: option[43] is not active
>> scanbd: option[44] is not active
>> scanbd: option[45] is not active
>> scanbd: option[46] has no name
>> scanbd: option[47] is not active
>> scanbd: found active option[48] clear-calibration (type: 4) for device
>> genesys:libusb:001:016
>> scanbd: found 6 local device sections
>> scanbd: checking device section avision with filter: ^avision.*
>> scanbd: checking device section fujitsu with filter: ^fujitsu.*
>> scanbd: checking device section hp with filter: ^hpaio.*
>> scanbd: checking device section pixma with filter: ^pixma.*
>> scanbd: checking device section snapscan with filter:
>> (.*snapscan.*|.*Perfection.*)
>> scanbd: checking device section canon with filter: ^genesys.*
>> scanbd: found 1 local action for device genesys:libusb:001:016 [canon]
>> scanbd: sane_find_matching_options
>> scanbd: found 1 actions in section canon
>> scanbd: checking action file with filter: ^file.*
>> scanbd: found active option[2] mode (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[4] preview (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[5] depth (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[6] resolution (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[8] tl-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[9] tl-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[10] br-x (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[11] br-y (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[13] custom-gamma (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[18] swdeskew (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[19] swcrop (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[20] swdespeck (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[21] despeck (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[22] swskip (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[23] swderotate (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[24] brightness (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[25] contrast (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[27] lamp-off-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[28] lamp-off-scan (type: 0) for device
>> genesys:libusb:001:016
>> scanbd: found active option[29] threshold (type: 2) for device
>> genesys:libusb:001:016
>> scanbd: found active option[30] threshold-curve (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[31] disable-dynamic-lineart (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[32] disable-interpolation (type: 0) for
>> device genesys:libusb:001:016
>> scanbd: found active option[33] color-filter (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[34] calibration-file (type: 3) for device
>> genesys:libusb:001:016
>> scanbd: found active option[35] expiration-time (type: 1) for device
>> genesys:libusb:001:016
>> scanbd: found active option[48] clear-calibration (type: 4) for device
>> genesys:libusb:001:016
>> scanbd: sane_find_matching_functions
>> scanbd: no matching functions in section canon
>> scanbd: timeout: 500 ms
>> scanbd: Start the polling for device genesys:libusb:001:016
>> scanbd: polling thread for genesys:libusb:001:016, before cancellation point
>> scanbd: polling thread for genesys:libusb:001:016, after cancellation point
>> scanbd: polling device genesys:libusb:001:016
>> scanbd: get_sane_option_value
>> scanbd: checking option preview number 4 (0) for device
>> genesys:libusb:001:016: value: 0
>> scanbd: polling thread for genesys:libusb:001:016, before cancellation point
>> scanbd: polling thread for genesys:libusb:001:016, after cancellation point
>> scanbd: polling device genesys:libusb:001:016
>> scanbd: get_sane_option_value
>> scanbd: checking option preview number 4 (0) for device
>> genesys:libusb:001:016: value: 0
>> scanbd: Iteration on dbus call
>> scanbd: polling thread for genesys:libusb:001:016, before cancellation point
>> scanbd: polling thread for genesys:libusb:001:016, after cancellation point
>> scanbd: polling device genesys:libusb:001:016
>> scanbd: get_sane_option_value
>> scanbd: checking option preview number 4 (0) for device
>> genesys:libusb:001:016: value: 0
>> scanbd: polling thread for genesys:libusb:001:016, before cancellation point
>> scanbd: polling thread for genesys:libusb:001:016, after cancellation point
>> scanbd: polling device genesys:libusb:001:016
>> scanbd: get_sane_option_value
>> scanbd: checking option preview number 4 (0) for device
>> genesys:libusb:001:016: value: 0
>> scanbd: Iteration on dbus call
>> scanbd: polling thread for genesys:libusb:001:016, before cancellation point
>> scanbd: polling thread for genesys:libusb:001:016, after cancellation point
>> scanbd: polling device genesys:libusb:001:016
>> scanbd: get_sane_option_value
>> scanbd: checking option preview number 4 (0) for device
>> genesys:libusb:001:016: value: 0
>> scanbd: polling thread for genesys:libusb:001:016, before cancellation point
>> scanbd: polling thread for genesys:libusb:001:016, after cancellation point
>> scanbd: polling device genesys:libusb:001:016
>> scanbd: get_sane_option_value
>> scanbd: checking option preview number 4 (0) for device
>> genesys:libusb:001:016: value: 0
>> scanbd: Iteration on dbus call
>> scanbd: polling thread for genesys:libusb:001:016, before cancellation point
>> scanbd: polling thread for genesys:libusb:001:016, after cancellation point
>> scanbd: polling device genesys:libusb:001:016
>> scanbd: get_sane_option_value
>>
>>
>> My scanbd.conf:
>>
>> /*
>>   * $Id: scanbd.conf 237 2017-04-05 05:46:59Z wimalopaan $
>>   *
>>   *  scanbd - KMUX scanner button daemon
>>   *
>>   *  Copyright (C) 2008 - 2016 Wilhelm Meier (wilhelm.meier at fh-kl.de)
>>   *
>>   *  This program is free software; you can redistribute it and/or modify
>>   *  it under the terms of the GNU General Public License as published by
>>   *  the Free Software Foundation; either version 2 of the License, or
>>   *  (at your option) any later version.
>>   *
>>   *  This program is distributed in the hope that it will be useful,
>>   *  but WITHOUT ANY WARRANTY; without even the implied warranty of
>>   *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>>   *  GNU General Public License for more details.
>>   *
>>   *  You should have received a copy of the GNU General Public License
>>   *  along with this program; if not, write to the Free Software
>>   *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
>> 02110-1301, USA.
>>   */
>>
>>
>> # global settings
>> global {
>>          # turn on debugging
>>         
>>          # log to console
>>          debug   = true
>>
>>          # debug logging
>>          # 1=error, 2=warn, 3=info, 4-7=debug
>>          debug-level = 7
>>         
>>          # drop priviliges to this user
>>          #=============================
>>          # Linux (most distributions use the saned user):
>>          # user    = saned
>>          # ArchLinux (ArchLinux doesn't have saned user)
>>          # user    = daemon
>>          # *BSD
>>          # user    = root
>>          user    = saned
>>
>>          # Group to be used
>>          #=================
>>          # Linux (most distributions use the lp group to access scanners)
>>          # group   = lp
>>          # ArchLinux (ArchLinux uses the scanner group)
>>          # group = scanner
>>          #
>>          # *BSD (no group lp here, use daemon instead)
>>          # group   = daemon # root
>>          #
>>          #group   = lp
>>          group   = scanner
>>
>>          # the saned executable for manager-mode
>>          saned   = "/usr/sbin/saned"
>>          saned_opt  = {} # string-list
>>          saned_env  = { "SANE_CONFIG_DIR=/etc/scanbd" } # list of
>> environment vars for saned
>>
>>          # Scriptdir specifies where scanbd normally looks for scripts.
>>          # The scriptdir option can be defined as:
>>          #   - a path relative to the configuations (<path>/etc/scanbd)
>> directory
>>          #   - an abosolute path
>>          # Examples:
>>          # scriptdir = scripts
>>          # sets scriptdir to <path>/etc/scanbd/scripts.
>>          # scriptdir = /some/path
>>          # sets scriptdir to the specified absolute path
>>          # Default scriptdir is <path>/etc/scanbd, this is normally
>> appropriate
>>          scriptdir = /etc/scanbd/scripts
>>         
>>          # Scripts to execute upon device insertion/removal.
>>          # It can be necessary to load firmware into the device when it
>> is first
>>          # inserted. For example, scanbuttond backend does not know how
>> to load
>>          # scanner firmware, and it can be rectified by making a custom
>> script.
>>          # A simple command like "scanimage -L" in an example insert.script
>>          # invokes saned and it loads the appropriate firmware if necessary.
>>          # These scripts receive environmental variables named in the
>> "environment" subsection:
>>          # SCANBD_DEVICE - device name (fixed string "dbus device" for
>> dbus notification)
>>          # SCANBD_ACTION - "insert" or "remove", so one script can be used.
>>          # device_insert_script = "insert.script"
>>          # device_remove_script =
>>
>>          # scanbuttond_backends_dir sets the path where scanbd looks for
>> the scanbuttond backends
>>          # It can be defined as relative path, starting from the scanbd
>> config directory or
>>          # as an absolute path
>>          # Default is <libdir>/scanbd/scanbutond/backends
>>          # Example
>>          # scanbuttond_backends_dir =
>> "/usr/local/lib/scanbd/scanbuttond/backends"
>>
>>          # poll timeout in [ms]
>>          # (for polling the devices)
>>          timeout = 500
>>         
>>          pidfile = "/var/run/scanbd.pid"
>>         
>>          # env-vars for the scripts
>>          environment {
>>                  # pass the device label as below in this env-var
>>                  device = "SCANBD_DEVICE"
>>                  # pass the action label as below in this env-var
>>                  action = "SCANBD_ACTION"
>>          }
>>
>>          # function definitions
>>          # values of the options are simply passed via env-vars
>>
>>          function function_knob {
>>                  filter = "^message.*"
>>                  desc   = "The value of the function knob / wheel / selector"
>>                  env    = "SCANBD_FUNCTION"
>>          }
>>          function function_mode {
>>                  filter = "^mode.*"
>>                  desc   = "Color mode"
>>                  env    = "SCANBD_FUNCTION_MODE"
>>          }
>>
>>          multiple_actions = true # allow multiple actions per option (up
>> to the total amount of options)
>>
>>          # action definitions
>>          # if the filter matches and the value changes
>>          # from from-value to to-value,
>>          # <script> is executed
>>          # <script> is the full pathname (do not include any parameters)
>>          # if parameters are needed, write a script
>>         
>>          # since we can have only at most one action for each option, the
>> action-script
>>          # can use the function definition (see above) to distinguish
>> different tasks
>>          # (e.g. use the env-var SCANBD_FUNCTION defined above)
>>         
>>          action scan {
>>                  filter = "^scan.*"
>>                  numerical-trigger {
>>                          from-value = 1
>>                          to-value   = 0
>>                  }
>>                  desc   = "Scan to file"
>>                  # script must be an relative path starting from
>> scriptdir (see above),
>>                  # or an absolute pathname.
>>                  # It must contain the path to the action script without
>> arguments
>>                  # Absolute path example: script = "/some/path/foo.script
>>                  script = "test.script"
>>          }
>>          action email {
>>                  filter = "^email$"
>>                  string-trigger {
>>                          from-value  = ""
>>                          to-value    = "^email.*"
>>                  }
>>                  desc   = "Scan to email"
>>                  # script must be an relative path starting from
>> scriptdir (see above),
>>                  # or an absolute pathname.
>>                  # It must contain the path to the action script without
>> arguments
>>                  # Absolute path example: script = "/some/path/foo.script
>>                  script = "test.script"
>>          }
>>          action copy {
>>                  filter = "^copy$"
>>                  string-trigger {
>>                          from-value  = ""
>>                          to-value    = "^copy.*"
>>                  }
>>                  desc   = "Copy to printer"
>>                  # script must be an relative path starting from
>> scriptdir (see above),
>>                  # or an absolute pathname.
>>                  # It must contain the path to the action script without
>> arguments
>>                  # Absolute path example: script = "/some/path/foo.script
>>                  script = "test.script"
>>          }
>>          action preview {
>>                  filter = "^preview$"
>>                  numerical-trigger {
>>                          from-value = 1
>>                          to-value   = 0
>>                  }
>>                  desc   = "Preview"
>>                  # script must be an relative path starting from
>> scriptdir (see above),
>>                  # or an absolute pathname.
>>                  # It must contain the path to the action script without
>> arguments
>>                  # Absolute path example: script = "/some/path/foo.script
>>                  script = "test.script"
>>          }
>>          action globaltest {
>>                  filter = "^message.*"
>>                  desc   = "Test (print all env vars)"
>>                  # script must be an relative path starting from
>> scriptdir (see above),
>>                  # or an absolute pathname.
>>                  # It must contain the path to the action script without
>> arguments
>>                  # Absolute path example: script = "/some/path/foo.script
>>                  script = "test.script"
>>          }
>> }
>>
>> # include
>> # include another file at this point. This may only occur outside
>> general and devices blocks.
>> # an include statement may be relative to the direcory where scanbd.conf
>> is located or absolute
>> # include("scanner.d/myscanner.conf")
>> # include("/my/long/path/myscanner.conf")
>>
>> # devices
>> # each device can have actions and functions, you can disable not
>> relevant devices
>> include(scanner.d/avision.conf)
>> include(scanner.d/fujitsu.conf)
>> include(scanner.d/hp.conf)
>> include(scanner.d/pixma.conf)
>> include(scanner.d/snapscan.conf)
>> include(scanner.d/canon.conf)
>> #include(scanner.d/plustek.conf)
>>
>>
>> I also commented out the include statements for the devices, tested
>> different sections for the options such as "preview", tried the default
>> Ubuntu-Package for 16.04 as well as the newest version 1.5.0 of scanbd.
>>
>> Syslog contains essentially the same output as scanbd -f -d7, no events
>> registered at all on button press. Scanimage -A also gave no evidence
>> for the presence of scanner buttons.
>>
>> For me it seems that the problem might be the scanner button options not
>> being recognized, strangely there are options "with no name" ?!
>>
>> Thanks very much for any hint !
>>
>>
>> Regards,
>>
>>
>>    Florian
>>
>>
>>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20170415/83379168/attachment-0001.html>


More information about the sane-devel mailing list