web-dev-qa-db-fra.com

Le périphérique USB 2.0 (scanner) ne fonctionne pas avec xhci_hcd sur le système USB 3.0

J'essaie de numériser avec samsung scx-4200 , qui est une imprimante avec scanner. Lorsque je connecte l'ordinateur portable de mon frère qui a la même version d'ubuntu (14.04), cela fonctionne. Je ne sais pas comment et pourquoi. Il n'a pas installé de logiciel pour la numérisation. J'ai aussi essayé un autre ordinateur avec os élémentaire, et ça marche aussi. Maintenant, voici quand ça devient vraiment bizarre! J'ai essayé d'exécuter de nombreuses distributions sous forme de clés USB en direct sur le portable de mon frère et celui de mon frère. Le scanner fonctionne toujours avec le portable de mon frère et jamais avec celui-ci. J'ai besoin de beaucoup de scanner et il se peut que, de ce fait, je passe peut-être à Windows, ce que je n'aime pas parce que ce n'est pas open-source, alors aidez-moi! Voici les captures d'écran de l'erreur que je reçois et les paramètres de numérisation simple.

enter image description hereenter image description here

Edit1: La clé USB fonctionne correctement avec tout autre périphérique. Jusqu'à présent, j'ai connecté souris, mémoire flash USB, appareil photo et tout fonctionne correctement. J'ai essayé de connecter le scanner aux 3 ports USB (2 3.0 et 1 2.0) et la même chose se produit.

Edit2: La numérisation fonctionne avec le programme vuescan, mais il faut l'acheter pour supprimer le filigrane qu'il crée et sa source fermée.

Edit3: De tous les ordinateurs portables testés, seul le mien possède une clé USB 3.0 (x2). Cependant, la numérisation ne fonctionne pas non plus sur USB 2.0 (sur mon ordinateur portable).

Edit4: Voici le résultat de Sudo sane-find-scanner:

# sane-find-scanner va maintenant tenter de détecter votre scanner. Si le résultat # diffère de ce que vous attendiez, assurez-vous d'abord que votre # scanner est sous tension et correctement connecté à votre ordinateur.

# Aucun scanneur SCSI trouvé. Si vous vous attendiez à quelque chose de différent, assurez-vous que # vous avez chargé un pilote SCSI du noyau pour votre adaptateur SCSI.

# Aucun scanneur USB trouvé. # Si vous vous attendiez à quelque chose de différent, assurez-vous que # vous avez chargé un pilote de noyau pour votre contrôleur hôte USB et que vous # avez configuré correctement le système USB. Voir man sane-usb pour plus de détails.

# Ne vérifie pas les scanners de ports parallèles.

# La plupart des scanners connectés au port parallèle ou à d'autres ports propriétaires # ne peuvent pas être détectés par ce programme.

Edit5: J'ai essayé toutes les combinaisons de paramètres du BIOS liés à la configuration USB, sans résultat. Je suis revenu aux réglages d'origine.

Edit6: J'ai essayé scanlite, voici l'erreur que ça me donne:

enter image description here

Edit7: La deuxième fois que j'ai utilisé Scanlite, il est écrit que le logiciel ne détecte pas les scanners sur mon ordinateur. Je reçois parfois un message simillar lors d'une analyse simple.

