Forum: Mikrocontroller und Digitale Elektronik ESP32-Alternative WFI32: Module und MCUs erreichen Distributoren


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Tam H. (Firma: Tamoggemon Holding k.s.) (tamhanna)


Angehängte Dateien:

Lesenswert?

Der WFI32 ist Microchips Antwort auf den ESP32. War das Evaluation Board (PIC32 WFI32E Curiosity Board) schon seit einiger Zeit erhältlich, so folgt nun die Distributor-Verfügbarkeit von Modulen und Standalone-Chips.

von Tam Hanna

Für Quereinsteiger: womit haben wir es hier zu tun?

Die Anbindung hauseigener Hardware an Funkschnittstellen erfolgte seit Jahr und Tag durch per UART anzubindende Funkmodule wie z.B. den EasyRadio-Modulen des britischen Herstellers LPRS. Seit einiger Zeit stehen mit Chips wie dem ESP32 Produkte zur Verfügung, die einen frei programmierbaren Mikrocontroller und das Funkmodul „in einen Chip“ packen. Zur Steigerung der Bequemlichkeit gibt es häufig Pick&Place-automatenfreundliche Module, die sogar Antenne und grundlegende Stromversorgung erledigen (siehe Abbildung).

Vorteile des WFI32

Außer Frage steht, dass der ESP32 funktioniert – der Autor setzt den Chip unter Anderem in einer modeelektronischen Anwendung ein. Insbesondere im Analogbereich sind die Peripheriegeräte des ESP32 suboptimal. Die Linearität des ADC lässt dabei so sehr zu wünschen übrig, dass manche Hersteller seperate ADC-Controller verbauen: der in der Abbildung gezeigte Neonious One ist ein gutes Beispiel dafür.

Ein 12bit-ADC mit einer Maximalgeschwindigkeit von 2MSPS wird von Microchip dementsprechend im hervorgehoben, zudem hat der Controller bzw das Modul einen USB Host-Controller (USB 2.0 OTG).

Andererseits bringt der ESP32 ein Bluetoothmodul mit, das dem WFI32 fehlt; zudem ist er wesentlich preisgünstiger – in 25er-Stückzahl ruft Mouser für den WFI32 mit PCB-Antenne 8.88EUR pro Stück auf. Der als Kern der WFI32-Familie dienende Controller ist auch standalone erhältlich und hört da auf den Namen PIC32MZ1025W104 – diese Seriennummer ist für die später schemenhaft erfolgende Einrichtung in MPLAB X erforderlich. Er hat einen einzelnen, mit bis zu 200MHz getakteten MIPS32-Kern. 1MB Flashspeicher und 256KB SRAM plus einen 64KB großen Pufferbereich. Die Microchip-Übliche Kryptobeschleunigerengine hilft hier auch bei der Erzeugung von Zufallszahlen, die Assemblersprache enthält einige DSP-spezifische Instruktionen.

Module mit u.FL-Connector oder PCB-Antenne

Neben dem Standalone-Chip bietet Microchip vier vorgefertigte Module an – zwei haben eine integrierte Antenne, während zwei die Anbindung über einen u.FL-Stecker erlauben.

Die C-Modulvarianten bringen zusätzlich Unterstützung für Trust&Go mit.

Vorteil 2: MPLAB X

Grafische Codegeneratoren helfen bei der Einrichtung von Peripheriegeräten – Microchip bietet mit MCC einen durchaus brauchbaren Vertreter des Genres an, der zudem Teil einer kostenlosen (und sehr leistungsfähigen) IDE ist. Für die Arbeit mit dem WFI32 bzw dem PIC32MZ1025W104 ist allerdings die „ausgewachsene“ Variante MPLab Harmony 3 erforderlich – sie muss im ersten Schritt, wie in der Abbildung gezeigt, als Plug-In heruntergeladen werden. Zudem ist der separat zu installierende XC32 erforderlich. Nach dem Restart finden Sie im Projektskelettgenerator eine neue Option, die die Erzeugung eines Harmony-Projekts erlaubt.

Beachten Sie, dass das MCC-Schildsymbol in diesem Fall nicht aktiviert werden darf – die beim Anklicken auftauchende Fehlermeldung mit Hinweis auf nicht vorhandene Bibliotheken ist bei Verwendung des WFI32 irreführend, weil MCC für dieses Modul keinen Code generiert. Korrekt ist das Aktivieren des MHC-Werkzeugs über die Option Tools > Embedded > MPLAB® Harmony 3 Configurator, was zum Aufscheinen des in der Abbildung gezeigten Konfigurationswerkzeugs führt.

MHC unterscheidet sich vom Aufbau her insofern von MCC; als es an Flussdiagramme erinnernde Projektstrukturbäume erwartet. Unter https://microchip-mplab-harmony.github.io/mhc/doc/readme_mhc_configuration.html findet sich ein erster Einstieg in die Programmierung mit dem Produkt – MPLAB hat bei aktiviertem Harmony-Configurator zudem ein Extramenü namens MHC, in dem sich einige Sonderoptionen finden.


: Bearbeitet durch NewsPoster
von Andras H. (kyrk)


Lesenswert?

Ist zwar schon dass Microchip endlich mal etwas mit WiFi wieder 
herausgegeben hat. Vermutlich durch die Jahre lange geübte Zukauf haben 
die schon ganz vergessen wie man etwas entwickelt. Leider hat die 
Marketingabteilung bezüglich Preis etwas daneben geschossen.  €64.60 
steht auf Microchip online, und so wie ich es aus dem Datenblatt 
verstehe bekommt man dafür einen Board mit WiFi + bisschen Flash + 
Temperatursensor. Und ein Haufen Pin Headers die keiner so richtig 
braucht. Das muss ein Vitz sein. Da kauft man lieber doch ein ESP32 
board + Tempsensor für unter 10 Euro oder so.

Dann das ganze mit Mplab Harmony. Das erste was man da tun soll, ein 
Projekt erstellen die C und H Files aussaugen und Harmony vergessen. 
Makefile tut viel schneller. MPLAB X und Debuggen? Also wenn die es bei 
einer PIC32MZ Curiosity board nicht schaffen den ordentlich debugbar zu 
machen, dann hier bestimmt auch nicht. Ein und aus stecken ist das 
default workaround wenn der Teil nicht geflasht werden kann. Debuggen? 
Ist ein Glück wenn überhaupt das tut. Wenn nix mehr tut, PC neu starten. 
Und MPLAB X muss man auch ab und zu mal killen...

Microchip ist in den Jahren so verschlimmbessert geworden dass man 
lieber arbeitslos wird als mit deren Tools arbeiten zu wollen. Ich tu 
mir schon selber leid dass ich in mein Hobby mit Microchip etwas noch 
mache.

von Johannes S. (jojos)


Lesenswert?

es gibt auch schon lange Alternativen mit Cortex-M, wie den RTL8170. 
Aber trotz Arduino Unterstützung ist auch das ein seltenes 
Mauerblümchen.
https://www.amebaiot.com/en/ameba-arduino-getting-started-rtl8710/

von Andre (Gast)


Lesenswert?

Die Artikelfotos sind leider etwas dürftig. Wie ein ESP32 aussieht weiß 
ich inzwischen. Aber von dem eigentlich präsentierten Modul habe ich 
jetzt immer noch keinen Eindruck. Wie groß ist das Ding, wie kann ich es 
integrieren, ...?

von Tam H. (Firma: Tamoggemon Holding k.s.) (tamhanna)


Lesenswert?

Andre schrieb:
> Die Artikelfotos sind leider etwas dürftig. Wie ein ESP32 aussieht weiß
> ich inzwischen. Aber von dem eigentlich präsentierten Modul habe ich
> jetzt immer noch keinen Eindruck. Wie groß ist das Ding, wie kann ich es
> integrieren, ...?

Hallo Andre,
werde bei Microchip nachher um Bilder intervenieren.

