USB LEDS mit ATMega8 unter Linux -"Could not find USB Device

Gast #431847
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
#432829
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
Gast #432830
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...
#432832
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
Gast #432961
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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren