TonUINO auf dem Esp32 Nano

Ja, die nehme ich schon. Ich hatte es nur mit einer Lib darüber probiert (ElegantOTA)

Bleib ruhig bei der ElegantOTA, ich bin da jetzt momentan eh nicht mehr drann.
Ich wollte die Esp32 nur mal antesten, aber jetzt seid ihr mit OTA scho über 4MB.
Ich habe aber nur ESP32 mit 4MB. Die issue_259 lief auf alle Fälle bis zur Version vom 23.03.2025.
Wahrscheinlich kommt deshalb der Fehler bei mir…Die Arduino IDE schreibt oft andere Fehler, obwohl die Ursache wo anders liegt…könnte also am Speicherplatzproblem liegen?!

Ich steige wieder ein, wenn ich einen Arduino Nano esp32 mit 16MB habe…da braucht man nicht so mit dem Speicherplatz knausern. :wink:
Und dann steig ich evtl. auch gleich in platformio ein.

Das verstehe ich nicht. Du kannst doch die Firmware mit OTA trotzdem nehmen. Nur das OTA selber kannst du nicht ausführen mit 4MB.
Oder bekommst du mit der letzten Version immer noch Compiler Fehler? Wenn ja, welche?

Die Version vom 31.03.2025 kompiliert ohne Fehler.
In der Arduino IDE muss man die Speicherparttionierung ja angeben. Die höchste vorgegebene Speichernutzung bei App, Spiffs, und OTA ist 1,9MB für App mit OTA, 190kb für Spiffs. Ich habe das auch schon mal manuell eingestellt, ist aber schon ewig her. Da kann man evtl. den Speicher für die App noch größer stellen.
Wenn ich eine OTA Bib verwende muss ich auch OTA parttionieren.

Die Version mit OTA ist nicht mehr auf github, oder?

Ich probier dann die vom 29.03.2025 mit OTA. Ich glaube die habe ich noch.

Folgender Fehler beim Kompilieren bei installierter Bib ElegantOTA Version 3.1.7:

sketchbook2\libraries\ElegantOTA\src/ElegantOTA.h:107:10: note: no known conversion for argument 1 from ‚AsyncWebServer*‘ to ‚WebServer*‘
grpc: error while marshaling: string field contains invalid UTF-8
Compilation error: no matching function for call to ‚ElegantOTAClass::begin(AsyncWebServer*)‘

Nimm die letzte Version, da wird ElegantOTA nicht mehr verwendet und es sollte auch wieder compilieren. OTA Ist trotzdem noch drin.

Wie bereits geschrieben kompiliert die Version vom 31.03.2025 ohne Fehler und läuft perfekt.
Die WEBUI ist genial und es funktioniert alles.
OTA habe ich gefunden. Hier wird eine Passwortabfrage gestellt?
In der Arduino IDE sehe ich den Tonuino nicht als Port.

OTA Passwort : admin/admin

So, bei mir funktioniert es jetzt auch auf der Traegerplatine. Als Prozessorboard habe ich bei Ali… esp32 nano bestellt. Waren innerhalb einer Woche da.

Danke, funktioniert auch…nicht nur Passwort sondern auch der Upload… :upside_down_face:

Ein Hinweis für PlatformIO: Wer schon vorher mit dem ESP32 gearbeitet hatte, hat vielleicht eine veraltete Platform „Espressif 32“ installiert (diese wird nämlich nicht automatisch geupgedatet).
Das kann unter
PlatformIO --> PIO Home --> Platform
überprüft werden. Es muss die Version 6.10.0 installiert sein.

1 „Gefällt mir“

Ich habe gerade eine neue Version hochgeladen. Hier ist das Serielle Log für das Webinterface implementiert. Egal, wann man sich verbindet, man bekommt immer das gesamte Log ab dem letzten Start (max 2kB).
Weitere Verbesserungen:

  • Beim Sichern der WiFi Einstellungen, kann man auch gleichzeitig neu starten
  • In der Eingangsseite kann man den TonUINO ausschalten.

