TTGO LoRa OLED: nach Boardupdate keine Funktion mehr

Hallo,
ich hoffe ich bin hier richtig:
Ich arbeite mit dem folgenden Board:
LILYGO® TTGO ESP32-Paxcounter LoRa32 V2.1 1.6 - bisher ohne Probleme.
Gestern musste ich dann ein Update einiger Boards in der Arduino IDE vornehmen (nicht wegen dem TTGO).
Abends ging es dann mit dem TTGO weiter, nach Upload eines Sketches vollführte das TTGO nur noch Bootloops. Auch frühere lauffähige Sketches führten zu Bootloops.
Im Serial Monitor ist folgendes erkennbar:
assert failed: i2c_ll_set_bus_timing i2c_ll.h:109 (scl_high > 13)
Sucht man nach dieser Fehlermeldung im Netz, gibt es 2 Treffer, noch relativ junge Einträge, z.B. den: I2C - Wire Library crashing when setting clock frequency > 142857 Hz · Issue #8772 · espressif/arduino-esp32 · GitHub
Und obwohl ich auch schon paar Jahre mit Arduino IDE arbeite, mich durch Foren lese (auch in Englisch) - verstehe ich nur Bahnhof was es mit dem Fix dieses Fehlers auf sich hat:

  • muss ich selbst wire.h ändern?
  • gibt es irgendwann über Board oder lib-Updates einen Fix
  • gibt es gar kein Problem - liegt es an meiner Hard- und Softwarekombi?
    (im Sinne von: lösch man Arduino iDE, pack sie neu drauf und schau was passiert)
    Vielen Dank für Eure Hilfe!
    Gruß
    Ralf

Wieso musstest du ?
Es zwingt dich keiner.
Und Ja, der Fehler liegt in Zeile 42.

du könntest ja mal einfach probieren, einen älteren ESP32 core aufzuspielen.

Hallo,

wegen Wire musst du nichts machen, solange du nicht selbst einen höheren I2C Takt als 100kHz irgendwo eingestellt hast. Default sollten eigentlich auch beim ESP 100kHz sein. Ansonsten wie von dir verlinkt gezeigt an der Stelle 100kHz einstellen.

// setup
Wire.begin();
Wire.setClock(100000);

Oder lade mal einen einfachen Blinksketch drauf. Haste dann immer noch den Bootloop?

Hallo HotSystems,
sich habe noch eine größere Displayeinheit mit integriertem ESP32 inbetriebgenommen (nicht von TTGO). Und das ging anfangs nicht. Also habe ich von vorn angefangen, Manual, Boardverwalter, esp32 by Espressif Systems und sehe, dass noch Version 1.? installiert ist. Okay, also erst das esp32 by Espressif Systems Paket aktualisiert auf 3.0.0 alpha irgendwas.
Das große Display lief dann. Inwiefern das jetzt die Ursache ist für die Probleme mit dem TTGO weiß ich nicht. Ich frage mich auch warum sich die Boards nicht automatisch aktualisieren. Die Bibliotheken tun es ja auch in der IDE.
Aber das ist eine andere Geschichte. Und hätte ich gewusst dass nach dem Update dass dass TTGO nicht mehr funzt, hätte ich das sein lassen mit dem Update.
Passiert ist passiert - und jetzt möchte ich dass es wieder geht - 30€ für eine nicht funktionierendes Board ist ärgerlich.
Soweit so denn.

Hallo,
der Bootloop ist noch da - es ist ja auch noch nichts passiert.
Also das Display von TTGO wird mit nicht mit "Wire.begin();" gestartet sondern mit
display.init - hinter dieser Routine verstecken sich wahrscheinlich mehrere Befehle zum Initiieren des Displays, auch wire.begin. Nur liegt der Befehl in irgendeiner anderen Bibliothek. Der Workaround Wire.setClock(100000); wird bestimmt funktionieren wenn ich weiß wo wo wire.begin aufgerufen wird. Aber nachhaltig ist das nicht. Und laut GitHub gibt es ja einen Fix dafür - nur wo steckt der?
Trotzdem ein Dankeschön für Eure Antworten.

Eine ALPHA-Version ist dafür gedacht, dass interessierte (fachkundige) User diese Version testen, um Fehler zu finden. Sie ist keinesfalls für einen produktiven Einsatz gedacht.

Da bleibt nur ein kompletter Rückbau. Version deinstallieren, IDE neu starten, ältere Version installieren.

Gruß Tommy

Hallo Zusammen,
das war ein guter Tipp, ich habe jetzt im Boardmanager ein Downgrade der Lib-Sammlung
esp32 by Espressif Systems von 3.0.0-alpha2 auf 2.0.14 vorgenommen.
Das Display läuft jetzt wieder, kein Bootloop - Fall erledigt.
Nochmal vielen Dank für Eure schnelle Hilfe!

Schön, dass es funktioniert hat.

Gruß Tommy

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.