Maile mir unter tamhan aeht tamoggemon rundesding com. Kann aber 
bisschen dauern, rassischer Halbaraber muss heute Abend zum Service 
(Operation).

lg
th

von Tam H. (Firma: Tamoggemon Holding k.s.) (tamhanna)


Lesenswert?

Andras H. schrieb:
> Ist zwar schon dass Microchip endlich mal etwas mit WiFi wieder
> herausgegeben hat. Vermutlich durch die Jahre lange geübte Zukauf haben
> die schon ganz vergessen wie man etwas entwickelt. Leider hat die
> Marketingabteilung bezüglich Preis etwas daneben geschossen.  €64.60
> steht auf Microchip online, und so wie ich es aus dem Datenblatt
> verstehe bekommt man dafür einen Board mit WiFi + bisschen Flash +
> Temperatursensor. Und ein Haufen Pin Headers die keiner so richtig
> braucht. Das muss ein Vitz sein. Da kauft man lieber doch ein ESP32
> board + Tempsensor für unter 10 Euro oder so.
>
> Dann das ganze mit Mplab Harmony. Das erste was man da tun soll, ein
> Projekt erstellen die C und H Files aussaugen und Harmony vergessen.
> Makefile tut viel schneller. MPLAB X und Debuggen? Also wenn die es bei
> einer PIC32MZ Curiosity board nicht schaffen den ordentlich debugbar zu
> machen, dann hier bestimmt auch nicht. Ein und aus stecken ist das
> default workaround wenn der Teil nicht geflasht werden kann. Debuggen?
> Ist ein Glück wenn überhaupt das tut. Wenn nix mehr tut, PC neu starten.
> Und MPLAB X muss man auch ab und zu mal killen...
>
> Microchip ist in den Jahren so verschlimmbessert geworden dass man
> lieber arbeitslos wird als mit deren Tools arbeiten zu wollen. Ich tu
> mir schon selber leid dass ich in mein Hobby mit Microchip etwas noch
> mache.

Hallo,
das klingt ja echt ungut.

Wenn du mir privat mailst, und ich heute Abend vom OP-Tisch laufe, setze 
ich dich in Kontakt mit ein paar Leuten bei MicroChip.

tamhan aeht tamoggemon rundesding com

von Andras H. (kyrk)


Lesenswert?

Andre schrieb:
> Wie groß ist das Ding, wie kann ich es
> integrieren, ...?

Das alles ist nur meine Vermutung, kann daher komplett falsch sein:
Ich meine Microchip will den Chip verkaufen. Es würde natürlich Sinn 
machen ein Chip auf ein LP zu löten + bisschen Hühnerfutter + Antenne 
daneben zu machen. Da wird sich der Formfaktor nicht so deutlich anders 
sein als bei ein ESP32 mit Metallgehäuse. Ob Microchip so etwas im 
eigenen Hause macht? Oder jemand auf dem Markt? Wer weiß. Ich vermute da 
die bisherige Module die ähnlich aussahen, hat microchip auch nur immer 
dazu gekauft. Von daher sehe ich eher skeptisch, dass die von sich 
selber aus etwas machen. Hoffentlich irre ich mich und es kommt da 
etwas. Sonst bleiben nur die Chips und selber etwas machen. In Zeiten 
JLCPCB bestimmt kein Problem.

von Andre (Gast)


Lesenswert?

Tam H. schrieb:
> werde bei Microchip nachher um Bilder intervenieren.

Super, wäre schön wenn du die in den Artikel einbauen könntest. Dann 
kann man direkt sehen, ob das Modul für unsere Zielgruppe was taugt. Im 
Datenblatt sieht das nach irgendeiner fiesen QFN-mäßigen Bauform aus?
Viel Glück nachher!

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Vorteil 2: MPLAB X

Wiebitte?
Das kann nur wer schreiben der kein Plan hat und damit noch nie 
gearbeitet hat bzw arbeiten musste.

von Andras H. (kyrk)


Lesenswert?

