Unbekanntes USB-Gerät (Fehler beim Anfordern einer Gerätebeschreibung)

Hallo,

ich habe anscheinend ein fehlerhaftes Programm auf meinen Arduino Leonardo geladen.

Leider erkennt Windows 8.1 64-Bit das Board nicht mehr.

Beim booten ist der Port noch verfügbar, dann kommt jedoch die Meldung aus dem Betreff bei Windows hoch und der Port wird im SDK ausgegraut.

Hat jemand eine Idee, wie ich wieder ein fehlerfreies Programm auf das Board bekomme?

Gruß,
daniel

Handelt es sich hierbei um einen orginalen Arduino Leonardo? Ist ein ISP Programmer vorhanden?

Ja und Nein.

Ich hatte ein ähnliches Problem zwischenzeitig mit meinen Pro Micros (Funktionsweise identisch mit den Leonardo). Ich habe die Lösung aber nicht mehr im Kopf, konnte es aber lösen.

Tritt bei dir das auch auf, dass wenn du ihn einsteckst, dieser dann im Geräte Manager angezeigt wird (Leonardo Bootloader o.ä.)? Erst danach hat sich meiner dann als Unbekanntes Gerät zu erkennen gegeben. Lösung war unteranderem, dem Leonardo mit dem Blink Sketch direkt nach dem Einstecken zu bespielen.

Falls der COM Port (lässt sich vermutlich nicht so einstellen in der IDE) nicht passt, die Preferences.txt mit einem Editor öffnen und den COM Port ändern. Versuche das. Das muss nicht auf anhieb klappen.

Andernfalls müsstest du etwas warten, dann schau ich nachher mal, ob ich den Fehler selber noch einmal produzieren kann. Vielleicht hat in der Zwischenzeit ein anderer noch eine Idee.

Bei mir ist es genau so, wie du beschrieben hast.

Der Port ist in der Preferences.txt korrekt. Ich versuche nun schon seit geraumer Zeit den passenden Zeitpunkt zu finden, damit ich ein leeren Sketch (also nur mit setup und loop) hochladen kann. Auch mit dem Deinstallieren des "Unbekannten USB-Geräts" klappt es (noch) nicht...

Es muss doch eine Möglichkeit geben?!

EDIT: Nach unzähligen Versuchen hat es nun geklappt! Ich meine, dass es das Zusammenspiel zwischen Reset, Hochladen und Deinstallieren war...

Vielen Dank für deine Unterstützung!!!!!!!

Deinstallieren dürfe unnötig dafür gewesen sein. Auf das Timing kommt es halt an, dass der Sketch rechtzeitig drauf kommt, ehe die Verbindung wieder cancelt. Freut mich, dass dein Leonardo wieder fluppt.

Ich kenne den Grund aber nicht die Lösung.

Da der ATmega32U4 auf dem Leonardo die USB Schnittstelle verwaltet und Deinen Sketch ausführt kann es passieren wenn der Sketch den Controller blockiert daß auch die USB-Schnittstelle blockiert ist und der PC nach dem beenden des Bootloaders vom PC nicht mehr erkannt wird ( nicht mehr antwortet).

Lösungswege:

  1. mitels ISP Programmierer den Bootloader neu Draufladen. dabei wird er Sketch gelöscht. ein Arduino UNO oder MEGA kann auch als ISP Programmierer verwendet werden http://arduino.cc/en/Tutorial/ArduinoISP.
  2. Falls der COM-Port in der IDE noch eingestellt den Blink-sketch laden und auf dem Leonardo den Resetknopf halten, Upload starten und sobald nach dem Kompilieren der Upload beginnt den Resetknopf loslassen. Nach mehreren Versuchen kannst du es schaffen.

Grüße Uwe

Hallo,

erst mal 1000 Sorry, daß ich mich an das alte Thema anhänge.

Kann es sein, daß das Problem damit zusammenhängt, wenn man die Interrupts abschaltet?

Ich wollte eigentlich nur einen 312µS Takt ausgeben - Jitterfrei.

Das malt der Atmel auch - leider kann ich ihn nun nicht mehr Programmieren :frowning:

Auch der Trick mit dem Reset + Upload geht nicht. Habe ich das Ding nun geschrottet?

Es ist möglich dass ohne Interrupts die USB Schnittstelle nicht mehr geht

Die Lösung wäre Punkt 1 oben. Einen anderen Arduino als ISP verwenden:

Da ist ein extra Punkt "Wiring for Leonardo"

Oder einen anderen Arduino nehmen, der keienn ATmega32U4 hat.
Grüße Uwe