Брат DCP-7055W Сканера WLAN, не работающий (“недействительный аргумент”)

Я испытываю затруднения при получении сканера моего DCP-7055W Брата, работающего по WLAN. Я уже установил официальные драйверы от Брата, и сам принтер хорошо работает.

Я настроил сканер для использования статического IP-адреса (192.168.002.150). Использование Брата brsaneconfig4 Я добавил сканер следующим образом (использование 002 вместо 2 следование этому совету):

brsaneconfig4 -a name=DCP-7055W model=DCP-7055W ip=192.168.002.150

Проверка с помощью ping-запросов сканера хорошо работает:

$ brsaneconfig4 -p
test DCP-7055W
ping 192.168.002.150 -w 10

PING 192.168.002.150 (192.168.2.150) 56(84) bytes of data.
64 bytes from 192.168.2.150: icmp_req=1 ttl=255 time=9.21 ms
64 bytes from 192.168.2.150: icmp_req=2 ttl=255 time=5.67 ms
64 bytes from 192.168.2.150: icmp_req=3 ttl=255 time=6.01 ms
64 bytes from 192.168.2.150: icmp_req=4 ttl=255 time=3.33 ms

Я также удостоверился, что проблема с драйверами на 64 бита устраняется:

$ ls -l /usr/lib/sane/libsane-brother4*
lrwxrwxrwx 1 root root     35 Sep 25 07:18 /usr/lib/sane/libsane-brother4.so -> /usr/lib/sane/libsane-brother4.so.1
lrwxrwxrwx 1 root root     39 Sep 25 07:18 /usr/lib/sane/libsane-brother4.so.1 -> /usr/lib/sane/libsane-brother4.so.1.0.7
-rwxr-xr-x 1 root root 129376 Sep 25 07:18 /usr/lib/sane/libsane-brother4.so.1.0.7

Я также исправил правила UDEV согласно этому ответу:

$ grep saned /lib/udev/rules.d/40-libsane.rules 
ENV{DEVTYPE}=="usb_device", MODE="0664", OWNER="root", GROUP="saned"

Однако я не могу на самом деле просканировать: Безотносительно инструмента, который я пробую, я получаю следующую ошибку:

$ scanimage -T
scanimage: open of device brother4:net1;dev0 failed: Invalid argument

Это происходит и как обычный пользователь и при использовании sudo, таким образом, это не должна быть проблема разрешения.

Что я пропускаю?

ОБНОВЛЕНИЕ 1: Теперь еще с некоторой подробной отладкой произведите:

# SANE_DEBUG_BROTHER4=255 scanimage
[sanei_debug] Setting debug level of brother4 to 255.
[brother4] brother init
[brother4] brother version: 1000001
[brother4] starting bus scan
[brother4] scanning bus 005
[brother4] found dev 0483/2016
[brother4] found dev 1D6B/0001
[brother4] scanning bus 004
[brother4] found dev 1D6B/0001
[brother4] scanning bus 003
[brother4] found dev 1D6B/0001
[brother4] scanning bus 002
[brother4] found dev 1D6B/0001
[brother4] scanning bus 001
[brother4] found dev 18A5/0302
[brother4] found dev 1D6B/0002
scanimage: open of device brother4:net1;dev0 failed: Invalid argument

ОБНОВЛЕНИЕ 2: Я теперь также пытался использовать сканер через USB. Я получаю ту же ошибку ("Недействительный аргумент"), но позже в процессе сканирования:

# SANE_DEBUG_BROTHER4=255 scanimage -T
[sanei_debug] Setting debug level of brother4 to 255.
[brother4] brother init
[brother4] brother version: 1000001
[brother4] starting bus scan
[brother4] scanning bus 005
[brother4] found dev 0483/2016
[brother4] found dev 1D6B/0001
[brother4] scanning bus 004
[brother4] found dev 1D6B/0001
[brother4] scanning bus 003
[brother4] found dev 1D6B/0001
[brother4] scanning bus 002
[brother4] found dev 1D6B/0001
[brother4] scanning bus 001
[brother4] found dev 04F9/02CE
[brother4] found dev 1D6B/0002
scanimage: rounded value of br-x from 215.9 to 215.88
scanimage: rounded value of br-y from 355.6 to 355.567
scanimage: sane_start: Invalid argument
[brother4] cancel called...