Tam H. schrieb:
> Wenn du mir privat mailst, und ich heute Abend vom OP-Tisch laufe, setze
> ich dich in Kontakt mit ein paar Leuten bei MicroChip.

Ich muss noch überlegen. Prinzipiell ist es ja so, es sind halt 
sporadische Robustheitsprobleme über die ganze Toolkette verteilt. Das 
heisst, ich kann die Probleme nicht einfach zeigen. Mann muss einfach 
halt ca. 5 bis 15 Minuten damit versuchen zu entwickeln und dann kommt 
irgend etwas. Für mich als Entwickler heisst:
 - sporadisch: wird viel Zeit kosten
 - Robustheit: wird vile Zeit kosten
 - kommt so ca 5 bis 15 Minuten: pro Versuch kann mann dann mit mind. 5 
Minuten aber halt im schlimsten fall doch mit n*15 Minuten rechnen
Da ich Microchip nur für meine Hobby nehme, würde ich so viel Zeit 
vermutlich da nicht reininvestierne wollen.

Wobei wenn ich im Arbeit sowas höre dass etwas sporadisch ist und etwas 
mit robustheit zu tun hat und dazu noch relativ selten kommt, dann weiss 
ich, ich muss hier vermutlich mit dem schweren Geschütz kommen und 
verschiedene Aufbauten machen, richtung testen unter last. Teilweise gab 
es schon Tickets wo ich 3 Monate lange herumgesucht habe. Solche 
Probleme fressen leider sehr viel Zeit (beim Hersteller und beim Kunden) 
und brauchen Teilweise tiefe kenntnisse über mehere Teile vom Software.

Ich als hobbyst, habe dann die üblichen Schritte gemacht, damit ich 
entwickeln kann:
- USB kabels getauscht. Vielleicht waren die halt verschleisst => 
Robustheitsprobleme weiterhin da
- PC getauscht => weiterhin da
- Versucht erstmal ohen Debuggen auszukommen. Ist halt dof, wenn man nur 
ein LED hat, aber mit erfahrung und glück findet man was man sucht.
- Anstelle einfach zu flashen, habe ich erstmal explizit den Flash 
gelöscht und dann programiert => Hat immerhin etwas gebracht
- Dann noch festgestellt dass der Bootloader Applikation auf dem PC(!) 
irgendwie auch da einwirkt. Verstehe ich bis heute nict wieso, wobei 
MPLAB X und der Unified Bootloader ja beides Java sind könnte vielleicht 
doch sein => Jetzt ging flashen relativ gut, und auch debuggen. Damit 
waren die Meldungen vom on board PicKit auf der Curiosity so weit weig 
dass ich damit arbeiten konnte. MPLAB X freez war auch nicht mehr da. 
Wobei hier war ich schon so weit dass ich mit dem bootloader flashen 
konnte und zum glück den MPLAB X nur zum compilieren brauchte.

Ich muss ehrlich sein, einmal war ich so verzweifelt, dass ich den MPLAB 
8 ins ghidra importiert habe, und da habe ich gesehen wie die PIC Typen 
aus einem File eingelesen werden. Ist halt mit XOR geschützt. File 
DE-XOR-t und ich habe mir schnell da einen PIC32MZ aufgenommen. Immerhin 
kann ich da jetzt im MPLAB 8 für den PIC compilieren und makefiles 
schnell exportieren. Eventuell debuggen könnte vielleicht auch gehen 
wenn man weitere files auch ergentzt. Schade dass Microchip den MPLAB 8 
nicht open source macht. So gefühlt würde ich sagen dass MPLAB 8 + ICD3 
viel robuster ist als MPLAB X + ICD3. Auch wenn MPLAB 8 manchmal macken 
hat, man lernt die und weiss was man dagegen tun kann.

Sonst finde ich dass MPLAB 8 mit weniger resourcen genau so viel leistet 
wie der MPLAB X. Mehrwert sehe ich aber aus dem MPLAB X nicht. Ausser 
dass der Watch Fenster komplett unbrauchbar geworden ist. Sorry aber da 
war der MPLAB 8 viel besser. Bei iSystem/winIDEA kann man auch noch 
relativ gut da formatieren und noch einfache C ausdrücke nehmen. Memory 
anschauen ist auch ein pain in die ass, bei MPLAB 8 ging das doch 
bisschen besser.

