Webcam, Scanner et autres périphériques USB

Bonjour, me revoili !
J’ai une webcam et un scanner USB et j’aimerais les faire fonctionner, auriez-vous des tuyaux pour cela, voila ce que me donne la commande lsusb :

Bus 005 Device 006: ID 1058:0702 Western Digital Technologies, Inc.
Bus 005 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 003: ID 046d:c505 Logitech, Inc. Cordless Mouse+Keyboard ReceiverBus 002 Device 002: ID 1532:000c
Bus 002 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000
Bus 001 Device 005: ID 046d:08ad Logitech, Inc.
Bus 001 Device 004: ID 04a9:2204 Canon, Inc. CanoScan FB630U
Bus 001 Device 001: ID 0000:0000

J’ai insallé camstream que j’ai vu sur un topic quand j’ai fait une recherche sur webcam et j’ai essayé le programmne xsane pour l’acquisition d’images, le seul problème c’est que les deux programmes ne voient que ma carte TV Hauppauge mais pas les deux périphériques USB.
Je vais aller faire un tour chez les constructeurs pour voir…cela dit mon scan est assez ancien et généralement les constructeurs n’aiment pas les vieilles choses…
Merci d’avance.
Alain.

Pour ta webcam les drivers gspca ou spca5xx devraient faire l’affaire.

Une petite recherche google sur les vendor id et device id (046d:08ad) te donnera plus de détails.

EDIT : regarde ce que te raconte la commande dmesg quand tu la branches.

Alors je suis allé sur :
doc.ubuntu-fr.org/spca5xx
J’ai fait ce qui est indiqué, ça s’invente pas…!
et ça y est la webcam est reconnue.
Merci beaucoup antalgeek, Ta pas une idée pour le scanner ?

module-assistant est l’outil de référence debian pour compiler et installer proprement les modules externes au noyau.
Si tu tapes module-assistant en root dans une console tu vas avoir une interface dialog et tu pourras voir l’ensemble des modules proposés.

Pour ton scanner, normalement il est reconnu. Encore une fois tu peux regarder le résultat de dmesg quand tu le branches.
Une raison pour laquelle xsane ne le voit pas est peut-être que ton utilisateur n’est pas dans le groupe scanner.
Tu peux essayer la commande scanimage -L et voir ce que ça raconte.

ça dit command not found !

 :smiley:

:smiley:

alain@debian:~$ scanimage -L
device v4l:/dev/video1' is a Noname Logitech QuickCam Communicate S virtual device devicev4l:/dev/video0’ is a Noname BT878 video (Hauppauge (bt878)) virtual device

En fait, il ne voit pas le scanner qui est sur le port USB, cf plus haut.

Essaye en root ces commandes, voir si c’est un probleme de droit :

ainsi que celle proposé sur le post precedent :

tu peux aussi installer libsane-extra qui regle notamment les droits sur certains scanners pas directement reconnu par sane.

Rien n’y fait, impossible de voir le scanner !

Bon essaie de brancher ton scanner sur un port qui n’est pas sur le même concentrateur que ta webcam et envoie la sortie de dmesg (les dernières lignes) et éventuellement les dernières lignes de kern.log.

voila pour le dmesg :
usb 2-2: USB disconnect, address 3
usb 1-1: USB disconnect, address 4
usb 2-2: new full speed USB device using uhci_hcd and address 4
usb 2-2: configuration #1 chosen from 1 choice
usb 1-1: new low speed USB device using uhci_hcd and address 6
usb 1-1: configuration #1 chosen from 1 choice
input: Logitech USB Receiver as /class/input/input5
input: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:1d.0-1
input: Logitech USB Receiver as /class/input/input6
input: USB HID v1.10 Mouse [Logitech USB Receiver] on usb-0000:00:1d.0-1
usb 1-1: USB disconnect, address 6
usb 1-1: new low speed USB device using uhci_hcd and address 7
usb 1-1: configuration #1 chosen from 1 choice
input: Logitech USB Receiver as /class/input/input7
input: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:1d.0-1
input: Logitech USB Receiver as /class/input/input8
input: USB HID v1.10 Mouse [Logitech USB Receiver] on usb-0000:00:1d.0-1

et pour le tail :
ar 25 19:51:09 debian kernel: input: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:1d.0-1
Mar 25 19:51:09 debian kernel: input: Logitech USB Receiver as /class/input/input6
Mar 25 19:51:09 debian kernel: input: USB HID v1.10 Mouse [Logitech USB Receiver] on usb-0000:00:1d.0-1
Mar 25 19:51:09 debian kernel: usb 1-1: USB disconnect, address 6
Mar 25 19:51:15 debian kernel: usb 1-1: new low speed USB device using uhci_hcd and address 7
Mar 25 19:51:16 debian kernel: usb 1-1: configuration #1 chosen from 1 choice
Mar 25 19:51:16 debian kernel: input: Logitech USB Receiver as /class/input/input7
Mar 25 19:51:16 debian kernel: input: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:1d.0-1
Mar 25 19:51:16 debian kernel: input: Logitech USB Receiver as /class/input/input8
Mar 25 19:51:16 debian kernel: input: USB HID v1.10 Mouse [Logitech USB Receiver] on usb-0000:00:1d.0-1

