www.mikrocontroller.net

Forum: PC-Programmierung USB LEDS mit ATMega8 unter Linux -"Could not find USB Device


Autor: Felix Adamczyk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,
für AVRs gibt es Firmware die den Controller um eine USB Schnittstelle 
erweitern. Ich habe folgendes Projekt nachgebaut:
http://www.schatenseite.de/usb-led-fader_en.html

Sobald ich die Schaltung an den USB Port anschließe, machen die LEDs den 
Interaction Test. Wenn ich jedoch mit dem PC die Schaltung steuern will, 
gibt das Programm die folgende Fehlermeldung:
"Could not find USB device "USB-LED-Fader" with vid=0x16c0 pid=0x5dc"

Der C Code der dies erzeugt müsste der folgende sein:

int main(int argc, char **argv)
{
    usb_dev_handle *handle = NULL;

    if (argc < 2) {
        usage(argv[0]);
        exit(1);
    }
    usb_init();
    if (usbOpenDevice (&handle, USBDEV_SHARED_VENDOR, 
"www.schatenseite.de", USBDEV_SHARED_PRODUCT, "USB-LED-Fader") != 0) {
        fprintf(stderr, "Could not find USB device \"USB-LED-Fader\" 
with vid=0x%x pid=0x%x\n", USBDEV_SHARED_VENDOR, USBDEV_SHARED_PRODUCT);
        exit(1);
    }




Weiß jemand wie ich dieses Problem lösen kann?

Vielen Dank.

Felix

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei der Fehlersuche ist erstmal "lsusb" nützlich, damit kannst du 
nachschauen, ob das Device überhaupt richtig angemeldet wird, und dir 
den Device-Descriptor ausgeben lassen.

Wenn das alles passt, die Berechtigungen an der device-node überprüfen, 
mit lsusb Bus/Device-Nr nachschauen, und dann

mit chmod a+rw /proc/bus/usb/<bus-nr>/<device-nr> (bei neuerem linux 
/dev/bus/usb/ ...)
erstmal für alle beschreibbar machen

/Ernst

Autor: Rupplyn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Steht doch dar. Das Gerät wird nicht gefunden!

wird das gerät im gerätemanager richtig angezeigt? (wurde glaub ich als 
hid-device realisiert...)

-> nein: Initialisierung schlägt fehl: Hardware richtig aufgebaut? 
Firmware richtig angepasst?

-> ja: Hast du die vielleicht VenorID/ProductID oder ähnliches geändert? 
dann würde der client natürlich nach dem falschen device suchen...


die firmware wurde mit libs von obdev entwickelt. der client dürfte über 
libsub realsiert sein...
Vielleicht findest ja auch dort noch infos...

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rupplyn wrote:
> Steht doch dar. Das Gerät wird nicht gefunden!

Ja, das Steuer-Program findets nicht, aber ob Linux das Device überhaupt 
findet wär interressant.

> wird das gerät im gerätemanager richtig angezeigt? (wurde glaub ich als
> hid-device realisiert...)

Genau das meinte ich mit "lsusb", das zeigt die angeschlossenen 
USB-Geräte an. Einen generischen, bei allen Linux-Distributionen 
vorhandenen "Gerätemanager" kenn ich nicht ;)

Ein HID-Device wirds wohl nicht sein, sonst könnte man nicht mehr ohne 
weiteres mit libusb darauf zugreifen (der kernel-HID Driver würde sich 
das device "wegschnappen")

Ansonsten steht im "dmesg" output meist auch hilfreiches über 
USB-Fehler, z.B. "Timeout on EP0" etc. Beim Debuggen recht hilfreich.


/Ernst

Autor: Rupplyn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
AH ok, das kommt davon wenn man den betreff nicht genau liest...

hey, hast recht mit der libusb... trotz deiner logisch erklärung hab 
ichs grad ausprobiert-> funktioniert nicht...

wieder was gelernt ;-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.