O dispositivo USB 2.0 (scanner) não funciona com xhci_hcd no sistema USB 3.0

24

Estou tentando digitalizar com samsung scx-4200 , que é uma impressora com scanner. Quando eu conecto o laptop do meu irmão que tem a mesma versão do ubuntu (14.04), ele funciona. Eu não sei como e porque. Ele não instalou nenhum software para digitalização. Eu também tentei outro computador com o elementary, e também funciona. Ora aqui é quando fica muito estranho! Eu tentei executar muitas distribuições de USB ao vivo no laptop da minha e do irmão. Scanner sempre funciona com o irmão e nunca com o meu laptop. Eu preciso muito de scanner e pode acontecer que, por causa disso, eu possa mudar para o Windows, que eu não gosto porque não é open-source, então por favor me ajude! Aqui estão as capturas de tela do erro que estou recebendo e as configurações da verificação simples.

Edit1: O USB funciona bem com qualquer outro dispositivo. Até agora, eu conectei mouse, memória flash USB, câmera e todos eles funcionam bem. Eu tentei conectar o scanner a todas as 3 portas USB (2 3.0 e 1 2.0) e acontece a mesma coisa.

Edit2: A varredura funciona com o programa vuescan, mas é necessário comprá-lo para remover a marca d'água que ele cria e é fechado.

Edit3: De todos os laptops testados, apenas o meu tem USBs 3.0 (x2). No entanto, a verificação também não funciona no USB 2.0 (no meu laptop).

Edit4: Aqui está a saída de sudo sane-find-scanner :

# sane-find-scanner will now attempt to detect your scanner. If the # result is different from what you expected, first make sure your # scanner is powered up and properly connected to your computer.

# No SCSI scanners found. If you expected something different, make sure that # you have loaded a kernel SCSI driver for your SCSI adapter.

# No USB scanners found. If you expected something different, make sure that # you have loaded a kernel driver for your USB host controller and have setup # the USB system correctly. See man sane-usb for details.

# Not checking for parallel port scanners.

# Most Scanners connected to the parallel port or other proprietary ports # can't be detected by this program.

Edit5: Eu tentei todas as combinações de configurações no BIOS relacionadas à configuração USB, sem resultado. Voltei para as configurações originais.

Edit6: eu tentei scanlite, aqui está o erro que isso me dá:

Edit7:AsegundavezqueexecuteioScanlite,eledizqueelenãodetectouscannersnomeucomputador.Àsvezesreceboumamensagemsimuladaemumasimplesdigitalização.

Edit8:Oscannerfuncionacomumavarredurasimplesdepoisdefazeroseguinte:

  1. Abrirasconfiguraçõesdosistema
  2. Clicaremimpressoras
  3. Cliquecomobotãodireitonaminhaimpressora(scx-4200)->Propriedades
  4. Níveisdetinta/toner
  5. ClicaremAtualizar
  6. Abrindoadigitalizaçãosimples
  7. Cliqueemdigitalizar
  8. Esperandocercade10a20segundosatéamensagemdeerroaparecer(comonacapturadetelafornecida)
  9. Clicandoemdigitalizarnovamente

Eissoéapenasparaumavarredura.

Edit9:Euemeuirmãotemos64bits.Olaptopdomeuirmãoéhpeomeuéasus.OmeutemmaisopçõesnoBIOS.Eutenho2USB3.0eum2.0,enquantomeuirmãotem3x2.0.Essassãoalgumasdiferenças...Aquiestáasaídadeuname-aparaomeulaptop:

Linuxdusan-K55A3.13.0-24-generic#46-UbuntuSMPThuApr1019:11:08UTC2014x86_64x86_64x86_64GNU/Linux

Eaquiestáodomeuirmão:

Linuxmilki-HP-2000-Notebook-PC3.13.0-24-generic#46-UbuntuSMPThuApr1019:11:08UTC2014x86_64x86_64x86_64GNU/Linux

Edit10:Meulaptopfoiinstaladodenovo,oirmãofoiatualizado.Amesmacoisaaconteceuquandoosdoislaptopsestavamexecutandoainstalaçãonova13.10

Edit11:Aquiestáminhasaídadelsmod:

ModuleSizeUsedbyctr130492ccm177732pci_stub126221vboxpci231940vboxnetadp256700vboxnetflt276130vboxdrv3395023vboxnetadp,vboxnetflt,vboxpcirfcomm6916012bnep196242binfmt_misc174681nls_iso8859_1127131snd_hda_codec_hdmi462071snd_hda_codec_realtek614381joydev173810uvcvideo808850videobuf2_vmalloc132161uvcvideovideobuf2_memops133621videobuf2_vmallocvideobuf2_core406641uvcvideovideodev1346882uvcvideo,videobuf2_coresnd_hda_intel523553snd_hda_codec1929063snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intelsnd_hwdep136021snd_hda_codecath3k133180snd_pcm1020993snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intelbtusb324120bluetooth39542323bnep,ath3k,btusb,rfcommsnd_page_alloc187102snd_pcm,snd_hda_intelsnd_seq_midi133240snd_seq_midi_event148991snd_seq_midiasus_nb_wmi169900asus_wmi241911asus_nb_wmisparse_keymap139481asus_wmisnd_rawmidi301441snd_seq_midisnd_seq615602snd_seq_midi_event,snd_seq_midisnd_seq_device144973snd_seq,snd_rawmidi,snd_seq_midisnd_timer294822snd_pcm,snd_seqintel_rapl187730x86_pkg_temp_thermal142050intel_powerclamp147050coretemp134350kvm_intel1430600snd6923817snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec,snd_hda_intel,snd_seq_device,snd_seq_mididm_multipath228730kvm4515111kvm_intelarc4126082csi_dh148821dm_multipathcrct10dif_pclmul142890crc32_pclmul131130ghash_clmulni_intel132590aesni_intel556244ath9k1641640ath9k_common135511ath9kaes_x86_64171311aesni_intelath9k_hw4538562ath9k_common,ath9klrw132861aesni_intelgf128mul149511lrwglue_helper139901aesni_intelablk_helper135971aesni_intelcryptd203593ghash_clmulni_intel,aesni_intel,ablk_helperath286983ath9k_common,ath9k,ath9k_hwmac802116264891ath9krtsx_pci_ms181510psmouse1022220serio_raw134620cfg802114840403ath,ath9k,mac80211memstick169661rtsx_pci_mslpc_ich210800soundcore126801sndi9157834854wmi191771asus_wmimac_hid132050drm_kms_helper527581i915drm3028175i915,drm_kms_helpermei_me186270mei822741mei_mevideo194762i915,asus_wmii2c_algo_bit134131i915parport_pc327010ppdev176710lp177590parport423483lp,ppdev,parport_pchid_generic125480usbhid526160hid1061482hid_generic,usbhidrtsx_pci_sdmmc232740ahci258193libahci321681ahcir8169675810rtsx_pci459562rtsx_pci_ms,rtsx_pci_sdmmcmii139341r8169dm_mirror221350dm_region_hash208621dm_mirrordm_log184112dm_region_hash,dm_mirror

Eaquiestáodomeuirmão:

ModuleSizeUsedbyctr130491ccm177731joydev173810snd_hda_codec_hdmi462071snd_hda_codec_realtek614381hp_wmi140620sparse_keymap139481hp_wmiuvcvideo808850videobuf2_vmalloc132161uvcvideovideobuf2_memops133621videobuf2_vmallocvideobuf2_core406641uvcvideovideodev1346882uvcvideo,videobuf2_corebnep196242rfcomm6916012intel_rapl187730x86_pkg_temp_thermal142050intel_powerclamp147050coretemp134350kvm4515110crct10dif_pclmul142890crc32_pclmul131130ghash_clmulni_intel132590cryptd203591ghash_clmulni_intelsnd_hda_intel523555snd_hda_codec1929063snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intelsnd_hwdep136021snd_hda_codecarc4126082snd_pcm1020994snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intelpsmouse1022220serio_raw134620snd_page_alloc187102snd_pcm,snd_hda_intelath9k1641640ath9k_common135511ath9kath3k133180ath9k_hw4538562ath9k_common,ath9krtsx_pci_ms181510btusb324120bluetooth39542323bnep,ath3k,btusb,rfcommath286983ath9k_common,ath9k,ath9k_hwmemstick169661rtsx_pci_mslpc_ich210800snd_seq_midi133240mac802116264891ath9kbinfmt_misc174681snd_seq_midi_event148991snd_seq_midisnd_rawmidi301441snd_seq_midicfg802114840403ath,ath9k,mac80211wmi191771hp_wmisnd_seq615602snd_seq_midi_event,snd_seq_midinls_iso8859_1127131snd_seq_device144973snd_seq,snd_rawmidi,snd_seq_midisnd_timer294822snd_pcm,snd_seqmac_hid132050snd6923820snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec,snd_hda_intel,snd_seq_device,snd_seq_midii9157834855soundcore126801sndvideo194761i915mei_me186270mei822741mei_medrm_kms_helper527581i915drm3028176i915,drm_kms_helperi2c_algo_bit134131i915parport_pc327010ppdev176710lp177590parport423483lp,ppdev,parport_pchid_generic125480usbhid526160hid1061482hid_generic,usbhidrtsx_pci_sdmmc232740ahci258193r8169675810libahci321681ahcimii139341r8169rtsx_pci459562rtsx_pci_ms,rtsx_pci_sdmmc

