Il dispositivo USB 2.0 (scanner) non funziona con xhci_hcd sul sistema USB 3.0


24

Sto cercando di eseguire la scansione con Samsung Scx-4200, che è una stampante con scanner. Quando collego il laptop di mio fratello che ha la stessa versione di Ubuntu (14.04), funziona. Non so come e perché. Non ha installato alcun software per la scansione. Ho anche provato un altro computer con sistema operativo elementare e anch'esso funziona. Ora ecco quando diventa davvero strano! Ho provato a eseguire molte distribuzioni da USB live sia sul mio che sul laptop di mio fratello. Scanner funziona sempre con il laptop e mai con il mio laptop. Ho bisogno di scanner molto e potrebbe accadere che, per questo, potrei passare a Windows, che non mi piace perché non è open-source, quindi per favore aiutatemi! Ecco le schermate dell'errore che sto riscontrando e le impostazioni della scansione semplice.

inserisci qui la descrizione dell'immagine inserisci qui la descrizione dell'immagine

Modifica1: USB funziona bene con qualsiasi altro dispositivo. Finora ho collegato mouse, memoria flash USB, fotocamera e funzionano tutti bene. Ho provato a collegare lo scanner a tutte e 3 le porte USB (2 3.0 e 1 2.0) e succede la stessa cosa.

Modifica2: la scansione funziona con il programma vuescan, ma richiede di acquistarlo per rimuovere la filigrana che crea ed è di origine chiusa.

Edit3: di tutti i laptop testati, solo il mio ha USB 3.0 (x2). Tuttavia, la scansione non funziona anche su USB 2.0 (sul mio laptop).

Edit4: Ecco l'output di sudo sane-find-scanner:

# sane-find-scanner ora tenterà di rilevare il tuo scanner. Se il risultato # è diverso da quello previsto, accertarsi innanzitutto che lo scanner # sia acceso e collegato correttamente al computer.

# Nessuno scanner SCSI trovato. Se ti aspettavi qualcosa di diverso, assicurati di aver caricato # un driver SCSI del kernel per la tua scheda SCSI.

# Nessun scanner USB trovato. Se ti aspettavi qualcosa di diverso, assicurati di aver caricato # un driver del kernel per il tuo controller host USB e di aver impostato correttamente # il sistema USB. Vedi man sane-usb per i dettagli.

# Non verifica la presenza di scanner per porte parallele.

# La maggior parte degli scanner collegati alla porta parallela o ad altre porte proprietarie # non può essere rilevata da questo programma.

Edit5: ho provato tutte le combinazioni di impostazioni nel BIOS relative alla configurazione USB, senza risultato. Sono tornato alle impostazioni originali.

Edit6: ho provato scanlite, ecco l'errore che mi dà:

inserisci qui la descrizione dell'immagine

Edit7: La seconda volta che ho eseguito Scanlite, dice che non rileva scanner sul mio computer. A volte ricevo un messaggio simile su una semplice scansione.

Modifica8: lo scanner funziona con una semplice scansione dopo aver effettuato le seguenti operazioni:

  1. Apri le Impostazioni di sistema
  2. Fare clic su stampanti
  3. Fare clic destro sulla mia stampante (scx-4200) -> Proprietà
  4. Livelli di inchiostro / toner
  5. Fare clic su Aggiorna
  6. Aprire la scansione semplice
  7. Fare clic su Scansione
  8. Attendere circa 10-20 secondi fino alla visualizzazione del messaggio di errore (come nella schermata fornita)
  9. Fare di nuovo clic su Scansione

E questo è solo per 1 scansione.

Edit9: Io e mio fratello abbiamo entrambi 64 bit. Il laptop di mio fratello è hp e il mio è asus. Il mio ha più opzioni nel BIOS. Ho 2 USB 3.0 e uno 2.0, mentre mio fratello ha 3 x 2.0. Queste sono alcune differenze ... Ecco l'output di uname -a per il mio laptop:

Linux dusan-K55A 3.13.0-24-generic # 46-Ubuntu SMP gio 10 apr 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU / Linux

Ed ecco quello di mio fratello:

Linux milki-HP-2000-Notebook-PC 3.13.0-24-generic # 46-Ubuntu SMP gio 10 apr 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU / Linux

Edit10: il mio laptop era una nuova installazione, il fratello è stato aggiornato. La stessa cosa è successa quando su entrambi i portatili era in esecuzione una nuova installazione 13.10

