Portierung auf ESP32

little.yoda
Site Admin
Beiträge: 856
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 31 Mal
Danksagung erhalten: 134 Mal

Portierung auf ESP32

Beitrag von little.yoda » 13.04.2019, 19:42

Ich habe begonnen, das Framwork auch auf dem ESP32 lauffähig zu bekommen.

Die Portierung wird wohl länger dauern, da sie echt nervig ist.

In diesem Thread möchte ich euch auf dem aktuellen Stand halten:
  • Ich habe eine Version, die zumindest für den ESP32 kompilierbar ist
  • Alles, was mit SPI zu tun hat, ist auskommentiert (=> DCC Generierung, SUSI Untersützung)
  • Alles, was mit PWM zu tun hat, ist auskommentiert (=> PWM Ansteuerung eines Motors)
  • Komplett ungetestet
Nächster Schritt wäre erst mal zu testen, ob die Version so überhaupt läuft

Benutzeravatar
Zoltan
Beiträge: 585
Registriert: 18.09.2018, 11:34
Wohnort: Wien
Hat sich bedankt: 93 Mal
Danksagung erhalten: 7 Mal
Kontaktdaten:

Re: Portierung auf ESP32

Beitrag von Zoltan » 14.04.2019, 06:50

Was wären eigentlich die Vorteile bei dem 32-er? Die "normale" läuft doch super?

LG Zoltan
LG Zoltan

little.yoda
Site Admin
Beiträge: 856
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 31 Mal
Danksagung erhalten: 134 Mal

Re: Portierung auf ESP32

Beitrag von little.yoda » 14.04.2019, 08:35

Für einige Dinge ist der ESP32 die bessere Ausgangsbasis:

1. Bessere Unterstützung der WLAN-Mesh-Lösung
Für den Betrieb auf größeren Flächen sind die reconnect-Zeiten bei WLAN einfach zu groß. Hier kann die Mesh-Funktionalität eine Lösung sein.

2. Auf dem ESP8266 läuft WLAN und die Software nebeneinander auf dem gleichen Kern.
Wenn WLAN-Pakete gesendet oder empfangen werden, wird die Ausführung des eigentlichen Programms unterbrochen, was zu Timing Probleme führen kann. Der ESP32 hat zwei Kerne und hat diese Probleme nicht.

3. Bessere Analog-Eingänge. Ich hoffe, dass ich damit z.B. langfristig auch Railcom auswerten kann

4. Mehr als einen SPI-Bus. (SUSI und DCC-Generierung benötigen aktuell jeweils einen SPI-BUS)

5. Mehr Speicher
[Wenn sehr viele Port-Expander oder ähnliches ins Spiel kommen oder Railroc genutzt wird,, wird es tatsächlich mit dem Speicher knapp]

Nachteile:
- der ESP32 ist größer als der ESP8266
- mehr Stromverbrauch

Aber keine Angst, ich werde beides parallel supporten.

Benutzeravatar
Zoltan
Beiträge: 585
Registriert: 18.09.2018, 11:34
Wohnort: Wien
Hat sich bedankt: 93 Mal
Danksagung erhalten: 7 Mal
Kontaktdaten:

Re: Portierung auf ESP32

Beitrag von Zoltan » 14.04.2019, 08:58

Danke für die Erklärung, es leuchtet ein.

LGZ
LG Zoltan

Ralf_St.
Beiträge: 350
Registriert: 18.09.2018, 01:14
Hat sich bedankt: 66 Mal
Danksagung erhalten: 14 Mal

Re: Portierung auf ESP32

Beitrag von Ralf_St. » 12.12.2020, 23:59

Hallo Sven

Ich kram dieses Thema noch mal hervor, weil ich keinen Hinweis zum flashen des ESP32 gefunden habe.
Kann ich die .bin mit Deinem Flasher aufspielen? Und wenn, welche muss ich dann nehmen?

Ich habe einen ESP32 und einen Mini D1 ESP32, beide sind von AZ Delivery. Der Aufdruck auf beiden lautet: ESP32-WROOM-32, lediglich die Bauformen der Platinen unterscheiden sich.
Gruß, Ralf

little.yoda
Site Admin
Beiträge: 856
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 31 Mal
Danksagung erhalten: 134 Mal

Re: Portierung auf ESP32

Beitrag von little.yoda » 13.12.2020, 08:25

Hi

Ja, mein Flasher unterstützt auch den ESP32.

Für die einfachen Boards wählst du einfach "esp32dev (Alpha/Beta)" aus.
Für den MiniKit kannst du "mhetesp32minikit (Alpha/Beta)" wählen.

Bitte beachte, dass die PIN Definition anders ist.

Sie fängt bei IO01 an und geht dann bis IO38
(bitte zwischen O und 0 unterscheiden)



Gruß,
Sven

Ralf_St.
Beiträge: 350
Registriert: 18.09.2018, 01:14
Hat sich bedankt: 66 Mal
Danksagung erhalten: 14 Mal

Re: Portierung auf ESP32

Beitrag von Ralf_St. » 14.12.2020, 17:30

Hallo Sven

Ich habe mit Deinem Flasher versucht die entsprechenden .bin Dateien auf die ESP32 aufzuspielen.
Hierzu habe ich zuerst den Flashspeicher gelöscht und danach die jeweilige .bin hochgeladen.
Der Flasher zeigt mir dabei zwar an das er die .bin aufspielt, aber danach im Monitor geprüft, ist nichts auf den Speicher geschrieben worden.
Die LED des ESP32 blinkt so lange etwas aufgespielt wird.
Beim Mini D1 ESP32 leuchtet die rote LED immer, beim aufspielen verändert sich nichts daran.

Hier die beiden ESPs:
ESP32.jpg
ESP32.jpg (61.16 KiB) 3167 mal betrachtet
Mini_D1_ESP32.jpg
Mini_D1_ESP32.jpg (34.45 KiB) 3167 mal betrachtet
Nachdem das hochladen beendet ist, steht folgende Info im Flasher:
Funktion chip_id is not supported for ESP32.

Wenn ich im Flasher den Monitor aufrufe erscheint unzählige male:

rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
flash read err, 1000
ets_main.c 371
ets Jun 8 2016 00:22:57

bei beiden ESPs...

Was mache ich falsch? Beim Flashen des D1 Mini bin ich genau so vorgegangen und es hat problemlos geklappt.
Gruß, Ralf

little.yoda
Site Admin
Beiträge: 856
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 31 Mal
Danksagung erhalten: 134 Mal

Re: Portierung auf ESP32

Beitrag von little.yoda » 14.12.2020, 21:25

Kannst du es mal mit einer aktuellen Version des Flashers probieren?
https://github.com/littleyoda/littleyod ... r/releases



Nur um sicher zu gehen, du hast "mhetesp32minikit (Alpha/Beta)" bzw. "esp32dev (Alpha/Beta)" ausgewählt?

Gruß,
Sven

Ralf_St.
Beiträge: 350
Registriert: 18.09.2018, 01:14
Hat sich bedankt: 66 Mal
Danksagung erhalten: 14 Mal

Re: Portierung auf ESP32

Beitrag von Ralf_St. » 14.12.2020, 22:45

Hallo Sven

"...du hast "mhetesp32minikit (Alpha/Beta)" bzw. "esp32dev (Alpha/Beta)" ausgewählt?"

Ja habe ich gemacht! Habe gerade auch den aktuellen Flasher benutzt. Ändert aber nichts am Ergebnis!
Gruß, Ralf

Norbert
Beiträge: 291
Registriert: 31.12.2018, 08:07
Hat sich bedankt: 1 Mal
Danksagung erhalten: 66 Mal

Re: Portierung auf ESP32

Beitrag von Norbert » 15.12.2020, 06:10

Hallo,

hatte vor einigen Tagen auch schon mal damit gefummelt,
kam aber zu den gleichen ernüchternden Resultaten.

Allerdings: Ich bin der Meinung, das der ly-Flasher sehr wohl arbeitet.
Auch wenn der Hinweis unten am Ende verwirrend ist.
Bei meinem Exemplar leuchtete die rote Led immer, stetig und unverändert, auch beim Flashen änderte sich da nichts.
Es ist kein mini.

Nur, mir stellt sich dringend die Frage, was soll denn passieren, wenn der ESP geflasht und neu gestartet ist???
Da passiert nämlich gar nichts.
Wie soll es denn danach weiter gehen, was muss/kann man dann wie aufspielen,
wie erreicht man den ESP überhaupt nach dem Flashen der Firmware?

Ich habe den ESP32 auch mit dem Py-Flasher bespielt, da sieht man sehr schön, wie das Teil geflasht wird, es wird auch erfolgreich verifiziert. Aber auch da passiert danach absolut nichts mehr! Habe beide beta-.bins probiert.

Wie machst du denn das, Sven?

VG
Norbert

Antworten