von Andras H. (kyrk)


Lesenswert?

Mw E. schrieb:
> Vorteil 2: MPLAB X
>
> Wiebitte?
> Das kann nur wer schreiben der kein Plan hat und damit noch nie
> gearbeitet hat bzw arbeiten musste.

In Nord-Korea werden Hackers die nicht richtig leisten damit bestraft. 
:)

Ich Persönlich nehme immer noch:
MPLAB 8 und makefile export
make mit -j8 damit es schneller geht
Notepad++
und bootloader

Wenn ich debuggen muss, dann MPLAB 8 mit ICD3. Ist noch relativ stabil. 
Wenn es nicht geht dann MPLAB X mit ICD3. Aber auf gar keinen fall ICD4, 
ist mir zu schwer, und ich erinnere mich leider nicht mehr konkret, aber 
der ICD4 hat mich auch irgendwie nicht überzeugt, dass es viel robuster 
währe (kann aber troztem so sein).

Harmony nehme ich nur so lange, bis ich da etwas erstelle und es scheint 
zu tun. Dann fange ich an die Files einzeln per Hand auszukopieren und 
erstelle ein Projekt das völlig unabhängig davon tut.

von F. F. (foldi)


Lesenswert?

Gibt es hier eigentlich Leute, ich frage in die Runde, die ihre Sachen 
direkt auf einem ESP programmieren.
Überall ist immer die Rede von der Anbindung eine Mikrocontrollers an 
einen ESP, aber man kann doch, zumindest kleinere Sachen, direkt damit 
machen.
Oder liege ich völlig falsch?
Zu meiner Verteidigung, seit dem Tod meines Sohnes hatte ich keinen Kopf 
mehr zum Programmieren.

von Andras H. (kyrk)


Lesenswert?

Hallo,

F. F. schrieb:
> Überall ist immer die Rede von der Anbindung eine Mikrocontrollers an
> einen ESP

Das war damals, als ich es versucht habe, eine schlechte Idee (wobei ich 
habe es mit den ESP8266 gemacht). Ich wollte mein PIC32 an den Seriellen 
Interface anbinden und per AT commands dann TCP und UDP Sockets machen. 
Es ging relativ gut, außer dass es:
- immer wieder Probleme gab und das Ding nicht antwortete nur mit 
busy... ===> workaround war den ESP zu reseten per HW
- ist halt bisschen tricky wenn man den PIC32 resetet und der ESP dabei 
ist daten für den Socket zu empfangen. Dann weiss der PIC32 das nicht 
mehr und schickt befehle auf den Socket. Der Reset Befehl tut dann 
einmal nicht. Bis der Socket voll ist. Also am besten den Reset so ca 
1kByte mal schicken. Bis man eine Ordentliche AT Zustandsmaschine macht 
vergeht halt sehr viel Zeit.
- dann denkt man es ist ein robustere SW da, flasht man drauf, und dann 
ändern sich befehle. Ja ok ich hätte da rein gucken sollen und erst 
bewerten und bla bla bla
- dann irgendwann mal kam der AT Software update für den ESP82 nicht. 
Oder irgendwie musste man mehr flash haben. Weiss ich nicht mehr. Oder 
war der Serielle Port auf eine andere PIN gelegt worden. Hat mich 
generft weil ich ein Olimex board gehabt habe und da kann man halt sowas 
nicht einfach umstecken.
- dann ist die Frage macht es Sinn einen uC neben dem ESP32 zu packen wo 
der ESP32 auch schon alles haben müsste? Rechenleistung müsste der ESP32 
genug haben. Flash auch.
- Stromaufnahme? Man muss sich mit 2 uCs herumschlagen.
- Ich habe eine HTTP Server implementiert, dann noch eine HTTP Client 
Richtung Thingspeak. Dann wollte ich auf dem PIC32 eine Bootloader per 
UDP. Das ging dann nicht mehr, der ESP hat verschiedene Fehlermeldungen 
gebracht oder halt einfach nicht geantwortet ===> Hier habe ich 
aufgegeben und gesagt ohne den Source Code und Debugger für den ESP82 
mache ich da nix mehr.

Also per AT Commands geht es teilweise:
https://thingspeak.com/channels/560741
https://thingspeak.com/channels/117112

Aber prinzipiell glaube ich dass es eine schlechte Idee ist. Mann soll 
den ESP32 ausnutzten und nicht ein PIC32 oder STM32 daneben packen weil 
man sich damit besser auskennt. Ob der ESP32 die Toolingkette schon so 
weit hat dass man per Debugger flashen kann? Und alle librarys mit 
source code kommen? Das weiss ich nicht. Damals war dies nicht der fall.

von Stefan ⛄ F. (stefanus)


Lesenswert?

F. F. schrieb:
> Überall ist immer die Rede von der Anbindung eine Mikrocontrollers an
> einen ESP, aber man kann doch, zumindest kleinere Sachen, direkt damit
> machen.

Beide Varianten sind gebräuchlich. Ich glaube die meisten Leute nutzen 
des ESP als zentralen oder einzigen Mikrocontroller.

Die von Andreas gemeldeten Probleme kenne ich. Die AT Firmware 0.5.0.0 
und 1.1.0.0 (für den ESP8266) arbeiten allerdings zuverlässig, wenn man 
die Anwendung sauber programmiert.

: Bearbeitet durch User
von Andras H. (kyrk)


Lesenswert?

Stefan ⛄ F. schrieb:
> Die von Andreas gemeldeten Probleme kenne ich. Die AT Firmware 0.5.0.0
> und 1.1.0.0 (für den ESP8266) arbeiten allerdings zuverlässig, wenn man
> die Anwendung sauber programmiert.

Ich meine 1.6.2.0 habe ich im Betrieb. Oder 1.7.4.0 bin aber nicht ganz 
sicher. Habe nur den C Code angeguckt weil ich nach dem Reset auf die 
Version checke.

Die Dinger laufen ca seit 2-3 Jahren ohne Probleme. Das könnte durchaus 
sein dass sich der Firmware soweit verbessert hat, bzw. die Workarounds 
die ich noch drin habe auch die Robustheit erhöhen.

Witziger weise ist der PIC32 jetzt ein Robustheitsproblem. Die was 
Olimex verbaut hat sind leider die Varianten die den BOR nicht richtig 
machen. Im Errata steht dann: Komme nicht in den BOR, wenn doch dann 
mache einen POR. Leider wenn die Batterie leer läuft komme ich da hin. 
Und danach wenn die Baterrie wieder aufgeladen wird, läuft der PIC32 
nicht los. MCLR reset ziehen hilft auch nicht. Nur ein POR. Als 
Workaround habe ich da eine grössere Batterrie.

Sonst die ESP82 macht sich da jetzt nicht bemerkbar. Ausser dass ich den 
UDP Teil nicht mehr machen konnte. War schon lange her, aber ich habe 
dann irgendwie im Terminal geguckt, ja da tut es wenn ich nur UDP mache. 
Aber wenn ich TCP Server und Client dann nicht mehr. Egal. Ist nicht 
mehr so wichtig.

Was mich bezüglich ESP32 interessieren würde:
- kann man den über JTAG Debuggen und Flashen?
- gibt es zu den Firmware Source Code?

Wenn ja dann würde ich noch einmal auf den ESP32 ein blick werfen. Sonst 
ist es mir zu umständlich da etwas machen.

von Stefan ⛄ F. (stefanus)


Lesenswert?

Andras H. schrieb:
> Was mich bezüglich ESP32 interessieren würde:
> - kann man den über JTAG Debuggen und Flashen?
> - gibt es zu den Firmware Source Code?

Ja und ja.

https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/jtag-debugging/index.html
https://github.com/espressif/esp-idf

von A. B. (funky)


Lesenswert?

hmm, werd meine ESP32 auch mal wieder auspacken, aber bisher haben die 
mich eher gefrustet. An dem IDF von espressif hat sich alle Nase lang 
was geändert. Die EclipsePlugins zur Entwicklung waren ziemloich buggy 
und alle Nase lang kamen ausgemerzte Fehler wieder rein, andauern ging 
irgendwas nicht.
Debuggen lief nicht stabil usw usw. Evtl hat da jemand ja bessere 
Erfahrungen gemacht, aber Spaß hats nicht gerade gemacht.

von Andras H. (kyrk)


Lesenswert?

Stefan ⛄ F. schrieb:
> Ja

https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/jtag-debugging/index.html
Hier steht dass Flashen immer noch uber UART geht. Sehe ich das richtig?

von Stefan ⛄ F. (stefanus)


Lesenswert?

A. B. schrieb:
> An dem IDF von espressif hat sich alle Nase lang
> was geändert.

Das kommt von dem Anspruch der eierlegenden Wollmilchsau. je mehr 
Features man da rein packt oder ermöglichst, umso länger wird an der 
Software herum gedoktort. Da macht den Chip für Bastler besonders 
attraktiv.

Ich bin da auch eher etwas altmodisch drauf. Mir reicht der ESP-8266 als 
Netzwerk-Interface. Bei ganz einfachen Anwendungen reicht er mir als 
einziger Prozessor. Ich habe aber keine Lust, eine Drehzahlregelung für 
mehrere Motoren, samt lokalem Touch Screen und HTML basiertem 
Web-Interface in einen Chip zu quetschen. Solche Kunststücke überlasse 
ich der Industrie - beim Hobby muss ich mir den Stress nicht antun.

Mit Bluetooth stehe ich wegen wiederholten Treiber- und 
Kompatibilitätsproblemen eh auf Kriegsfuß. Das packe ich nur noch mit 
der Kneifzange an, wenn ich dazu gezwungen werde.

Deswegen ist der ESP32 für mich ziemlich uninteressant. Ich habe mit 
einen üppigen Vorrat an ESP-01 und ESP-12F Modulen zugelegt, und dazu 
passend eine stabile Entwicklungsumgebung. Deren Einschränkungen kenne 
ich, neue unangenehme Überraschungen erwarte ich keine mehr (den Kampf 
damit hatte ich lange genug). Damit werde ich wohl noch viele Jahre aus 
kommen, bevor sie mir langweilig werden.

In 10 Jahren wird für mich mit Elektronik wahrscheinlich sowieso "Ende 
im Gelände" sein, weil meine Augen nachlassen. Vielleicht werde ich dann 
Bäcker.

von Justin S. (derwer)


Lesenswert?

Tam H. schrieb:
> Ein 12bit-ADC mit einer Maximalgeschwindigkeit von 2MSPS wird von
> Microchip dementsprechend im hervorgehoben, zudem hat der Controller bzw
> das Modul einen USB Host-Controller (USB 2.0 OTG).

Bitte bitte noch einmal nach dem Schreiben durchlesen und sowas 
korrigieren. Aber man könnte auch viel weniger Füllwörter verwenden.

Wer journalistisch arbeitet, sollte auf jeden Fall das Buch "Deutsch für 
Profis" oder "Deutsch fürs Leben" von Wolf Schneider gelesen haben (also 
weg mit "dementsprechend" und "zudem", kein Passiv, kurze Sätze). Dann 
wird einem auch klarer, dass da inhaltlich noch Nachholbedarf ist, was 
der eigentliche Grund ist, warum Texte von Tam Hanna immer etwas 
unverständlich wirken:

"Microchip betont einen 12bit-ADC mit 2MSPS Maximalgeschwindigkeit. Der 
Controller bzw. das Modul hat einen USB 2.0 OTG Host-Controller."

von Andreas M. (amesser)


Lesenswert?

