mit vieler Mühe und freundlicher Beihilfe aus dem Forum hier ist es mir schließlich gelungen, zunächst ein Beispielsketch vollständig zu kompilieren und auf einen ESP32 WROOM 32 hochzuladen.
Daß der Sketch erfolgreich hochgeladen war, entnehme ich dem Ausdruck am Ende der Arduino-IDE-Ausgabe:
1
Leaving...
2
HardresettingviaRTSpin...
Nun hatte ich erwartet, daß der Sketch so abläuft, wie er soll. Aber das geschah keineswegs, vielmehr lief unentwegt der nachfolgende Text über den seriellen Monitor:
Man konnte ihn mit der Resettaste anhalten, aber er lief nach Loslassen sofort weiter. Lediglich mit der Boottaste blieb er stehen und es wurde die Bereitschaft zu neuen Download angezeigt.
Wie kann ich denn das Teil dazu bringen, nun endlich den Sketch auszuführen?
Aber das geschah keineswegs, vielmehr lief unentwegt der nachfolgende
Text über den seriellen Monitor:
Das sind die Startupmeldungen.
Wenn sich die wiederholen ist das normalerweise ein Zeichen dafür dass der Core neu startet/resettet.
Gründe dafür gibt es einige.
Von defektem Code bis zum zuschlagen des Watchdog oder ähnlichem.
Deshalb steht da normalerweise auch der reset Grund mit dran.
Zeig also Mal mehr von der Ausgabe. Also über mehrere Wiederholungen hinweg.
Lediglich mit der Boottaste blieb er stehen und es wurde die
Bereitschaft zu neuen Download angezeigt.
Klar, dann springt der Controller in den Boot Mode und führt nicht dein Programm aus.
Das wäre dann eher ein Zeichen dafür dass es an deinem hineingeladenen Programm liegt und z.B. nicht an Störungen oder einer schlechten Versorgungsspannung.
Deshalb steht da normalerweise auch der reset Grund mit dran.
tut er doch :
rst:0x10 (RTCWDT_RTC_RESET)
Der Watchdog-Timer des Bootloaders hat zugeschlagen, er konnte in der vorgegebenen Zeit keinen Programmcode ausführen.
Das kann verschiedenste Gründe haben, Code nicht ausführbar, instabile Spannungsversorgung, Flash falsch patitioniert, falsche Einstellungen zum Flash, kein Flash vorhanden ....
Das kann verschiedenste Gründe haben, Code nicht ausführbar, instabile
Spannungsversorgung, Flash falsch patitioniert, falsche Einstellungen
zum Flash, kein Flash vorhanden ....
Oder einfach mal einen Beispielcode hochladen, von dem man weiss, dass er funktioniert. Tut er das, muss man seinen eigenen Code nochmal genauer ansehen. Die gröbsten Fehler zeigt dir die Arduino IDE ja schon beim überprüfen.
Vielleicht ist das Teil wirklich defekt; ich habe einen ESP32 WROVER angeschlossen (allerdings mit anderem USB-Kabel (3.0)), da funktionier Dein Sketch.
Ich habe die kurze Programmsequenz von Stefan ausprobiert. Die ist doch sicher so einfach, daß es auf WROVER und auch auf WROOM laufen sollte. Bei mir läuft sie auf WROVER, aber nicht auf dem WROOM.
Was die Stromversorgung angeht, die erfolgt auf dem WROVER mit USB 3.0 und die auf dem WROOM mit verschiedenen Mikro-USB-Kabeln, die alle zur Speisung von Leonardo eingesetzt sind und dort keine Probleme bereiten.
Ich habe neue WROOM's von AZ-Delivery bestellt, mal sehen, ob es da besser geht
Bei mir läuft sie auf WROVER, aber nicht auf dem WROOM.
Was hast du denn in deinen Compiler-Einstellungen drinne ? Bei arduino kann man ja afaik auch irgendwie auswählen welches board man hat und wenn er anfängt einen nicht vorhandenen psram zu suchen ist es kein wunder wenn er ned will...
Was hast du denn in deinen Compiler-Einstellungen drinne ? Bei arduino
kann man ja afaik auch irgendwie auswählen welches board man hat
Das ist doch das Allererste, was man tut.
Ich habe übrigens alle möglichen USB-Kabel und auch andere USB-Stecker am PC ausprobiert. Üblicherweise benutze ich einen Hub mit eigener Stromversorgung.
Die Kabel benutze ich auch für Arduinos verschiedener Typen als alleinige Stromversorgung.
Hat bei dem WROOM alles nichts gebracht. Was mich aber wundert, ist das ungewöhliche Verhalten der LED: wenn man die USB-Verbindung herstellt, blinkt die LED, wo man doch ein rotes Dauerlicht erwartet.
Also doch ein Schaden?
Warum sollte das Board defekt sein?
Ich habe noch nie ein defektes Board oder einen defekten Mikrocontroller
gehabt.
du Glücklicher, ich habe schon öfter aus China defektes -> LCD Nokia 3210 oder merkwürdiges bekommen -> wie schon mal geschrieben von 5 ESP32 wemos lolin funktionierte nur einer ab Lieferung, 4 musste ich mit 10µF an EN nach GND tunen.
MaWin O hatte recht (natürlich abgesehen von der Aussage über nie defekte MCU's) und die anderen, die an der USB-Verbindung zweifelten, auch: es lag an der Stromversorgung, die allein durch den USB-Anschluß nicht gewährleistet ist. Ich habe an den 3,3-V-Pin ca 3,3 V angelegt und nun funktioniert es; es laufen nicht mehr ununterbrochen die Statusmeldungen über den seriellen Monitor, jetzt wird das angezeigt, was das Programm vorgibt.
natürlich abgesehen von der Aussage über nie
defekte MCU's
Weil deine MCU nicht defekt ist, schlussfolgerst du das nun?
Interessant.
Ich bleibe dabei: Wenn man MCUs nicht durch massive Überspannung misshandelt oder mutwillig per Fuse totflasht, sterben sie nie.
Die kaputte MCU bei Fehlverhalten ist das Hardwareäquivalent zum kaputten Compiler bei Fehlverhalten. Es passiert praktisch gesehen so selten, dass man es praktisch direkt ausschließen kann.
Weil deine MCU nicht defekt ist, schlussfolgerst du das nun?
Interessant.
Ja.
Ich habe heute die bestellten ESP32 WROOM 32 erhalten, genau wie gehabt. Einen davon habe ich probeweise ebenso betrieben, wie den besprochenen aus diesem Thread, nämlich mit dem gleichen USB-Kabel am gleichen Port mit dem gleichen Programm.
Wenn Du recht hättest, sollten wieder pausenlos die bekannten Statusmeldungen über den seriellen Schirm laufen und auf unentwegte Resets hindeuten. So ist es aber nicht. Das Teil liefert auf Anhieb genau das, was das Programm vorschreibt.
Meine erste MCU hatte also doch einen Schaden, einen kleinen zwar, der sich mit etwas externem Strom beheben ließ, aber immerhin. Im Manual steht davon nichts. Man sollte nicht immer alles auf den unbedarften Nutzer schieben.
Meine erste MCU hatte also doch einen Schaden, einen kleinen zwar, der
sich mit etwas externem Strom beheben ließ, aber immerhin.
Die Schlussfolgerung ist höchstwahrscheinlich falsch.
Ohne die extra Stromversorgung betreibst du die Module wahrscheinlich außerhalb ihrer Spezifikation. Ob und wie lange sie so funktionieren, ist reine Glückssache. Da können sonst harmlose Material-Streuungen und Temperatur-Schwankungen plötzlich einen großen Effekt haben-
Bei den ESP Chips ist eine potente stabile Stromversorgung das allerwichtigste. Ich behaupte, dass mehr als 90% aller Fehlfunktionen von mangelhafter Stromversorgung her kommen.
Im Manual steht davon nichts
Du meinst wohl das Referenzhandbuch und die Application Notes. Dort gibt es klare Angaben zur Stromversorgung. Bei deinem USB Kabel kommen mehrere Faktoren zusammen, die in Summe zu einer zu instabilen Stromversorgung führen können. Deswegen haben externe Festplatten (die via USB versorgt werden) ein sehr kurzes sehr dickes Anschlusskabel.