Thema geschlossen
Ergebnis 1 bis 2 von 2

Thema: USB-Webcam "Chicony Electronics" (04f2:b109) und Linux - oder "unverhofft kommt oft"

  1. #1
    Administrator Avatar von Rain_Maker
    Registriert seit
    06.02.2006
    Beiträge
    5,398

    Standard USB-Webcam "Chicony Electronics" (04f2:b109) und Linux - oder "unverhofft kommt oft"

    Gestern zeigte mir einer meiner Kollegen nicht ohne (wohl begründeten, das Ding ist wirklich ein nettes Stück Hardware) Stolz sein neues Notebook auf dem sich der Pinguin in Form von Debian Testing breit gemacht hatte.

    Im Übrigen positiv zu bemerken, daß er selbiges ohne vorinstalliertes Redmond-OS kaufen konnte.

    Die meisten Komponenten liefen entweder Out of the Box (was anhand der von ihm sehr sorgfältig ausgewählten Hardware zu erwarten war) oder waren zumindest als "wird bald erledigt" (NVidia-Grafikkarte, 9600 *irgendwas*) zu kennzeichnen (NVidia-Treiber nachinstallieren und fertig).

    Nach einigem Herumspielen fiel uns beiden (kein Witz, das Ding war wirklich nicht explizit augewählt worden sondern eben "einfach so dabei") gleichzeitig dieses kleine Fensterchen im Notebookdeckel auf

    "Oh, eine Webcam, na sowas!"

    und der Spieltrieb erwachte.

    Ein beherztes lsusb ergab:

    Code:
    Bus 008 Device 003: ID 04f2:b109 Chicony Electronics Co., Ltd
    
    Die Allwissende Müllhalde meinte dazu enttäuschenderweise:

    Ergebnisse 1 - 1 von 1 für 04f2:b109. (0,12 Sekunden)
    (OK, in ein paar Stunden, nachdem die Google-Bots mal wieder über diese Forum gekrabbelt sind, werden es mindestens zwei sein).

    Kurzfassung des einen Threads: "Funktioniert nicht"

    Nachdem die erste Enttäuschung (so wichtig war ihm das Ding eh nicht, aber es ging ja um die Befriedigung des Spieltriebs) verflogen war, kam mein Kollege auf die geniale Idee mal nach Webcams des selben Herstellers zu suchen.

    Und siehe da, ein wenig weiteres "Gurgeln" ergab

    Linux UVC - Supported Devices

    daß einige Webcams des obigen Herstellers und sehr ähnlicher USB-ID mit dem Treiber "uvcvideo" betrieben werden können.

    Kernelversion war 2.6.26, ergo ist der uvcvideo selbst schon vorhanden, aber leider ergab ein

    Code:
    modinfo uvcvideo | grep -i 04f2 | grep -i 019b
    
    das erwartete Ergebnis, nämlich keine Ausgabe.

    Nun gut, einen Versuch ist es wert, warum nicht die USB-ID zur Devicelist im Quellcode hinzufügen und dann den Treiber neu kompilieren?

    Danach wird die Cam vom Treiber sicherlich "erkannt", ob sie anschliessend auch läuft wird sich zeigen.

    - Entsprechende Buildtools und Kernelheaders installiert (build-essentials und linux-headers-$(uname -r) via apt-get gezogen)

    - Neusten SVN-Snapshot von uvcvideo via SVN gezogen

    BerliOS Developer: SVN Repository

    - Quellcode gepatcht, um genaue zu sein, die entsprechende USB-ID in die Datei usb_driver.c hinzugefügt (rot markiert).

    Code:
    /* ------------------------------------------------------------------------
     * Driver initialization and cleanup
     */
    
    /*
     * The Logitech cameras listed below have their interface class set to
     * VENDOR_SPEC because they don't announce themselves as UVC devices, even
     * though they are compliant.
     */
    static struct usb_device_id uvc_ids[] = {
             /* Chicony Webcam */
             { .match_flags          = USB_DEVICE_ID_MATCH_DEVICE
                                     | USB_DEVICE_ID_MATCH_INT_INFO,
               .idVendor             = 0x04f2,
               .idProduct            = 0xb109,
               .bInterfaceClass      = USB_CLASS_VENDOR_SPEC,
               .bInterfaceSubClass   = 1,
               .bInterfaceProtocol   = 0 }, 
    - Die Datei Makefile ebenfalls angepasst, damit das Modul in ein Verzeichnis installiert wird, welches die "module-init-tools" bevorzugen und somit sicher gestellt ist, daß auch wirklich das "neugbaute" Modul geladen wird.

    Code:
    INSTALL_MOD_DIR := updates
    
    - Ein beherztes

    Code:
    make
    
    su -c "make install"
    
    su -c "modprobe uvcvideo"
    
    gefolgt von einem "Wenn das klappt dann gibts Du mir ein Bier aus"

    - Die Anwendung "cheese" gestartet und zu unser beider Erstaunen durfte mir mein Kollege ein "Biertje" ausgeben

    Konsequenz für openSUSE-Nutzer (nach dem Bierchen gleich mal die neue USB-ID als Patch eingebaut und die Buildmaschine angeworfen).

    openSUSE 11.0, kernel-default und 32 Bit

    uvcvideo-kmp-default-r251_2.6.25-SVN.rm.0.i586.rpm

    openSUSE 11.0, kernel-pae und 32 Bit

    uvcvideo-kmp-pae-r251_2.6.25-SVN.rm.0.i586.rpm

    openSUSE 11.0, kernel-default und 64 Bit

    uvcvideo-kmp-default-r251_2.6.25-SVN.rm.0.x86_64.rpm

    (thx @jkeiper für den Rebuild)

    Source-RPM

    uvcvideo-r251-SVN.rm.0.src.rpm

    Anmerkung: Die Pakete werden regelmässig aktualisiert, alles was "r251" oder höher im Namen hat, enthält den obigen Patch.

    Greetz,

    RM
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE 11.2-32Bit 2.6.31.12-desktop fluxbox 1.1.1+git/KDE 4.5.0

    openSUSE 11.2-64Bit 2.6.31.12-desktop fluxbox 1.1.1+git/KDE 4.5.0

    For Windows-Problems - Reboot / For Linux-Problems - BE ROOT!
    (==> Und hier das wirkliche "Geheimnis meines Erfolges")

  2. #2
    Administrator Avatar von Rain_Maker
    Registriert seit
    06.02.2006
    Beiträge
    5,398

    Standard AW: USB-Webcam "Chicony Electronics" (04f2:b109) und Linux - oder "unverhofft kommt o

    Nachtrag:

    Mittlerweile bin ich stolzer Besitzer des selben Notebooktyps und auch damit der selben Webcam.

    Unter openSUSE 11.1 und Kernel 2.6.27 funktioniert dieses Gerät "Out of the Box" mit dem im Kernel enthaltenen "uvcvideo"-Treiber.

    Greetz,

    RM
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE 11.2-32Bit 2.6.31.12-desktop fluxbox 1.1.1+git/KDE 4.5.0

    openSUSE 11.2-64Bit 2.6.31.12-desktop fluxbox 1.1.1+git/KDE 4.5.0

    For Windows-Problems - Reboot / For Linux-Problems - BE ROOT!
    (==> Und hier das wirkliche "Geheimnis meines Erfolges")

Thema geschlossen

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Ähnliche Themen

  1. (Erledigt) webcam in Kopete
    Von ewig im Forum SuSE Kompilieren von Software und Sourcen
    Antworten: 8
    Letzter Beitrag: 28.06.2007, 22:09
  2. (Erledigt) suse 10.0 oder 10.1 oder kubuntu?
    Von srkonus im Forum SuSE Updates
    Antworten: 2
    Letzter Beitrag: 06.06.2006, 07:29

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87