Edit11: Ecco il mio output di lsmod:

Module                  Size  Used by
ctr                    13049  2 
ccm                    17773  2 
pci_stub               12622  1 
vboxpci                23194  0 
vboxnetadp             25670  0 
vboxnetflt             27613  0 
vboxdrv               339502  3 vboxnetadp,vboxnetflt,vboxpci
rfcomm                 69160  12 
bnep                   19624  2 
binfmt_misc            17468  1 
nls_iso8859_1          12713  1 
snd_hda_codec_hdmi     46207  1 
snd_hda_codec_realtek    61438  1 
joydev                 17381  0 
uvcvideo               80885  0 
videobuf2_vmalloc      13216  1 uvcvideo
videobuf2_memops       13362  1 videobuf2_vmalloc
videobuf2_core         40664  1 uvcvideo
videodev              134688  2 uvcvideo,videobuf2_core
snd_hda_intel          52355  3 
snd_hda_codec         192906  3          snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel
snd_hwdep              13602  1 snd_hda_codec
ath3k                  13318  0 
snd_pcm               102099  3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel
btusb                  32412  0 
bluetooth             395423  23 bnep,ath3k,btusb,rfcomm
snd_page_alloc         18710  2 snd_pcm,snd_hda_intel
snd_seq_midi           13324  0 
snd_seq_midi_event     14899  1 snd_seq_midi
asus_nb_wmi            16990  0 
asus_wmi               24191  1 asus_nb_wmi
sparse_keymap          13948  1 asus_wmi
snd_rawmidi            30144  1 snd_seq_midi
snd_seq                61560  2 snd_seq_midi_event,snd_seq_midi
snd_seq_device         14497  3 snd_seq,snd_rawmidi,snd_seq_midi
snd_timer              29482  2 snd_pcm,snd_seq
intel_rapl             18773  0 
x86_pkg_temp_thermal    14205  0 
intel_powerclamp       14705  0 
coretemp               13435  0 
kvm_intel             143060  0 
snd                    69238  17 snd_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_midi
dm_multipath           22873  0 
kvm                   451511  1 kvm_intel
arc4                   12608  2 
csi_dh                14882  1 dm_multipath
crct10dif_pclmul       14289  0 
crc32_pclmul           13113  0 
ghash_clmulni_intel    13259  0 
aesni_intel            55624  4 
ath9k                 164164  0 
ath9k_common           13551  1 ath9k
aes_x86_64             17131  1 aesni_intel
ath9k_hw              453856  2 ath9k_common,ath9k
lrw                    13286  1 aesni_intel
gf128mul               14951  1 lrw
glue_helper            13990  1 aesni_intel
ablk_helper            13597  1 aesni_intel
cryptd                 20359  3 ghash_clmulni_intel,aesni_intel,ablk_helper
ath                    28698  3 ath9k_common,ath9k,ath9k_hw
mac80211              626489  1 ath9k
rtsx_pci_ms            18151  0 
psmouse               102222  0 
serio_raw              13462  0 
cfg80211              484040  3 ath,ath9k,mac80211
memstick               16966  1 rtsx_pci_ms
lpc_ich                21080  0 
soundcore              12680  1 snd
i915                  783485  4 
wmi                    19177  1 asus_wmi
mac_hid                13205  0 
drm_kms_helper         52758  1 i915
drm                   302817  5 i915,drm_kms_helper
mei_me                 18627  0 
mei                    82274  1 mei_me
video                  19476  2 i915,asus_wmi
i2c_algo_bit           13413  1 i915
parport_pc             32701  0 
ppdev                  17671  0 
lp                     17759  0 
parport                42348  3 lp,ppdev,parport_pc
hid_generic            12548  0 
usbhid                 52616  0 
hid                   106148  2 hid_generic,usbhid
rtsx_pci_sdmmc         23274  0 
ahci                   25819  3 
libahci                32168  1 ahci
r8169                  67581  0 
rtsx_pci               45956  2 rtsx_pci_ms,rtsx_pci_sdmmc
mii                    13934  1 r8169
dm_mirror              22135  0 
dm_region_hash         20862  1 dm_mirror
dm_log                 18411  2 dm_region_hash,dm_mirror

Ed ecco quello di mio fratello:

Module                  Size  Used by
ctr                    13049  1 
ccm                    17773  1 
joydev                 17381  0 
snd_hda_codec_hdmi     46207  1 
snd_hda_codec_realtek    61438  1 
hp_wmi                 14062  0 
sparse_keymap          13948  1 hp_wmi
uvcvideo               80885  0 
videobuf2_vmalloc      13216  1 uvcvideo
videobuf2_memops       13362  1 videobuf2_vmalloc
videobuf2_core         40664  1 uvcvideo
videodev              134688  2 uvcvideo,videobuf2_core
bnep                   19624  2 
rfcomm                 69160  12 
intel_rapl             18773  0 
x86_pkg_temp_thermal    14205  0 
intel_powerclamp       14705  0 
coretemp               13435  0 
kvm                   451511  0 
crct10dif_pclmul       14289  0 
crc32_pclmul           13113  0 
ghash_clmulni_intel    13259  0 
cryptd                 20359  1 ghash_clmulni_intel
snd_hda_intel          52355  5 
snd_hda_codec         192906  3 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel
snd_hwdep              13602  1 snd_hda_codec
arc4                   12608  2 
snd_pcm               102099  4 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel
psmouse               102222  0 
serio_raw              13462  0 
snd_page_alloc         18710  2 snd_pcm,snd_hda_intel
ath9k                 164164  0 
ath9k_common           13551  1 ath9k
ath3k                  13318  0 
ath9k_hw              453856  2 ath9k_common,ath9k
rtsx_pci_ms            18151  0 
btusb                  32412  0 
bluetooth             395423  23 bnep,ath3k,btusb,rfcomm
ath                    28698  3 ath9k_common,ath9k,ath9k_hw
memstick               16966  1 rtsx_pci_ms
lpc_ich                21080  0 
snd_seq_midi           13324  0 
mac80211              626489  1 ath9k
binfmt_misc            17468  1 
snd_seq_midi_event     14899  1 snd_seq_midi
snd_rawmidi            30144  1 snd_seq_midi
cfg80211              484040  3 ath,ath9k,mac80211
wmi                    19177  1 hp_wmi
snd_seq                61560  2 snd_seq_midi_event,snd_seq_midi
nls_iso8859_1          12713  1 
snd_seq_device         14497  3 snd_seq,snd_rawmidi,snd_seq_midi
snd_timer              29482  2 snd_pcm,snd_seq
mac_hid                13205  0 
snd                    69238  20 snd_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_midi
i915                  783485  5 
soundcore              12680  1 snd
video                  19476  1 i915
mei_me                 18627  0 
mei                    82274  1 mei_me
drm_kms_helper         52758  1 i915
drm                   302817  6 i915,drm_kms_helper
i2c_algo_bit           13413  1 i915
parport_pc             32701  0 
ppdev                  17671  0 
lp                     17759  0 
parport                42348  3 lp,ppdev,parport_pc
hid_generic            12548  0 
usbhid                 52616  0 
hid                   106148  2 hid_generic,usbhid
rtsx_pci_sdmmc         23274  0 
ahci                   25819  3 
r8169                  67581  0 
libahci                32168  1 ahci
mii                    13934  1 r8169
rtsx_pci               45956  2 rtsx_pci_ms,rtsx_pci_sdmmc

Edit12: Il proprietario di / dev / bus / usb / * è root. Ecco un output di lusb :

Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 04f2:b354 Chicony Electronics Co., Ltd 
Bus 001 Device 005: ID 13d3:3362 IMC Networks 
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 003: ID 04e8:341b Samsung Electronics Co., Ltd SCX-4200 series
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Trova la stampante (scx4200), quindi immagino sia anche uno scanner, poiché è una stampante e uno scanner (stampante multifunzione).

Ecco alcune ultime parti di / 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

Ed ecco alcuni degli ultimi output da /var/log/kern.log , qui mostra una sorta di interferenza del 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

In ~ / .xsession-errors non ci sono errori, 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: Analizzando gli errori in /var/log/kern.log , ho scoperto che questa riga di errore viene emessa in kern.log quando ottengo l'errore non è stato trovato alcuno scanner:

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 ottengo questo errore quando si verifica l'errore "Scansione non riuscita" (come nella schermata):

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: mi sono reso conto che con il driver linux Samsung Universal, che ho installato tramite questo link , la stampa non funziona. L'ho disinstallato e ho installato i driver tramite la funzione Aggiungi stampante nelle impostazioni di sistema -> stampanti. Tuttavia, ora la scansione non funziona nemmeno con i passaggi in edit8, che in precedenza funzionava, ma ora funziona la stampa. R Tuttavia, la scansione con Vuescan funziona ancora.