FAQ сканера Брата упоминает, что это могло произойти из-за сканирования области того, чтобы быть к маленькому, но передача -x 100 -y 100 кому: scanimage ничего не изменяет. Я также пытался явно передать все другие аргументы это scanimage -h возвращенный для сканера, но без успеха.

Установка libsane-extras, как предложено здесь ничего не изменил.

После поиска и устранения неисправностей подобной проблемы я работал

# strace -o strace.out -f scanimage -T

В конце вывода, там следующее:

4019  ioctl(151, USBDEVFS_SUBMITURB or USBDEVFS_SUBMITURB32, 0xbfbfe0a8) = -1 ENOENT (No such file or directory)
4019  gettimeofday({1387487538, 170759}, NULL) = 0
4019  ioctl(151, USBDEVFS_SUBMITURB or USBDEVFS_SUBMITURB32, 0xbfbfe0a8) = -1 ENOENT (No such file or directory)
4019  gettimeofday({1387487538, 170926}, {4294967236, 0}) = 0
4019  gettimeofday({1387487538, 171013}, {4294967236, 0}) = 0
4019  gettimeofday({1387487538, 171104}, NULL) = 0
4019  ioctl(151, USBDEVFS_SUBMITURB or USBDEVFS_SUBMITURB32, 0xbfbfe068) = -1 ENOENT (No such file or directory)
4019  write(2, "scanimage: sane_start: Invalid a"..., 40) = 40
4019  ioctl(151, USBDEVFS_CONTROL or USBDEVFS_CONTROL32, 0xbfbfe2e0) = 5
4019  ioctl(151, USBDEVFS_RELEASEINTERFACE, 0xbfbfe304) = 0
4019  semop(1245186, {{0, 1, SEM_UNDO}}, 1) = 0
4019  semctl(1245186, 0, IPC_64|IPC_RMID, 0xbfbfe2b8) = 0
4019  close(151)                        = 0
4019  munmap(0xb755a000, 134532)        = 0
4019  munmap(0xb7525000, 104424)        = 0
4019  munmap(0xb751b000, 38084)         = 0
4019  munmap(0xb74ef000, 176256)        = 0
4019  exit_group(4)                     = ?

Целый журнал полон ioctl вызовы, относящиеся к USBDEFVS_SUBMITURB и получение a No such file or directory. Однако я не знаю достаточно о внутренностях USB Linux для понимания этого.

ОБНОВЛЕНИЕ 3: Мое ядро:

# uname -r
3.2.0-57-generic-pae

Соответствующий вывод от dmesg:

[10210.399432] usb 1-1: usbfs: interface 0 claimed by usblp while 'scanimage' sets config #1
[10210.399446] usb 1-1: usbfs: process 5347 (scanimage) did not claim interface 1 before use
[10211.428906] usb 1-1: usbfs: interface 0 claimed by usblp while 'scanimage' sets config #1
[10213.519554] usb 1-1: usbfs: interface 0 claimed by usblp while 'scanimage' sets config #1
[10213.519567] usb 1-1: usbfs: process 5352 (scanimage) did not claim interface 1 before use
[10214.549025] usb 1-1: usbfs: interface 0 claimed by usblp while 'scanimage' sets config #1
0
задан 13 April 2017 в 15:23

2 ответа

Попробуйте ссылку ниже;

Проблема:

-name=Scanner---adding type brother
-name=SCANNER_DCP770CW

My Brother типа MFC -J430W.

0
ответ дан 13 April 2017 в 15:23

Кажется, что пакет .deb драйвера Brother устанавливает разумный драйвер в неправильный каталог для Ubuntu 16.04. Попробуйте выполнить следующее:

  1. Скопируйте все файлы из / usr / lib64 в / usr / lib

    sudo cp /usr/lib64/* /usr/lib

  2. Скопируйте все файлы из / usr / lib64 / sane в / usr / lib / x86_64-linux-gnu / sane или / usr / lib / sane

    sudo cp /usr/lib64/sane/* /usr/lib/sane

    sudo cp /usr/lib64/sane/* /usr/lib/x86_64-linux-gnu/sane

0
ответ дан 13 April 2017 в 15:23

Другие вопросы по тегам:

Похожие вопросы: