Leonardo + win 7 - verbindung unterbricht immer

hallo,

mein name ist mathias und ich habe mit dem mega 2560 bereits ein projekt am laufen und auch der leonardo funktionierte zunächst einwandfrei.

das problem: ich schliesse den leonardo (R3 - original, kein klon oder sowas) an den win 7 laptop und er wird normal erkannt, treiber(IDE 1.0.3) ist installiert und im fenster(eigenschaften von leonardo com 4) erscheint unten im Gerätestatus - "funktioniert einwandfrei".

die "L" - led am leonardo blinkt, die "ON" - led leuchtet.

dann nach ein paar sekunden geht dir "L" led aus - RX/TX bleiben aus und nur noch "ON" leuchtet.

im Gerätemanager verschwindet der leonardo und unter status steht "Dieses Hardwaregerät ist zurzeit nicht an den Computer angeschlossen. (Code 45) Schließen Sie dieses Gerät an den Computer an, um das Problem zu beheben."

meine Versuche das problem zu lösen: - WIN 7 alle updates installiert - treiber gelöscht und neu installiert - treiber von IDE 1.0.4 installiert - das usb kabel getestet - den usb port gewechselt - com gewechselt keine Besserung!

als ich den treiber deinstalliert hatte, habe ich festgestellt, das der leonardo auch ohne installierten treiber die verbindung abbricht.

mit dem Mega kann ich normal arbeiten.

kann es sein, das ich versehentlich code mit den IDE einstellungen vom Mega auf den Leo geschoben habe und das die ursache der probleme ist?

hat jemand einen tipp wie ich das wieder zum laufen bekomme?

gruss Mathias

Mattes: das usb kabel getestet

Das USB-Kabel WECHSELN wäre nochmal eine Alternative.

das kabel habe ich mit meinem handy getestet und funktioniert einwandfrei, so wie es am anfang auch mit dem leonardo funktioniert hat.

ein anderes kabel muss ich erst kaufen - bin dazu bereit, auch wenn ich nicht glaube das es daran liegt.

gruss mathias

Mattes: das kabel habe ich mit meinem handy getestet und funktioniert einwandfrei, so wie es am anfang auch mit dem leonardo funktioniert hat.

ein anderes kabel muss ich erst kaufen - bin dazu bereit, auch wenn ich nicht glaube das es daran liegt.

Dann erzähl doch mal, was Du auf das Board hochgeladen hast, zwischen "behält die Verbindung" und "verliert die Verbindung"!

Das Leonardo-Board kann auch eine angeschlossene USB-Tastatur emulieren und daher von Windows als Tastatur erkannt werden. Hast Du vielleicht irgendwas hochgeladen, das den Leonardo als Tastatur arbeiten läßt? Siehst Du im Windows-Gerätemanager vielleicht immer nach dem Verschwinden des seriellen Anschlusses eine zusätzliche Tastatur neu erscheinen?

kann es sein, das ich versehentlich code mit den IDE einstellungen vom Mega auf den Leo geschoben habe und das die ursache der probleme ist?

Nein. Vor dem Hochladen wird eine ID des Controlers überprüft und wenn es nicht die richtige ist wird der Uploadvorgang abgebrochen.

Grüeß Uwe

ich hatte zuletzt das dfrobot shield mit dem lcd und den tasten ausprobiert.

das hat allerdings mehrfach(tage) normal funktioniert - wurde auch nicht als tastatur erkannt, oder hat sonst irgenwie ärger gemacht.

der leonardo wird auch jetzt nicht als tastatur erkannt, sondern als leonardo - beim anschliessen ist er da, ganz normal - nach ein paar sekunden (schätze 10 sekunden) ist er wieder weg.

ziehe ich das kabel ab, verschwindet auch sonst kein gerät im gerätemanager - es kommt nicht einmal eine meldung, das ein gerät abgezogen wurde.

ich wollte schon den alten sketch löschen und mit leerer setup/loop routine überschreiben, aber das schafft man nicht, vorher ist der leonardo wieder weg.

vor den problemen gab es ein windows update - möglich das es daran lag, aber dann hätten viel mehr dieses problem. in englischen foren habe ich auch schon viel gelesen - da gibt es definitv ein problem, aber ich finde weder selbst noch mit deren hilfe eine lösung, darum hier der thread in muttersprache.

@uwe danke für die info - dachte das es vielleicht daran lag, das ich beim ändern des codes für den mega den leonardo noch dran hatte bzw. in der ide den falschen ausgewählt hatte. der sketch wäre für den leonardo auch zu gross gewesen - ist fast schon für den mega zuviel.

ich wollte auf dem leonardo meinen änderungen für den mega testen, weil der mega bereits angeschlossen(steuert 2 heizungsmischer + pumpen + 14 Sensoren) ist und im keller ist das entwickeln und testen sehr unbequem.

mir fehlt auch noch die netzwerkanbindung um die daten zu loggen, da gab es beim mega speicherprobleme - scheint ein memoryleak in der ethernet lib zu geben.

ich hab mir jetzt einen zweiten mega bestellt, geht schneller als den fehler mit dem leonardo zu finden und das projekt ist noch lange nicht fertig, also kann ich den neuen mega gut gebrauchen und bis zum einbau als test controller nehmen.

aber das mit dem leonardo ärgert mich schon. schade das der DUE nur mit 3,3v läuft.

ratlose grüsse mathias

scheint ein memoryleak in der ethernet lib zu geben.

Das glaube ich nicht, die läuft bei mir auch und das schon Monate ohne Probleme. Verwendest Du vielleicht die String-Klasse? Dort sind Memory-Leaks seit längerem bekannt.

ich wollte schon den alten sketch löschen und mit leerer setup/loop routine überschreiben, aber das schafft man nicht, vorher ist der leonardo wieder weg.

Heisst das, er verschwindet mitten in einer Upload-Session, also während der Upload noch läuft? Oder bist Du zu langsam, den Upload zu starten, bevor er weg ist?

Heisst das, er verschwindet mitten in einer Upload-Session, also während der Upload noch läuft? Oder bist Du zu langsam, den Upload zu starten, bevor er weg ist?

noch bevor ich überhaupt etwas machen kann ist er wieder weg.

stöpsel ein - wird erkannt - nach 8 sekunden isser weg. habs gerade gestoppt, sind so um die 8 sekunden nach dem ich den usbstecker eingesteckt habe.

egal ob upload oder ob ich garnichts mache.

passiert auch mit treiber und ohne treiber.

gerät wird richtig erkannt - gerät ist wieder weg - so als würde ich nach 8 sekunden das kabel wieder abziehen.

mit dem mega habe ich keine probleme und mit dem usbkabel + handy auch nicht.

die "L" -led blinkt ebenfalls - wenn der leonardo verschwindet ist auch die aus. RX + TX bleiben aus.

sonst keiner ne idee? kann das am bootloader liegen? oder an windows?

ich hab nen ubuntu rechner hier, aber noch nichts mit arduino + linux gemacht.

ich hab nen ubuntu rechner hier, aber noch nichts mit arduino + linux gemacht.

Egal, aber stöpsle den Leonardo mal dort an und schau, ob die serielle Schnittstelle auch gleich wieder verschwindet. Überprüfen kannst Du das mit folgendem Kommando (in einem Terminal):

ls -l /dev/ttyACM*

Wenn Du eine Fehlermeldung kriegst, sieht der Rechner den Leonardo nicht, ansonsten bekommst Du den Device-Node mit den Berechtigungen angezeigt.

stöpsel ein - wird erkannt - nach 8 sekunden isser weg. habs gerade gestoppt, sind so um die 8 sekunden nach dem ich den usbstecker eingesteckt habe.

8 Sekunden müssten bei weitem genügen, den Upload zu starten. Falls Du nämlich einen Sketch hochgeladen hast, der den Prozessor mit deaktivierten Interrupts in eine Endlos-Schleife schickt, könnte das ziemlich genau die von Dir beschriebenen Symptome hervorrufen. In einem solchen Fall müsste aber ein Upload sofort nach dem Erkennen auf dem Bus zum Erfolg führen (Du hast ca. 2 Sekunden).

pylon:

stöpsel ein - wird erkannt - nach 8 sekunden isser weg. habs gerade gestoppt, sind so um die 8 sekunden nach dem ich den usbstecker eingesteckt habe.

8 Sekunden müssten bei weitem genügen, den Upload zu starten. Falls Du nämlich einen Sketch hochgeladen hast, der den Prozessor mit deaktivierten Interrupts in eine Endlos-Schleife schickt, könnte das ziemlich genau die von Dir beschriebenen Symptome hervorrufen. In einem solchen Fall müsste aber ein Upload sofort nach dem Erkennen auf dem Bus zum Erfolg führen (Du hast ca. 2 Sekunden).

Die Zeiten gelten ab reset?
Müßte durch Gedrückthalten des Resettasters die Zeiten nicht verlängern und ab loslassen gelten?
Grüße Uwe

Danke für die freundliche hilfe - problem gelöst.

zunächst zum linux:
hab den befehlt ls -l /dev/ttyACM0 ← letztes Zeichen “Null” eingegeben und erst zeigte er mir etwas mit DIALOUT an - plötzlich war er wieder weg.

hab dann

8 Sekunden müssten bei weitem genügen, den Upload zu starten. Falls Du nämlich einen Sketch hochgeladen hast, der den Prozessor mit deaktivierten Interrupts in eine Endlos-Schleife schickt, könnte das ziemlich genau die von Dir beschriebenen Symptome hervorrufen. In einem solchen Fall müsste aber ein Upload sofort nach dem Erkennen auf dem Bus zum Erfolg führen (Du hast ca. 2 Sekunden).

ausprobiert und den BLINK sketch hochgeladen.

funktionierte erst nicht, leonardo war wieder weg.
hab dann wie uwe schrieb reset gedrückt - also noch bevor die ide etwas gemeldet hatte.
nun blinkt die LED auf dem leonardo vor sich hin(soll er auch) und er wird wieder im gerätemanager erkannt!

die ide hat nach dem reset gemeckert, das der com bereits benutzt wird.
hab den leonardo noch ein paar mal abgezogen und wieder drangesteckt - läuft.

die led blinkt nun auch länger als das vorher der fall war - also ich meine nicht das blinken wegen des sketches, das ist langsamer.

das mit den

Falls Du nämlich einen Sketch hochgeladen hast, der den Prozessor mit deaktivierten Interrupts in eine Endlos-Schleife schickt, könnte das ziemlich genau die von Dir beschriebenen Symptome hervorrufen.

finde ich seltsam - der sketch war nicht von mir, interupts hab ich bisher die finger von gelassen und weiss auch nicht wie ich die deaktiveren könnte.

naja erstmal hab ich wieder was zum spielen.

danke nochmal!

Schön Dir ein bißchen geholfen zu haben. Grüße Uwe

Hallo Zusammen,

ich hatte genau das gleiche Problem wie Mattes und dank Uwe's tipp hats auch bei mir geklappt.

Hier vielleicht ein paar tipps wies bei mir ging. (Windows Rechner) Da ich in der Arduino IDE die Serial Ports nur noch auf 1 einstellen konnte (Windows Kommunikationsanschluss) habe über den Geräte Manger den Kommunikationsanschluss auf 11 gelegt. Dann wie von Uwe beschrieben Board reseten und über die IDE Uploaden. Hier hats einige Versuche gebraucht und mit Uploaden und dann nach 1-2 Sekunden den Reset loslassen hats dann geklappt. Dann war das Board zumindest im Gerätemager wieder permanent zu sehen aber ließ sich nicht nicht von der IDE laden. die L Led hat dauerhaft geleuchtet und beim upload nur RX 3-4 mal geblickt. Mit Treiber aus Geräte Manger löschen und neu installieren lief dann wieder alles.

Danke nochmal an Uwe und die Info.

Gruß Bernd