Edit12:Odonodo/dev/bus/usb/*éroot.Aquiestáumasaídadelusb:

Bus002Device002:ID8087:0024IntelCorp.IntegratedRateMatchingHubBus002Device001:ID1d6b:0002LinuxFoundation2.0roothubBus001Device004:ID04f2:b354ChiconyElectronicsCo.,LtdBus001Device005:ID13d3:3362IMCNetworksBus001Device002:ID8087:0024IntelCorp.IntegratedRateMatchingHubBus001Device001:ID1d6b:0002LinuxFoundation2.0roothubBus004Device001:ID1d6b:0003LinuxFoundation3.0roothubBus003Device003:ID04e8:341bSamsungElectronicsCo.,LtdSCX-4200seriesBus003Device001:ID1d6b:0002LinuxFoundation2.0roothub

EleencontraPrinter(scx4200),entãoeuachoqueéumscannertambém,jáqueéimpressoraescaner(impressoramultifuncional).

Aquiestáumapartemaisrecentedo/var/log/syslog"

May  6 19:47:07 dusan-K55A NetworkManager[1050]: <info> Activation (wlan0) successful, device activated.
May  6 19:47:07 dusan-K55A whoopsie[1317]: message repeated 6 times: [ offline]
May  6 19:47:08 dusan-K55A whoopsie[1317]: online
May  6 19:47:08 dusan-K55A signond[6522]: ../../../../src/signond/signondaemon.cpp 388 init Failed to SUID root. Secure storage will not be available. 
May  6 19:47:13 dusan-K55A ntpdate[6489]: adjust time server 91.189.94.4 offset 0.251812 sec
May  6 19:47:23 dusan-K55A kernel: [  249.508157] usb 3-3: new high-speed USB device number 3 using xhci_hcd
May  6 19:47:23 dusan-K55A kernel: [  249.525822] usb 3-3: New USB device found, idVendor=04e8, idProduct=341b
May  6 19:47:23 dusan-K55A kernel: [  249.525830] usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
May  6 19:47:23 dusan-K55A kernel: [  249.525834] usb 3-3: Product: SCX-4200 Series
May  6 19:47:23 dusan-K55A kernel: [  249.525837] usb 3-3: Manufacturer: Samsung
May  6 19:47:23 dusan-K55A kernel: [  249.525840] usb 3-3: SerialNumber: 8T21BAILC00139N.
May  6 19:47:23 dusan-K55A kernel: [  250.127578] WARNING! power/level is deprecated; use power/control instead
May  6 19:47:23 dusan-K55A colord: Device added: sysfs-Samsung-SCX-4200_Series
May  6 19:47:23 dusan-K55A kernel: [  250.206346] usblp 3-3:1.1: usblp0: USB Bidirectional printer dev 3 if 1 alt 0 proto 2 vid 0x04E8 pid 0x341B
May  6 19:47:23 dusan-K55A kernel: [  250.206372] usbcore: registered new interface driver usblp
May  6 19:47:24 dusan-K55A NetworkManager[1050]: <info> (wlan0): IP6 addrconf timed out or failed.
May  6 19:47:24 dusan-K55A NetworkManager[1050]: <info> Activation (wlan0) Stage 4 of 5 (IPv6 Configure Timeout) scheduled...
May  6 19:47:24 dusan-K55A NetworkManager[1050]: <info> Activation (wlan0) Stage 4 of 5 (IPv6 Configure Timeout) started...
May  6 19:47:24 dusan-K55A NetworkManager[1050]: <info> Activation (wlan0) Stage 4 of 5 (IPv6 Configure Timeout) complete.
May  6 19:47:25 dusan-K55A wpa_supplicant[1293]: wlan0: CTRL-EVENT-SCAN-STARTED 
May  6 19:47:28 dusan-K55A NetworkManager[1050]: <warn> nl_recvmsgs() error: (-33) Dump inconsistency detected, interrupted
May  6 19:47:41 dusan-K55A signond[6522]: QObject::disconnect: Unexpected null parameter
May  6 19:49:27 dusan-K55A dbus[916]: [system] Activating service name='org.freedesktop.hostname1' (using servicehelper)
May  6 19:49:27 dusan-K55A dbus[916]: [system] Successfully activated service 'org.freedesktop.hostname1'
May  6 19:51:57 dusan-K55A kernel: [  523.891783] usb 3-3: usbfs: interface 1 claimed by usblp while 'scan-thread' sets config #1
May  6 19:50:34 dusan-K55A wpa_supplicant[1293]: message repeated 3 times: [ wlan0: CTRL-EVENT-SCAN-STARTED ]
May  6 19:52:02 dusan-K55A wpa_supplicant[1293]: wlan0: WPA: Group rekeying completed with 7c:05:07:de:42:7a [GTK=TKIP]
May  6 19:52:17 dusan-K55A wpa_supplicant[1293]: wlan0: CTRL-EVENT-SCAN-STARTED 
May  6 19:53:24 dusan-K55A kernel: [  610.927164] usb 3-3: usbfs: interface 1 claimed by usblp while 'scan-thread' sets config #1

E aqui estão alguns resultados mais recentes de /var/log/kern.log , aqui mostra algum tipo de interferência do driver :

May  6 19:47:04 dusan-K55A kernel: [  230.535670] ath9k 0000:02:00.0 wlan0: disabling HT as WMM/QoS is not supported by the AP
May  6 19:47:04 dusan-K55A kernel: [  230.535672] ath9k 0000:02:00.0 wlan0: disabling VHT as WMM/QoS is not supported by the AP
May  6 19:47:04 dusan-K55A kernel: [  230.537083] wlan0: associate with 7c:05:07:de:42:7a (try 1/3)
May  6 19:47:04 dusan-K55A kernel: [  230.541459] wlan0: RX AssocResp from 7c:05:07:de:42:7a (capab=0x411 status=0 aid=1)
May  6 19:47:04 dusan-K55A kernel: [  230.541663] wlan0: associated
May  6 19:47:23 dusan-K55A kernel: [  249.508157] usb 3-3: new high-speed USB device number 3 using xhci_hcd
May  6 19:47:23 dusan-K55A kernel: [  249.525822] usb 3-3: New USB device found, idVendor=04e8, idProduct=341b
May  6 19:47:23 dusan-K55A kernel: [  249.525830] usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
May  6 19:47:23 dusan-K55A kernel: [  249.525834] usb 3-3: Product: SCX-4200 Series
May  6 19:47:23 dusan-K55A kernel: [  249.525837] usb 3-3: Manufacturer: Samsung
May  6 19:47:23 dusan-K55A kernel: [  249.525840] usb 3-3: SerialNumber: 8T21BAILC00139N.
May  6 19:47:23 dusan-K55A kernel: [  250.127578] WARNING! power/level is deprecated; use power/control instead
May  6 19:47:23 dusan-K55A kernel: [  250.206346] usblp 3-3:1.1: usblp0: USB Bidirectional printer dev 3 if 1 alt 0 proto 2 vid 0x04E8 pid 0x341B
May  6 19:47:23 dusan-K55A kernel: [  250.206372] usbcore: registered new interface driver usblp
May  6 19:51:57 dusan-K55A kernel: [  523.891783] usb 3-3: usbfs: interface 1 claimed by usblp while 'scan-thread' sets config #1
May  6 19:53:24 dusan-K55A kernel: [  610.927164] usb 3-3: usbfs: interface 1 claimed by usblp while 'scan-thread' sets config #1

Em ~ / .xsession-errors não há erros, penso:

Script for ibus started at run_im.
Script for auto started at run_im.
Script for default started at run_im.
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd main process ended, respawning
init: at-spi2-registryd respawning too fast, stopped

Edit13: Analisando erros em /var/log/kern.log , descobri que essa linha de erro é gerada em kern.log quando recebo um erro que nenhum scanner encontrou:

May  6 20:45:34 dusan-K55A kernel: [  500.209280] usb 3-3: usbfs: interface 1 claimed by usblp while 'scan-thread' sets config #1

E recebo esse erro quando o erro "Falha ao verificar" se estabiliza (como na captura de tela):

May  6 20:52:03 dusan-K55A kernel: [  889.843120] usb 3-3: usbfs: interface 1 claimed by usblp while 'scan-thread' sets config #1

Edit14: Eu percebi que com o driver linux da Samsung Universal, que eu instalei através deste este link , a impressão não não funciona. Eu desinstalei e instalei drivers através da função Adicionar impressora nas configurações do sistema - > impressoras. No entanto, agora a digitalização não funciona, mesmo com etapas em edit8, que funcionou anteriormente, mas agora, a impressão funciona. No entanto, a digitalização com o vuescan ainda funciona.

Edit15: Aqui está a saída do grep 341b /etc/sane.d/xerox_mfp.conf:

usb 0x04e8 0x341b

E saída de modprobe -r usblp; sane-find-scanner :

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.

  # No USB scanners found. If you expected something different, make sure that
  # you have loaded a kernel driver for your USB host controller and have setup
  # the USB system correctly. See man sane-usb for details.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.

Aqui está a saída de ldd $ (que sane-find-scanner) :

linux-vdso.so.1 =>  (0x00007fffad7e6000)
    libusb-1.0.so.0 => /lib/x86_64-linux-gnu/libusb-1.0.so.0 (0x00007f872a0b6000)
    libieee1284.so.3 => /usr/lib/x86_64-linux-gnu/libieee1284.so.3 (0x00007f8729eaa000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f8729ae3000)
    libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f87298d2000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f87296b4000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f872a2f4000)
    libcgmanager.so.0 => /lib/x86_64-linux-gnu/libcgmanager.so.0 (0x00007f8729499000)
    libnih.so.1 => /lib/x86_64-linux-gnu/libnih.so.1 (0x00007f8729281000)
    libnih-dbus.so.1 => /lib/x86_64-linux-gnu/libnih-dbus.so.1 (0x00007f8729077000)
    libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f8728e31000)
    librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f8728c29000)

Edit16: Aqui está o dll.conf .

Edit17: Aqui está log.txt , a saída de sudo strace sane-find- scanner .

Edit18: Aqui está a saída de scanimage -L , é o mesmo para o meu laptop e meu irmão:

device 'xerox_mfp:libusb:003:003' is a SAMSUNG ORION multi-function peripheral
    
por Dusan Milosevic 29.04.2014 / 22:03

7 respostas

18

Seu dispositivo USB 2.0 (neste caso, scanner) tem algum problema de compatibilidade interagindo com o seu sistema USB 3.0 (portas USB3 ou portas USB2 de um hub USB3). O problema pode ser causado pelo hardware / firmware do scanner, pelo firmware do PC EFI / BIOS, pelo chipset USB do PC ou pelo driver xhci_hcd do kernel do Linux.

Soluções possíveis:

  • Use um cabo de extensão USB 2 curto (ou apenas um cabo USB2) para conectar o dispositivo. Isso força a porta USB 3 a usar a sinalização USB 2. Um dispositivo ou cabo USB 3 tem 9 pinos, enquanto um dispositivo ou cabo USB 2 tem apenas 4 pinos. Uma porta USB 3 terá como padrão a comunicação de sinalização USB 2 quando apenas 4 pinos estiverem conectados. Um cabo de extensão USB 2 contém somente 4 fios que conectam os 4 pinos das comunicações somente USB 2.

  • Use um hub USB 1.1 (ou 2.0) barato e conecte-o à porta USB3. Conecte seu dispositivo ao hub USB 1.1 / 2.0. Isso forçará a conexão a ser USB1.1 / 2.0. Como o hub tem um controlador USB diferente, ele solucionará alguns bugs de protocolo. Um hub USB 1.1 é uma boa opção para um dispositivo de "baixa velocidade", como mouse, teclado, etc. Um hub USB 2.0 pode ser necessário para um dispositivo "full speed" como um scanner que não passará para o USB 1.1. / p>

  • Atualize seu BIOS para PC / laptop. Os fabricantes podem solucionar muitos problemas de USB com correções no BIOS / EFI.

  • Conecte o dispositivo USB 2.0 (scanner) por uma porta USB 2.0 se o laptop tiver um. Isso não fará diferença se suas portas USB2 também forem controladas pelo driver xhci_hcd (ou seja, você ainda verá new high-speed USB device number x using xhci_hcd em dmesg), caso em que tente usar um hub USB2 externo.

  • Se este for um desktop ou servidor, em vez de um laptop, tente uma placa controladora PCI USB diferente. Diferentes placas USB3 possuem diferentes chips controladores XHCI, portanto, a compatibilidade com diferentes hubs / dispositivos USB varia.

  • Atualize o firmware do seu dispositivo USB 2.0. Isso provavelmente não é possível para um scanner de nível de consumidor, mas é possível para alguns dispositivos USB 2.0 (por exemplo, câmeras Pro)

  • Substitua seu dispositivo USB 2.0 (scanner) por um dispositivo compatível com USB 3.0

  • Atualize para o último kernel principal

  • No UEFI / BIOS altere a configuração na configuração USB, "XHCI Modo de pré-inicialização " de ativado para desativado. Em algumas configurações do BIOS, essa configuração é conhecida como "Modo XHCI".

    As portas USB 3.0 são controladas pelo driver xhci_hcd no Linux. Quando o "modo de pré-inicialização XHCI" estiver habilitado, o BIOS roteará as portas USB 3.0 para o controlador xHCI do USB3 . Quando está desabilitado, as portas USB 3.0 são roteadas para as portas EHCI (USB 2.0). O texto "modo de pré-inicialização" implica que essa opção afeta apenas o ambiente antes de inicialização de um sistema operacional completo (o texto de ajuda do BIOS associado menciona explicitamente que essa opção é usada para suporte a USB3 no MSDOS); no entanto, parece que isso também pode afetar o ambiente pós-inicialização e pode ter o efeito de conectar as portas USB 3.0 ao controlador USB 2.0 mesmo depois que o Linux for carregado. A desvantagem disso é que todas as portas USB 3 agora serão executadas na velocidade do USB 2.

  • Desativar o consumo de energia do USB para todos os dispositivos com o opção do módulo do kernel autosuspend :

    modprobe usbcore autosuspend=-1

    Ou se usbcore não for um módulo com este parâmetro de inicialização do kernel:

    usbcore.autosuspend=-1

    (no Ubuntu o usbcore é construído, portanto use o parâmetro de inicialização do kernel)

  • Desativar o powersaving (USB autosuspend) para o scanner (de Documentation / usb / power-management. txt .

    Quando você conectar o scanner na seleção dmesg|tail e você verá algo como

    usb 3-3: Product: SCX-4200 Series

    O número 3-3 representa o caminho USB do dispositivo no formato bus-port.port.port . Você encontrará o diretório sysfs correspondente em / sys / bus / usb / devices / 3-3 . Escreva on para poder / controle aqui para desativar a suspensão automática:

    echo on > /sys/bus/usb/devices/3-3/power/control

por bain 09.05.2014 / 19:18
5

Eu tive um problema semelhante com o meu scanner (tudo em um Brother MFC-j410) no Ubuntu 14.04 32 bits. O scanner só funcionou depois de iniciar o XSANE pela segunda vez e, em seguida, fez apenas uma operação de visualização ou digitalização. Eu tentei mudar as portas USB para USB 2.0 sem sucesso. Minha placa-mãe é uma Asus B85M-k com um chip Intel i3 LGA1150.

Eu tentei virtualbox com uma versão anterior do Ubuntu, onde o scanner sempre funcionou em outro PC. Ainda assim, sem sorte, o que me deixou altamente desconfiada sobre os recursos do usb 3. A impressora também me deu alguns avisos, mas imprimiu.

depois de ler isto

As portas USB 3.0 são controladas pelo driver xhci_hcd no Linux. Quando o "modo de pré-inicialização XHCI" estiver ativado, o BIOS roteará as portas USB 3.0 para o controlador USB3 xHCI. Quando está desabilitado, as portas USB 3.0 são roteadas para as portas EHCI (USB 2.0). A expressão "modo de pré-inicialização" implica que essa opção afeta apenas o ambiente antes que um sistema operacional completo seja inicializado (o texto de ajuda do BIOS associado menciona explicitamente que essa opção é usada para suporte a USB3 no MSDOS); no entanto, parece que isso também pode afetar o ambiente pós-inicialização e pode ter o efeito de conectar as portas USB 3.0 ao controlador USB 2.0 mesmo depois que o Linux for carregado (assim as portas são executadas na velocidade do USB2).

Eu entrei no meu BIOS e sob configurações avançadas encontrei e mudei o USB 3.0 de XHCI habilitado para desativado e havia outra configuração para o usb 2 (eu acho que era EHCI) de ativado para desativado ou o contrário, desculpe Não me lembro. De qualquer forma, depois de inicializar no Ubuntu 14.04 32 bit, tudo funcionou bem.

    
por David candlelight 18.05.2014 / 14:28
1

Atualização: a partir das informações encontradas nos resultados da Internet:

  1. Os drivers v 2.0.0 são universalmente conhecidos como bugados (para que você aplique um patch).
  2. O desenvolvedor do patch não continua para atualizá-lo e disse que "Versões 2.xx de seus drivers Linux têm um defeito: o usuário tem que executar com permissões de root para poder escanear. Isso é muito perigoso" e sugerir instalar a versão 3.xx. "
  3. No site da Samsung existe uma versão 3 para Windows e OSX não para linux
  4. Seguindo o link que você dá e pesquisando, eu encontro um link: (talvez ele funcione) link
  5. No mesmo caminho existe outro arquivo chamado samsung

Mesmo que você tenha baixado e instalado a versão 2.xx e o patch relativo, você não pode esperar que funcione com um kernel diferente do que foi testado.

Soluções possíveis:

  • Tente instalar a versão do driver 3.xx ou as do diretório vinculado acima.
  • Encontre com qual kernel era compatível o par driver + patch. Decida se instalar na sua máquina ou instalá-lo dentro de uma caixa virtual.
  • Tente baixar os drivers e o programa para windows (melhor um antigo) e tente instalá-los / executá-los com vinho.
  • Aqui há outro tutorial sobre como instalar esses drivers language) output diferente para scanimage -L
    device smfp: Série SAMSUNG SCX-4200 em USB: 0 é uma SAMSUNG SCX-4200 Series em USB: 0 Scanner Flatbed
  • Ignore as regras de segurança que pressionam o desenvolvedor do patch a criar o patch e executar o programa do scanner não como um usuário, mas como o root. Com o driver não corrigido. Arriscado e perigoso . Eu realmente não te sugeri ...

Boa sorte

Enquanto isso, você não encontra uma correção no Ubuntu, Eu poderia sugerir a você essa solução alternativa. Você disse

I might switch to windows, which I don't like because it's not open-source...

(Eu concordo) Então, no seu computador no Windows parece que o scanner funciona. Tente instalar o Windows e os drivers em uma imagem do VirtualBox. Se o scanner funcionar, você não precisa alternar o sistema ...

Se não funcionar, tente executar a mesma máquina virtual no computador do seu irmão. Se a partir desse computador funcionar, você terá certeza de que há uma configuração em algum lugar do seu computador que você pode tentar corrigir. Boa sorte.

    
por Hastur 07.05.2014 / 12:58
1

Tente conectar o scanner via USB. Há uma chance de o seu computador não colocar energia suficiente na porta USB.

Para qualquer outra pessoa que tenha esse problema, verifique a adição de um hub USB ativado. Ele resolveu o problema em muitas ocasiões com computadores que tinham problemas com dispositivos que funcionavam em outros computadores.

Isso funcionou com pen drives que falharam no computador principal e nos computadores dos clientes. Também resolveu problemas com unidades USB externas que falham em certas portas USB onde outros dispositivos funcionavam.

Eu também tive ocasiões em que os adaptadores de cabo Y serviram como a mesma resolução.

Espero que este esclarecimento salve outros que estão tendo problemas semelhantes.

Não sei se o problema do OP foi resolvido no momento. Mas as diferenças entre seu computador e os outros computadores que ele descreveu têm tudo exato, incluindo a mesma versão e atualização, o USB é um fator claro neste caso, que pode ser resolvido com um hub alimentado ou um adaptador USB com cabo Y. / p>     

por L. D. James 07.05.2014 / 00:01
1

Eu darei uma resposta simples, não fingindo ser melhor.

Com algumas placas-mãe, os scanners USB 2.0 antigos não funcionam. Não importa se estão conectados à porta USB 2.0 ou 3.0.

Uma solução fácil é desabilitar XHCI mode no BIOS UEFI aka. Foi mencionado em outras respostas, mas não é fácil de encontrar.

Este problema foi resolvido pelos desenvolvedores do kernel e pode ser corrigido em novos kernels.

    
por Pilot6 29.05.2015 / 17:24
1

A versão do kernel Linux 4.1.1 (disponível em link ) resolve o problema que alguns scanners não trabalhe com o USB 3.0. Pelo menos, isso acontece no meu computador.

Para ser reconhecido como um scanner que precisa estar disponível para usuários não-root para alguns dispositivos, uma linha como

SUBSYSTEM=="usb", ATTRS{idVendor}=="xxxx", ATTRS{idProduct}=="yyyy", MODE:="666", GROUP="users"

pode ser necessário em um arquivo chamado /etc/udev/rules.d/samsung.rules ou similar. Os IDs do fornecedor e do produto podem ser lidos pelo comando

lsusb

na seguinte linha:

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

o dispositivo (neste caso não é um scanner, mas um hub usb, mas não tinha um scanner disponível agora) tem o ID do fornecedor 1d6b e o ID do produto 0002.

    
por Gunter Königsmann 04.07.2015 / 15:30
0

Uma solução que encontrei foi a configuração de uma máquina virtual (tanto o VirtualBox quanto o VMWare [player] devem estar ok) com qualquer linux distro que você quiser, eu configurei para ser compatível com o protocolo USB 2.0 . Depois que eu redirecionar meu dispositivo USB para a VM, posso fazer a varredura a partir dele.

    
por Treviño 02.05.2016 / 15:56