Edit8: Le scanner fonctionne avec une numérisation simple après avoir effectué les opérations suivantes:

  1. Ouvrir les paramètres du système
  2. En cliquant sur les imprimantes
  3. Clic droit sur mon imprimante (scx-4200) -> Propriétés
  4. Niveaux d'encre/toner
  5. En cliquant sur Actualiser
  6. Ouverture d'un scan simple
  7. Cliquer sur scan
  8. Attendre environ 10 à 20 secondes jusqu'à ce que le message d'erreur apparaisse (comme sur la capture d'écran fournie)
  9. Cliquer à nouveau sur scan

Et ce n'est que pour 1 scan.

Edit9: Mon frère et moi avons tous les deux 64 bits. L'ordinateur portable de mon frère est HP, et le mien est Asus. Le mien a plus d'options dans le BIOS. J'ai 2 USB 3.0 et un 2.0, alors que mon frère a 3 x 2.0. Voilà quelques différences ... Voici le résultat de uname -a pour mon ordinateur portable:

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

Et voici mon frère:

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

Edit10: Mon ordinateur portable était fraîchement installé, mon frère a été mis à jour. La même chose s’est produite lorsque les deux ordinateurs portaient une nouvelle installation 13.10

Edit11: Voici ma sortie de 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

Et voici mon frère:

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: Le propriétaire de/dev/bus/usb/* est root. Voici un résultat de 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

Il trouve Printer (scx4200), donc je suppose que c'est aussi un scanner, puisqu'il s'agit d'une imprimante et d'un scanner (imprimante multifonction).

Voici la dernière partie de /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

Et voici la dernière sortie de /var/log/kern.log , ici , il montre une sorte d'interférence de conducteur :

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

Dans ~/.xsession-errors il n'y a pas d'erreur, je pense:

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: En analysant les erreurs dans /var/log/kern.log , j'ai découvert que cette ligne d'erreur est sortie dans kern.log lorsque je reçois erreur aucun scanner trouvé:

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

Et j'obtiens cette erreur quand "Echec de l'analyse" (comme sur la capture d'écran):

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: J'ai compris qu'avec le pilote Samsung Universal Linux que j'ai installé via ce lien , l'impression ne fonctionne pas. Je l'ai désinstallé et les pilotes installés via la fonction d'ajout d'imprimante dans les paramètres système -> Imprimantes. Cependant, à présent, la numérisation ne fonctionne pas, même avec les étapes de edit8, qui fonctionnaient auparavant, mais maintenant, l'impression fonctionne. Cependant, la numérisation avec vues peut toujours fonctionner.

Edit15: Voici le résultat de grep 341b /etc/sane.d/xerox_mfp.conf:

usb 0x04e8 0x341b

Et sortie 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.

Voici le résultat de ldd $ (which 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: voici dll.conf .

Edit17: Voici log.txt , le résultat de Sudo strace sane-find-scanner .

Edit18: Voici le résultat de scanimage -L , il en va de même pour le mien et le portable de mon frère:

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

Votre périphérique USB 2.0 (dans ce cas, le scanner) a des problèmes de compatibilité lors de l’interaction avec votre système USB 3.0 (ports USB3 ou ports USB2 d’un concentrateur USB3). Le problème peut être dû au matériel/au micrologiciel du scanner, au micrologiciel EFI/BIOS de PC, au chipset USB de PC ou au pilote xhci_hcd du noyau Linux.

Solutions possibles:

  • Utilisez un câble d'extension USB 2 court (ou simplement un câble USB2) pour connecter le périphérique. Cela oblige le port USB 3 à utiliser la signalisation USB 2. Un périphérique ou un câble USB 3 a 9 broches, alors qu'un périphérique ou un câble USB 2 n'en a que 4. Un port USB 3 utilise par défaut la communication de signalisation USB 2 lorsque seules 4 broches sont connectées. Un câble d'extension USB 2 ne contient que 4 fils qui relient les 4 broches des communications USB 2 uniquement.

  • Utilisez un concentrateur USB 1.1 (ou 2.0) bon marché et connectez-le au port USB3. Connectez votre appareil au concentrateur USB 1.1/2.0. Cela forcera la connexion à être USB1.1/2.0. Étant donné que le concentrateur a un contrôleur USB différent, il résoudra certains problèmes de protocole. Un concentrateur USB 1.1 est un bon choix pour un périphérique "basse vitesse" comme une souris, un clavier, etc. Un concentrateur USB 2.0 peut s'avérer nécessaire pour un périphérique "à pleine vitesse" tel qu'un scanner qui ne rétrogradera pas en USB 1.1.

  • Mettez à niveau le BIOS de votre PC/ordinateur portable. Les fabricants peuvent contourner de nombreux problèmes USB avec des correctifs dans le BIOS/EFI.

  • Connectez le périphérique USB 2.0 (scanner) via un port USB 2.0 si l'ordinateur portable en est équipé. Cela ne fera aucune différence si vos ports USB2 sont également contrôlés par le pilote xhci_hcd (c.-à-d. Que vous voyez toujours new high-speed USB device number x using xhci_hcd dans dmesg), auquel cas essayez d'utiliser un hub USB2 externe.

  • S'il s'agit d'un ordinateur de bureau ou d'un serveur plutôt que d'un ordinateur portable, essayez une autre carte contrôleur USB PCI. Différentes cartes USB3 ont différentes puces de contrôleur hôte XHCI, la compatibilité avec différents concentrateurs/périphériques USB varie donc.

  • Mettez à niveau le micrologiciel de votre périphérique USB 2.0. Ce n'est probablement pas possible pour un scanner grand public, mais pour certains périphériques USB 2.0 (par exemple, les caméras Pro)

  • Remplacez votre périphérique USB 2.0 (scanner) par un périphérique compatible USB 3.0

  • Mise à niveau vers le dernier noyau principal

  • Dans l'UEFI/BIOS modifiez le paramètre sous configuration USB, "Mode de préamorçage XHCI" activé à désactivé. Dans certaines configurations du BIOS, ce paramètre est appelé "mode XHCI".

    Les ports USB 3.0 sont contrôlés par le pilote xhci_hcd sous Linux. Lorsque le "mode de préamorçage XHCI" est activé, le BIOS route les ports USB 3.0 vers l'USB3 contrôleur xHCI . Lorsqu'il est désactivé, les ports USB 3.0 sont routés vers les ports EHCI (USB 2.0). La formulation "mode de préamorçage" implique que cette option affecte uniquement l'environnement avant un système d'exploitation complet est démarré (le texte d'aide du BIOS associé indique explicitement que cette option est utilisée pour la prise en charge USB3 dans MSDOS); Cependant, il semble que cela puisse également affecter l'environnement post-démarrage et avoir pour effet de connecter les ports USB 3.0 au contrôleur USB 2.0 même après le chargement de Linux. L'inconvénient est que tous les ports USB 3 fonctionneront désormais à la vitesse USB 2.

  • Désactiver la sauvegarde USB pour tous les périphériques dotés de l'option de module de noyau autosuspend :

    modprobe usbcore autosuspend=-1

    Ou si usbcore n'est pas un module avec ce paramètre de démarrage du noyau:

    usbcore.autosuspend=-1

    (Dans Ubuntu, usbcore est intégré, utilisez donc le paramètre de démarrage du noyau)

  • Désactiver la sauvegarde (USB autosuspend) pour le scanner (à partir de Documentation/usb/power-management.txt .

    Lorsque vous branchez le scanner dans chèque dmesg|tail et vous verrez quelque chose comme

    usb 3-3: Product: SCX-4200 Series

    Le numéro 3-3 représente le chemin USB du périphérique au format bus-port.port.port . Vous trouverez le répertoire sysfs correspondant dans /sys/bus/usb/devices/3-3 . Ecrivez sur pour alimentation/contrôle ici pour désactiver la suspension automatique:

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

19
bain

J'ai eu un problème similaire avec mon scanner (tout en un Brother MFC-j410) sur Ubuntu 14.04 32 bits. Le scanner n’a fonctionné qu’après le démarrage de XSANE pour la deuxième fois, puis il n’a procédé qu’à une seule prévisualisation ou numérisation. J'ai essayé de changer les ports USB à USB 2.0 en vain. Ma carte mère est une Asus B85M-k avec une puce Intel i3 LGA1150.

J'ai essayé virtualbox avec une version précédente d'Ubuntu où le scanner fonctionnait toujours sur un autre PC. Pourtant, pas de chance, ce qui m'a rendu très méfiant à propos des capacités USB 3. L’imprimeur m’a également donné des avertissements, mais a imprimé.

après avoir lu ceci

Les ports USB 3.0 sont contrôlés par le pilote xhci_hcd sous Linux. Lorsque le "mode de préamorçage XHCI" est activé, le BIOS route les ports USB 3.0 vers le contrôleur USB3 xHCI. Lorsqu'il est désactivé, les ports USB 3.0 sont routé vers les ports EHCI (USB 2.0). L’expression "mode de pré-démarrage" implique que cette option n’affecte que l’environnement avant le démarrage d’un système d’exploitation complet (le texte d’aide du BIOS associé indique explicitement que cette option est utilisée pour la prise en charge USB3 dans MSDOS), mais il semble que cela puisse également affecter l'environnement post-démarrage et avoir pour effet de connecter les ports USB 3.0 au contrôleur USB 2.0 même après le chargement de Linux (les ports fonctionnent donc à la vitesse USB2).

Je suis allé dans mon BIOS et, dans les paramètres avancés, j'ai trouvé et modifié l'USB 3.0 de XHCI activé à désactivé et il y avait un autre paramètre pour l'USB 2 (je pense que c'était EHCI) de activé à désactivé ou inversement, désolé, je ne l'ais pas. T'en souviens pas. Quoi qu’il en soit, après le redémarrage dans Ubuntu 14.04 32 bits, tout a bien fonctionné.

5

La version 4.1.1 du noyau Linux (disponible à l’adresse http://kernel.ubuntu.com/~kernel-ppa/mainline/ ) résout le problème selon lequel certains scanners ne fonctionnent pas avec USB 3.0. Au moins, il le fait sur mon ordinateur.

Pour être reconnu comme un scanner devant être disponible pour les utilisateurs non root pour certains périphériques, une ligne comme

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

peut être nécessaire dans un fichier nommé /etc/udev/rules.d/samsung.rules ou similaire. Les identifiants de fournisseur et de produit peuvent être lus par la commande

lsusb

dans la ligne suivante:

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

le périphérique (dans ce cas, pas un scanner, mais un hub USB, mais aucun scanner n'est disponible pour le moment) a l'identifiant du fournisseur 1d6b et l'identifiant du produit 0002.

1
Gunter Königsmann

Je vais donner une réponse simple ne prétendant pas être meilleur.

Avec certaines cartes mères, les anciens scanners USB 2.0 ne fonctionnent pas. Peu importe qu'ils soient connectés à un port USB 2.0 ou 3.0.

Une solution de contournement simple consiste à désactiver XHCI mode dans UEFI, également appelé BIOS. Cela a été mentionné dans d'autres réponses, mais pas facile à trouver.

Ce problème a été résolu par les développeurs du noyau et peut être résolu dans les nouveaux noyaux.

1
Pilot6

Essayez de connecter le scanner via un port USB alimenté. Il est possible que votre ordinateur n'alimente pas suffisamment le port USB.

Si vous rencontrez ce problème, assurez-vous d’ajouter un concentrateur USB alimenté. Il a souvent résolu le problème avec des ordinateurs qui rencontraient des problèmes avec des périphériques fonctionnant sur d’autres ordinateurs.

Cela a fonctionné avec les clés USB qui ont échoué sur mon ordinateur principal ainsi que sur les ordinateurs des clients. Il a également résolu les problèmes de lecteurs USB externes qui échouent sur certains ports USB sur lesquels d'autres périphériques fonctionnent.

Il est également arrivé que des adaptateurs de câble en Y servent de la même résolution.

J'espère que cette clarification sauvera d'autres personnes qui ont des problèmes similaires.

Je ne sais pas si le problème du PO est résolu pour le moment. Mais les différences entre son ordinateur et les autres ordinateurs qu’il a décrits ont tout à fait exact, y compris la même version et la même mise à jour, l’USB est un facteur évident dans ce cas, qui pourrait être résolu avec un concentrateur alimenté ou un adaptateur USB avec câble Y.

1
L. D. James

Mise à jour: à partir des informations trouvées sur les résultats Internet:

  1. Les pilotes v 2.0.0 sont universellement connus comme ayant un bug (vous devez donc appliquer un correctif).
  2. Le développeur du correctif ne continue pas pour le mettre à jour et dit
    "Les versions 2.xx de ses pilotes Linux ont un défaut: l'utilisateur doit s'exécuter avec des autorisations root pour pouvoir analyser. C'est très dangereux" et suggère d'installer la version 3.xx. "
  3. Sur le site Samsung, il existe une version 3 pour Windows et OSX pas pour Linux
  4. En suivant le lien que vous donnez et en cherchant autour, je trouve un lien: (peut-être que ça fonctionne) http://www.openprinting.org/download/printdriver/debian/dists/lsb3.2/main/binary-i386/ openprinting-ppds-postscript-samsung_20140331-1lsb3.2_all.deb
  5. Dans le même chemin, il y a un autre fichier nommé samsung

Même si vous avez téléchargé et installé la version 2.xx et le correctif relatif, vous ne pouvez pas vous attendre à ce qu'il fonctionne avec un noyau différent de celui qui a été testé.

Solutions possibles:

  • Essayez d’installer le pilote version 3.xx ou ceux du répertoire lié ci-dessus.
  • Trouvez avec quel noyau était compatible le couple driver + patch. Décidez si vous souhaitez l'installer sur votre machine ou dans une boîte virtuelle.
  • Essayez de télécharger les pilotes et le programme pour Windows (plutôt que l'ancien) et essayez de les installer/les exécuter sous wine.
  • Ici il y a un autre tutoriel sur la façon d'installer ces sorties de pilote (langue étrangère) différentes pour scanimage -L
    smfp de périphérique: SAMSUNG SCX-4200 série sur USB: 0 est un SAMSUNG SCX-4200 série sur USB: 0 Scanner à plat
  • Ignorer les règles de sécurité qui poussent le développeur du correctif à créer le correctif et à exécuter le programme de numérisation non pas comme un utilisateur, mais comme root. Avec le pilote non patché. Risqué et dangereux . Je ne vous ai pas vraiment suggéré ...

Bonne chance


En attendant, vous ne trouvez pas de solution dans Ubuntu, je pourrais vous suggérer cette solution de contournement. Tu as dit

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

(Je suis d'accord) Il semble donc que le scanner fonctionne sur votre ordinateur sous Windows. Essayez d’installer Windows et les pilotes dans une image Virtualbox. Si le scanner fonctionne, vous ne devez pas changer de système ...

Si cela ne fonctionne pas, essayez d'exécuter la même machine virtuelle sur l'ordinateur de votre frère. Si à partir de cet ordinateur fonctionne, vous serez sûr de pouvoir essayer de régler un paramètre quelque part dans votre ordinateur. Bonne chance.

1
Hastur

Une solution de contournement que j'ai trouvée consistait à configurer une machine virtuelle (VirtualBox et VMWare [player] devraient fonctionner normalement) avec n'importe quelle distribution linux, je l'ai configurée pour être compatible avec le protocole USB 2.0. Une fois que je redirige mon périphérique USB vers la VM, je peux numériser à partir de là.

0
Treviño