Viel Spaß beim Testen. Hinweise und Fehlermeldungen sind willkommen.

Habe gerade den Nano ESP32 ausgepackt und mit der Version vom 30.03. geflasht. Betreibe aber den Arduino Nano völlig „nackt“, also ohne weitere Hardwareperipherie.
Dabei sind mir 2 Dinge (Wünsche) aufgefallen:

  1. Nach Übergabe der WLAN Parameter (SSID, Passwort) hätte ich gern einen Text als Rückmeldung (z.B. dass das WLAN gewechselt werden soll / dass der TonUINO neu gestartet werden soll)
  2. Die WLAN Parameter bleiben zwar bei einem Reset erhalten, nicht jedoch wenn der TonUINO (ganz) abgeschaltet wird. Ist ev. noch Platz im EEPROM für die WLAN Parameter?

Bevor ich es vor lauter Wünschen vergesse:
Das Web-Interface gefällt mir sehr gut.

Noch ein kleiner Hinweis am Rande:
Mein PC hängt kabelgebunden in einem Netzwerk. Wenn ich dann zusätzlich mit dem WLAN „TonUINO“ verbinde, kommt nicht die gewünschte Startseite sondern es wird die Seite einer Suchmaschine aufgerufen.
Über die IP des TonUINO AC (192.168.4.1) erreiche ich dann die gewünschte Startseite. Könnte ev. als Hinweis in der Readme sinnvoll sein, was denkst Du?.

Hallo @NoBl
Da du ja der Initiator der Bluetooth-Sache mit dem KCX Modul bist, extra für dich noch ein Hinweis.
Ich bin gerade dabei, die ESP-Variante zusammen mit BT zu testen. Dabei gab es Schwierigkeiten, wenn BT aktiviert war. Die Weboberfläche war dann nicht mehr erreichbar. Das liegt an der räumlichen Nähe der BT-Antenne auf dem KCX Modul und der Antenne des ESP32. Ich habe jetzt mal bei einem KCX-Modul die Antenne entfernt (An der Perforierung abgeknipst) und durch eine Externe BT-Antenne über kabel an der Koaxbuchse des KCX Moduls ersetzt. Jetzt funktioniert die Weboberfläche auch mit aktivem Bluetooth. Die Antenne hatte ich noch von einem alten W-Lan Drucker, der Kaputt war und den ich ausgeschlachtet hatte.



Hab gerade mal bei E-B… gestöbert. Da gibt es preiswerte W-Lan oder Bluetooth-antennen mit passendem Kabel und Stecker in verschiedensten Ausführungen.

Die Classic wird sehr bald einen Solderjumper haben. Damit kann man zwischen Softserial und HW-Serial wählen.

(Das Leiterkartenpiraten GmbH muss noch raus)

3 „Gefällt mir“

Hallo @Boerge1 ,
die Versionen vom 17.03. und 30.03. compilieren ohne Probleme.
Bei der Version von 05.04. erhalte ich jedoch folgende Fehlermeldung, aus der ich nicht schlau werde:

c:/users/nobl/appdata/local/arduino15/packages/esp32/tools/s3-gcc/2021r2-p5/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld.exe: C:\Users\nobl\AppData\Local\Temp\arduino\sketches\F5DB7248D73E7119F7E59E591D428D23\sketch\TonUINO-TNG-esp32n.ino.cpp.o:(.literal._ZN6logger3logE8lineFeed[_ZN6logger3logE8lineFeed]+0x4): undefined reference to `logger::printTimestamp'
c:/users/nobl/appdata/local/arduino15/packages/esp32/tools/s3-gcc/2021r2-p5/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld.exe: C:\Users\nobl\AppData\Local\Temp\arduino\sketches\F5DB7248D73E7119F7E59E591D428D23\sketch\TonUINO-TNG-esp32n.ino.cpp.o:(.literal._ZN6logger3logE8lineFeed[_ZN6logger3logE8lineFeed]+0x8): undefined reference to `webserial'
collect2.exe: error: ld returned 1 exit status