F. F. schrieb:
> Gibt es hier eigentlich Leute, ich frage in die Runde, die ihre Sachen
> direkt auf einem ESP programmieren.
> Überall ist immer die Rede von der Anbindung eine Mikrocontrollers an
> einen ESP, aber man kann doch, zumindest kleinere Sachen, direkt damit
> machen.

Kleine Sachen? Ein ESP32 hat typischerweise eine Dual-Core 240MHz CPU. 
Das Framework benutzt standardmäßig ein Betriebssystem mit Tasks. Es 
gibt auch kleinere Varianten mit einer Single-Core (ESP32S2) aber selbst 
der ist noch  ausreichend schnell. Problematisch ist halt, das die 
Firmware zur Laufzeit aus dem externen seriellen Flash kommt. Das ist 
der eigentliche Flaschenhals, muss man intelligent den Ram/Cache 
einsetzen wo nötig.

Andras H. schrieb:
> Hier steht dass Flashen immer noch uber UART geht. Sehe ich das richtig?

Technisch kann man sowohl über UART als auch über JTAG Flashen. Standard 
JTAG SW ist gdb + openocd. Weis nicht ob der openocd per JTAG flashen 
unterstützt. Einige der neueren ESP32 chips können auch direkt per USB 
angesprochen werden.

A. B. schrieb:
> hmm, werd meine ESP32 auch mal wieder auspacken, aber bisher haben die
> mich eher gefrustet. An dem IDF von espressif hat sich alle Nase lang
> was geändert. Die EclipsePlugins zur Entwicklung waren ziemloich buggy
> und alle Nase lang kamen ausgemerzte Fehler wieder rein, andauern ging
> irgendwas nicht.

Wozu eclipse? ESP-IDF läuft ansich ohne "GUI". Einfach drüber flanschen 
was man will. Ich benutze zur Zeit Visual Code als GUI. Debuggen 
allerdings nur über Kommandozeile per GDB mit Amontec JTAG-Key. ( Ist 
Umständlich, ja )

von A. B. (Gast)


Lesenswert?

Ja, visual Studio Code ging auch, das plugin war aber auch noch in heavy 
Entwicklung und den Debugger hab ich da auch nicht stabil ans laufen 
bekommen.

Nachdem ich mich bisschen an VS Code gewöhnt habe (nutze es für andere 
Sachen) finde ich es mittlerweile eigentlich ganz ok und performant. Da 
war wie gesagt auch der espressif Teil das Problem. Insgesamt machen die 
schon viel und entwickeln aktiv, aber stabil ist das alles nicht 
(gewesen)


Ja, flashen per cmd geht. Aber gdb per cmd finde ich nicht gerade 
komfortabel. Kann man machen, aber geil isses nicht.

Aber bei mir war mehr das Problem, das die jtag Verbindung total 
wackelig war (trotz kurzer Kabel)
Dann fragt man da im forum: ahhh Ja, da musst du natürlich openocd xyz 
nehmen. Ach das geht so nicht. Ach jenes geht nur mit Version xy0.4.
Wir haben es in Version 0.4c gefixt. Lässt man das Teil 2 Wochen liegen, 
gibt's 3 Updates, 5neue Features und 3alte Sachen gehen plötzlich nicht 
mehr.

Naja, genug gerantet. Der Preis treibts rein

von Stefan ⛄ F. (stefanus)


Lesenswert?

A. B. schrieb:
> Lässt man das Teil 2 Wochen liegen, gibt's 3 Updates,
> 5neue Features und 3alte Sachen gehen plötzlich nicht mehr.

Das ist so bei Espressif, ich hatte die gleiche Phase mit dem ESP8266 
durch. Den habe ich mir nur deswegen trotzdem angetan, weil es vor ein 
paar Jahren keine (für Hobby) erschwingliche Alternative gab. Ich habe 1 
Jahr lang nur mitgelesen un dann 3 Jahre lang gefrickelt, bis ich 
endlich ein stabiles Gesamt-Konstrukt hatte.

von A. B. (funky)


Lesenswert?

ok, ich bin einfach nicht leidensfähig genug merke ich :D

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.