Heu pas de trace de ton scanner dans tout ça.
En creusant un peu j’ai trouvé ça :
http://sourceforge.net/projects/canon-fb630u/
Mais manifestement ce matos est un peu sorti du fond du trou car il ne laisse pas beaucoup de traces dans les moteurs de recherche.
Sinon il y a ça :
http://www.frameip.com/nntp/fr-comp-os-linux-configuration/148693-fr-comp-os-linux-configuration-scanner-canon-usb-fb630u.htm
Tiens sinon de la doc là :
http://www.sane-project.org/sane-mfgs.html#Z-CANON

Merci Antalgeek pour ta recherche, j’étais déjà tombé sur ces pages mais vu mon niveau sous Linux, je n’ai pas tout compris. J’ai téléchargé le premier ficher, c’est une archive gz dans laquelle il y a un fichier mais je ne sais pas quoi en faire…

On dirait un fichier résultant d’un comparaison entre deux fichiers, il ya des paragraphes du type :

diff -Nuar sane-backends-1.0.7-beta2/backend/Makefile.in sane-backends-1.0.7-beta2.mod/backend/Makefile.in
— sane-backends-1.0.7-beta2/backend/Makefile.in Mon Jan 21 15:24:35 2002
+++ sane-backends-1.0.7-beta2.mod/backend/Makefile.in Fri Feb 15 17:13:46 2002

et des paragraphes de code :
une présentation :

+/*

  • © 2001,2002 Nathan Rutman nathan@gordian.com 10/17/01
  • This program is free software; you can redistribute it and/or
  • modify it under the terms of the GNU General Public License as
  • published by the Free Software Foundation; either version 2 of the
  • License, or (at your option) any later version.
  • This program is distributed in the hope that it will be useful, but
  • WITHOUT ANY WARRANTY; without even the implied warranty of
  • MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  • General Public License for more details
    …etc

et du code :

+#include <errno.h>
+#include <fcntl.h> /* open /
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h> /
usleep /
+#include <time.h>
+#include <linux/usb.h> /
for USB_ defs /
+#include “lm9830.h”
+
+
+/
Assign status and verify a good return code */
+#define CHK(A) {if( (status = A) != SANE_STATUS_GOOD ) { \

  •             DBG( 1, "Failure on line of %s: %d\n", __FILE__, \
    
  •                  __LINE__ ); return A; }}
    

+typedef SANE_Byte byte;
+
+
+/*****************************************************

  •        GL640 communication primitives
    
  • Provides I/O routines to Genesys Logic GL640USB USB-IEEE1284 parallel
  • port bridge. Used in HP3300c, Canon FB630u.
    +******************************************************/

+/* Register codes for the bridge. These are NOT the registers for the

  • scanner chip on the other side of the bridge. */
    +typedef enum
    +{
  • GL640_BULK_SETUP = 0x82,
  • GL640_EPP_ADDR = 0x83,
  • GL640_EPP_DATA_READ = 0x84,
  • GL640_EPP_DATA_WRITE = 0x85,
  • GL640_SPP_STATUS = 0x86,
  • GL640_SPP_CONTROL = 0x87,
  • GL640_SPP_DATA = 0x88,
  • GL640_GPIO_OE = 0x89,
  • GL640_GPIO_READ = 0x8a,
  • GL640_GPIO_WRITE = 0x8b
    +}
    +GL640_Request;

+/* Write to the usb-parallel port bridge. */
+static SANE_Status
+gl640WriteControl (int fd, GL640_Request req, byte * data, unsigned int size)
+{

  • SANE_Status status;
  • status = sanei_usb_control_msg (fd,
  •   		  /* rqttype */ USB_TYPE_VENDOR |
    
  •   		  USB_RECIP_DEVICE | USB_DIR_OUT /*0x40? */ ,
    
  •   		  /* rqt */ (size > 1) ? 0x04 : 0x0C,
    
  •   		  /* val */ (SANE_Int) req,
    
  •   		  /* ind */ 0,
    
  •   		  /* len */ size,
    
  •   		  /* dat */ data);
    
  • if (status != SANE_STATUS_GOOD)
  • DBG (1, “gl640WriteControl error\n”);
  • return status;
    +}

…etc

voili, voila, j’en fais quoi de cette chose ??