exit status 1

Compilation error: exit status 1

Kannst Du mir da einen Hinweis geben, bitte?

Du verwendest die Arduino IDE?

Lösche mal den Ordner

C:\Users\nobl\AppData\Local\Temp\arduino\sketches\F5DB7248D73E7119F7E59E591D428D23

Und baue danach alles neu. Bei der Arduino IDE gibt es ja kein „Clean“

Ich nutze dafür das NVS. Bei mir bleibt die Information auch nach dem Power Off erhalten. Probiere das nochmal mit der neuesten Version.

Da hat mich der Nano offenbar gefoppt.
Da er völlig unbeschaltet auf dem Schreibtisch lag, hat er möglicherweise die UP-Taste beim Start als gedrückt erkannt und ist den Kopplungsmodus gegangen.
Nachdem ich ihn nun auf einem Breadboard-Aufbau gegen den dortigen Ursprungs-Nano getauscht habe, bleiben die WLAN Parameter auch nach Power Off erhalten.
Also „falscher Alarm“ - sorry :woozy_face:

Den Tipp mit dem Clean der Arduino IDE werde ich nach dem Frühstück anwenden und testen.

Ich habe folgendes gemacht:

  • Verzeichnis, wie vorgeschlagen, gelöscht
  • Boardpackage „Arduino ESP Boards …“ gelöscht
  • alle in der Readme angegebenen Bibliotheken gelöscht
  • Update der Arduino IDE von V 2.3.3 auf V 2.3.5
  • Installation aller Bibliotheken entsprechend Readme
  • Kopieren von „platform.local.txt“ entsprechend Anweisung aus Readme

Das Ergebnis:

  1. TonUINO-TNG vom 30.03. kompiliert ohne Warnings (nur mit einer Meldung der Bibliothek „JC_Button“. Die kommt aber anscheinend erst bei der neuen Arduino IDE durch).
WARNUNG: Bibliothek JC_Button behauptet auf avr Architektur(en) ausgeführt werden zu können und ist möglicherweise inkompatibel mit Ihrer derzeitigen Platine, welche auf esp32 Architektur(en) ausgeführt wird.
Der Sketch verwendet 1374957 Bytes (43%) des Programmspeicherplatzes. Das Maximum sind 3145728 Bytes.
Globale Variablen verwenden 79400 Bytes (24%) des dynamischen Speichers, 248280 Bytes für lokale Variablen verbleiben. Das Maximum sind 327680 Bytes.

  1. TonUINO-TNG vom 05.04. bricht die Kompilation wieder mit (derselben) Fehlermeldung ab
WARNUNG: Bibliothek JC_Button behauptet auf avr Architektur(en) ausgeführt werden zu können und ist möglicherweise inkompatibel mit Ihrer derzeitigen Platine, welche auf esp32 Architektur(en) ausgeführt wird.
c:/users/nobl/appdata/local/arduino15/packages/esp32/tools/s3-gcc/2021r2-p5/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld.exe: C:\Users\nobl\AppData\Local\arduino\sketches\604EB226C64931CE038A579F5347902B\sketch\TonUINO-TNG-esp32_Web.ino.cpp.o:(.literal._ZN6logger3logE8lineFeed[_ZN6logger3logE8lineFeed]+0x4): undefined reference to `logger::printTimestamp'
c:/users/nobl/appdata/local/arduino15/packages/esp32/tools/s3-gcc/2021r2-p5/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld.exe: C:\Users\nobl\AppData\Local\arduino\sketches\604EB226C64931CE038A579F5347902B\sketch\TonUINO-TNG-esp32_Web.ino.cpp.o:(.literal._ZN6logger3logE8lineFeed[_ZN6logger3logE8lineFeed]+0x8): undefined reference to `webserial'
collect2.exe: error: ld returned 1 exit status
exit status 1

Compilation error: exit status 1

Bei mir das gleiche mit der letzten Version. Vorhergehende läuft.