Edit15: Ecco l'output di grep 341b /etc/sane.d/xerox_mfp.conf :

usb 0x04e8 0x341b

E l'output di 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.

Ecco l'output di ldd $ (che 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: ecco dll.conf .

Edit17: Ecco log.txt , l'output di sudo strace sane-find-scanner .

Edit18: Ecco l'output di scanimage -L , è lo stesso per il mio e il laptop di mio fratello:

device `xerox_mfp:libusb:003:003' is a SAMSUNG ORION multi-function peripheral

Questo sistema è stato aggiornato all'ultima versione? Il laptop di tuo fratello è una nuova installazione? Lo chiedo perché l'aggiornamento su una nuova installazione può causare strani problemi come questo. Tuttavia sono hardware diverso, quindi potrebbe essere un brutto bug.
fleamour

Sembra che potrebbe, forse, essere un problema del modulo kernel (driver). Forse uno specifico non è caricato che dovrebbe essere. Se potessi anche fornire l'output di lsmodentrambi i computer con lo scanner collegato, ciò potrebbe darci un buon punto di partenza.
Chuck R,

Quando lo scanner non riesce, vengono visualizzati errori in / var / log / syslog o /var/log/kern.log o ~ / .xsession-errors ?
Bain


1
Funziona! Ciò ha risolto il problema e la scansione ora funziona. Pubblica la risposta se vuoi la ricompensa di taglie. Una domanda: ciò influirà sulle prestazioni USB 3.0?
Dusan Milosevic,

Risposte:


19

Il dispositivo USB 2.0 (in questo caso, scanner) presenta alcuni problemi di compatibilità nell'interazione con il sistema USB 3.0 (porte USB3 o USB2 di un hub USB3). Il problema potrebbe essere causato dall'hardware / firmware dello scanner, dal firmware EFI / BIOS del PC, dal chipset USB del PC o dal driver xhci_hcd del kernel Linux.

Possibili soluzioni:

  • Utilizzare un cavo di prolunga USB 2 corto (o solo un cavo USB2) per collegare il dispositivo. In questo modo la porta USB 3 utilizza la segnalazione USB 2. Un dispositivo o cavo USB 3 ha 9 pin, mentre un dispositivo o cavo USB 2 ha solo 4 pin. Una porta USB 3 imposterà automaticamente la comunicazione di segnalazione USB 2 quando sono collegati solo 4 pin. Un cavo di prolunga USB 2 porta solo 4 fili che collegano i 4 pin delle comunicazioni solo USB 2.

  • Utilizzare un hub USB 1.1 (o 2.0) economico e collegarlo alla porta USB3. Connetti il ​​tuo dispositivo all'hub USB 1.1 / 2.0. Ciò imporrà che la connessione sia USB 1.1 / 2.0. Poiché l'hub ha un controller USB diverso, risolverà alcuni bug del protocollo. Un hub USB 1.1 è una buona scelta per un dispositivo "a bassa velocità" come un mouse, una tastiera, ecc. Un hub USB 2.0 potrebbe essere necessario per un dispositivo "a piena velocità" come uno scanner che non eseguirà il downgrade a USB 1.1.

  • Aggiorna il BIOS del tuo PC / laptop. I produttori possono risolvere molti problemi USB con correzioni nel BIOS / EFI.

  • Collegare il dispositivo USB 2.0 (scanner) tramite una porta USB 2.0 se il laptop ne ha una. Ciò potrebbe non fare alcuna differenza se anche le tue porte USB2 sono controllate dal driver xhci_hcd (ad es. Vedi ancora new high-speed USB device number x using xhci_hcdin dmesg), nel qual caso prova ad usare un hub USB2 esterno.

  • Se si tratta di un desktop o un server piuttosto che un laptop, provare una diversa scheda controller USB PCI. Schede USB3 diverse hanno chip del controller host XHCI diversi, quindi la compatibilità con diversi hub / dispositivi USB varia.

  • Aggiorna il firmware del tuo dispositivo USB 2.0. Questo probabilmente non è possibile per uno scanner di livello consumer, ma è possibile per alcuni dispositivi USB 2.0 (ad es. Fotocamere Pro)

  • Sostituisci il tuo dispositivo USB 2.0 (scanner) con un dispositivo compatibile con USB 3.0

  • Aggiorna all'ultimo kernel mainline

  • In UEFI / BIOS modificare l'impostazione in Configurazione USB, "Modalità XHCI Pre-Boot" da abilitato a disabilitato. In alcune configurazioni del BIOS questa impostazione è nota come "Modalità XHCI".

    Le porte USB 3.0 sono controllate dal driver xhci_hcd in Linux. Quando "XHCI pre-boot mode" è abilitato, il BIOS instraderà le porte USB 3.0 al controller USBH xHCI . Quando è disabilitato, le porte USB 3.0 vengono instradate alle porte EHCI (USB 2.0). La dicitura "modalità di pre-avvio" implica che questa opzione ha effetto solo sull'ambiente precedenteviene avviato un sistema operativo completo (il testo di aiuto del BIOS associato menziona esplicitamente che questa opzione viene utilizzata per il supporto USB3 in MSDOS); tuttavia, sembra che ciò possa influire anche sull'ambiente post-boot e possa avere l'effetto di collegare le porte USB 3.0 al controller USB 2.0 anche dopo il caricamento di Linux. Lo svantaggio di questo è che tutte le porte USB 3 funzioneranno ora a velocità USB 2.

  • Disabilita il risparmio energetico USB per tutti i dispositivi con l' opzione del modulo kernel autosuspend :

    modprobe usbcore autosuspend=-1

    O se usbcore non è un modulo con questo parametro di avvio del kernel:

    usbcore.autosuspend=-1

    (in Ubuntu usbcore è integrato quindi usa il parametro di avvio del kernel)

  • Disabilita il risparmio energetico (autosuspend USB) per lo scanner (da Documentation / usb / power-management.txt .

    Quando si collega lo scanner dmesg|taile si vedrà qualcosa di simile

    usb 3-3: Product: SCX-4200 Series

    Il numero 3-3rappresenta il percorso USB del dispositivo nel formato bus-port.port.port . La directory sysfs corrispondente si trova in / sys / bus / usb / devices / 3-3 . Scrivere su di potenza / controllo qui per autosospensione disable:

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


5

Ho avuto un problema simile con il mio scanner (tutto in uno Brother MFC-j410) su Ubuntu 14.04 a 32 bit. Lo scanner ha funzionato solo dopo aver avviato XSANE per la seconda volta e quindi ha eseguito solo un'anteprima o una scansione dell'operazione. Ho provato a cambiare le porte USB in USB 2.0 senza alcun risultato. La mia scheda madre è un Asus B85M-k con un chip Intel i3 LGA1150.

Ho provato virtualbox con una versione precedente di Ubuntu in cui lo scanner funzionava sempre su un altro PC. Tuttavia, nessuna fortuna, il che mi ha reso molto sospettoso riguardo alle funzionalità USB 3. Anche la stampante mi ha dato alcuni avvertimenti, ma ha stampato.

dopo aver letto questo

Le porte USB 3.0 sono controllate dal driver xhci_hcd in Linux. Quando "XHCI pre-boot mode" è abilitato, il BIOS instraderà le porte USB 3.0 al controller xHCI USB3. Quando è disabilitato, le porte USB 3.0 vengono instradate alle porte EHCI (USB 2.0). La dicitura "modalità di pre-avvio" implica che questa opzione influisce solo sull'ambiente prima dell'avvio di un sistema operativo completo (il testo di aiuto del BIOS associato menziona esplicitamente che questa opzione viene utilizzata per il supporto USB3 in MSDOS); tuttavia, sembra che ciò possa influenzare anche l'ambiente post-boot e possa avere l'effetto di collegare le porte USB 3.0 al controller USB 2.0 anche dopo il caricamento di Linux (quindi le porte funzionano a velocità USB2).

Sono entrato nel mio BIOS e in impostazioni avanzate ho trovato e modificato l'USB 3.0 da XHCI abilitato a disabilitato e c'era un'altra impostazione per l'USB 2 (penso che fosse EHCI) da abilitato a disabilitato o viceversa, mi dispiace non don ' non ricordo. Comunque, dopo aver riavviato Ubuntu 14.04 a 32 bit, tutto ha funzionato bene.


Sì, ho fatto lo stesso, per fortuna il mio laptop Dell aveva un'opzione per disabilitare usb 3, riavviato e hey presto, lo scanner funziona bene ora (a parte il mio è un epson scansnap 1300i).
Fa il

Disabilitare XHCI ha funzionato anche per me. Grazie.
Marcel Valdez Orozco

1

Aggiornamento: dalle informazioni trovate sui risultati di Internet:

  1. I driver v 2.0.0 sono universalmente noti come bugged (in modo da applicare una patch).
  2. Lo sviluppatore della patch non continua ad aggiornarlo e ha dichiarato
    "Le versioni 2.xx dei suoi driver Linux hanno un difetto: l'utente deve eseguire i permessi di root per poter scansionare. È molto pericoloso" e suggerisce di installare la versione 3.xx."
  3. Nel sito Samsung esiste una versione 3 per Windows e OSX non per Linux
  4. Seguendo il link che dai e cercando in giro trovo un link: (forse funziona) http://www.openprinting.org/download/printdriver/debian/dists/lsb3.2/main/binary-i386/openprinting-ppds- PostScript samsung_20140331-1lsb3.2_all.deb
  5. Nello stesso percorso c'è un altro file chiamato Samsung

Anche se hai scaricato e installato la versione 2.xx e la relativa patch, non puoi aspettarti che funzioni con un kernel diverso da quello testato.

Possibili soluzioni:

  • Prova a installare il driver versione 3.xx o quelli nella directory collegata sopra.
  • Trova con quale kernel era compatibile la coppia driver + patch. Decidi se installare sul tuo computer o installarlo all'interno di una Virtual box.
  • Prova a scaricare i driver e il programma per Windows (meglio uno vecchio) e prova a installarli / eseguirli con Wine.
  • Ecco un altro tutorial su come installare quei driver (lingua straniera) diversi output per scanimage -L
    dispositivo smfp: SAMSUNG SCX-4200 Series su USB: 0 è uno SAMSUNG SCX-4200 Series su USB: 0 Scanner a superficie piana
  • Ignora le regole di sicurezza che spingono lo sviluppatore della patch a creare la patch ed eseguire il programma dello scanner non come un utente ma come root. Con il driver non patchato. Rischioso e pericoloso . Non ti ho davvero suggerito ...

In bocca al lupo


Nel frattempo non trovi una correzione in Ubuntu, potrei suggerirti questa soluzione alternativa. Tu hai detto

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

(Sono d'accordo) Quindi sul tuo computer sotto Windows sembra che lo scanner funzioni. Prova a installare Windows e i driver in un'immagine Virtualbox. Se lo scanner funziona, non è necessario cambiare sistema ...

Se non funziona, prova a eseguire la stessa macchina virtuale sul computer di tuo fratello. Se da quelle funzioni del computer sarai sicuro che ci sia un'impostazione da qualche parte nel tuo computer che puoi provare a risolvere. In bocca al lupo.


Non ho Windows e non voglio usare la versione pirata. Potrei prendere in prestito un laptop Windows da un fritto, ma non sono un utente esperto, quindi non ho voglia di ripararlo da solo. Ecco perché ho chiesto qui.
Dusan Milosevic,

Sono d'accordo, l'ho detto. Ho capito che hai 2 sistemi operativi sul tuo laptop. A proposito, dal momento che funziona con Vuescan e Scanlite (anche se non in una modalità corretta) sono portato a supporre che questo non sia un problema delle impostazioni del BIOS. Confermo che per altri scanner-stampanti di marchi il fatto che Linux riconosca la stampante non implica che riconosca anche come scanner. Quale risultato lsusb di tuo fratello laptop ? Does dmesg darà alcuni nuovi errori quando lo scanner non riescono? (Ho risolto il problema con Epson RX690 con scanlite . Funziona ma sudo sane-find-scannerrisponde con lo stesso output).
Hastur,

@Dusan Milosevic: risposta aggiornata
Hastur

Trido tutti i driver su quel sito e nessuno funziona. Grazie!
Dusan Milosevic,

Ti suggerisco davvero di installare VirtualBox e creare una o due macchine virtuali: nella macchina virtuale il rischio di eseguire un programma come root è relativo solo alla macchina virtuale, quindi puoi accettarlo. Inoltre, se fallisce, puoi sempre installare un vecchio kernel Linux + driver + patch ...
Hastur

1

Prova a collegare lo scanner tramite una USB alimentata. È possibile che il tuo computer non stia fornendo energia sufficiente alla porta USB.

Per chiunque abbia questo problema, assicurarsi di aggiungere un hub USB alimentato. Ha risolto il problema in molte occasioni con computer che avevano problemi con dispositivi che funzionavano su altri computer.

Questo ha funzionato con pen drive non funzionanti sul mio computer principale e sui computer dei clienti. Ha anche risolto i problemi con le unità USB esterne che si guastano su alcune porte USB in cui funzionavano altri dispositivi.

Ho anche avuto occasioni in cui gli adattatori per cavi Y hanno funzionato come la stessa risoluzione.

Spero che questo chiarimento salverà gli altri che hanno problemi simili.

Non so se il problema del PO sia stato risolto in questo momento. Ma le differenze tra il suo computer e gli altri computer che ha descritto ha tutto esatto tra cui la stessa versione e aggiornamento, l'USB è un chiaro fattore in questo caso, che potrebbe essere risolto con un hub alimentato o un adattatore USB con cavo a Y.


E come farlo?
Dusan Milosevic

Acquista un hub USB che accetta un alimentatore. Immagine di esempio: image.apollo3.com/image/gen/poweredusbadapter140507.jpg
LD James,

È una stampante con scanner, quindi penso che abbia abbastanza potenza, quindi funziona benissimo sul laptop di mio fratello ... Ho detto che non spenderò soldi per la scansione, che funziona con qualsiasi altro computer tranne il mio! E che tipo di risposta è questa? Chiunque potrebbe dire "Acquista un nuovo laptop" e questo probabilmente risolverebbe questo problema, ma non è una risposta di qualità!
Dusan Milosevic,

2
A proposito, non sto raccomandando un laptop da $ 300,00. Sto raccomandando un hub USB da $ 7,00. È molto più economico rispetto all'acquisto di un sistema operativo Windows da $ 300,00 con altri $ 300,00 sul word processor e sugli accessori. Sto citando questo perché è nella tua domanda. Sebbene non sia un mio suggerimento, nel mio ambiente sostituisco un laptop eventualmente difettoso in modo più economico rispetto alla sostituzione del sistema operativo. Nella tua domanda dici che la tua USB funziona con tutto il resto. Ma menzionerò che per me è comune che alcuni dispositivi USB non funzionino con alcune delle mie porte USB.
LD James,

1
Vale la pena provare un altro hub USB se ne hai uno in giro. I bug del protocollo USB esposti da un programma potrebbero non apparire necessariamente con un altro, anche sullo stesso hardware.
Bagnato

1

Darò una risposta semplice senza pretendere di essere migliore.

Con alcune schede madri i vecchi scanner USB 2.0 non funzionano. Non importa se sono collegati alla porta USB 2.0 o 3.0.

Una soluzione semplice è disabilitare XHCI modein UEFI aka BIOS. È stato menzionato in altre risposte, ma non è facile da trovare.

Questo problema è stato risolto dagli sviluppatori del kernel e potrebbe essere risolto con kernel più recenti.


1

La versione 4.1.1 del kernel di Linux (disponibile su http://kernel.ubuntu.com/~kernel-ppa/mainline/ ) risolve il problema che alcuni scanner non funzionano con USB 3.0. Almeno lo fa sul mio computer.

Per essere riconosciuto come uno scanner che deve essere disponibile per utenti non root per alcuni dispositivi come una linea

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

potrebbe essere necessario in un file denominato /etc/udev/rules.d/samsung.rules o simile. L'ID fornitore e prodotto può essere letto dal comando

lsusb

nella seguente riga:

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

il dispositivo (in questo caso non uno scanner ma un hub USB, ma al momento non disponeva di uno scanner) ha l'ID fornitore 1d6b e l'ID prodotto 0002.


0

Una soluzione alternativa che ho trovato è stata l'installazione di una macchina virtuale (sia VirtualBox che VMWare [player] dovrebbero essere ok) con qualsiasi distribuzione Linux che desideri, l'ho configurata per essere compatibile con il protocollo USB 2.0. Una volta reindirizzato il mio dispositivo USB alla VM, posso scansionare da lì.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.