Ich habe bereits Erfahrungen mit Arduino und bin geschäftlich ein erfahrender Anwendungs-Entwickler (Java, C, C++, C#, etc..., Windows/Linux, etc., VS, Eclipse, etc..). In letzten Zeit fasziniert mich privat immer mehr Microcontroller-Enwicklung. Ich sehe nach ersten Basics-Erfahrungen mit Arduino's, Attiny's, STM32 den ESP32 für mich als Microcontroller der Wahl um verschiedene private-Projekte damit zu realisieren (Preis, Grösse, Powermanagement, 2-Prozessoren, etc., angebotene Features). Welche Tutorials, e-books, etc. würdet ihr empfehlen, um hier schnell professionell und tiefgehend zu lernen. Ich möchte einfach kein Zeit verschwinden um Stundenlang youtube videos oder sinnlose Bücher anzuschauen, die nur Basics vermitteln oder nicht gut sind. Hier ist Eure Erfahrung gefragt. Folgende Schwerpunkte sind mir wichtig und sollen vertieft betrachtet werden: - Multithreading, interrupts, etc. - Entwicklung Powereffizienter Anwendungen. Powermanagement (u.a. deep sleep) allgemein... - OTA - Arduino API vs Espressif ESP32 - Arduino IDE vs. Eclipse, vs. VS, vs. platform IO, etc. bei der Enticklung von ESP32 - Wo sind die Grenzen bei der Arduino-IDE mit STM32 - Wo ist die Entwicklung mit Assembler unbedingt notwending (wenn überhaupt)? Ich bin natürlich offen auch Geld für Bücher, etc. auszugeben, wenn ich dadurch eine schnellere learning-kurve habe.
Da das SDK noch in der Beta-Phase steckt kann man noch keine Anleitung in Buch-Form empfehlen. Da ändert sich alle Nase etwas. An Deiner Stelle würde ich das IDF und die zugehöre Doku downloaden. Weitere Fragen werden im Support Forum geklärt.
Installiere Dir doch zum Anfang das Arduino für den ESP32 und geh die Beispiele durch, die dich interessieren. Dann guckst Du im Arduino SourceCode: https://github.com/espressif/arduino-esp32 und anschliessend im IDF: https://github.com/espressif/esp-idf Die Arduino library ist nur ein Wrapper für das IDF, dort steht der Low-Level Kram drin. Wichtigstes Dokument ist dann das Manual https://www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf Habe selbst viel mit dem ESP32 rumgespielt, aber wenn Du es auf besonders stromsparenden Betrieb abgesehen hast, kann ich ihn leider nicht empfehlen. Vielleicht haben wir aber auch unterschiedliche Ansprüche. Schau mal bei den "Deep sleep" Beispielen zum starten und miss den Stromverbrauch. Bezüglich Toolchain ist mein Vorschlag für einen simplen Einstieg mit einem Arduino Sketch anzufangen. Das bindest Du dann als Projekt in Eclipse ein und referenzierst die Arduino und IDF Bibliotheken, damit Du auto-completion , etc bekommst und die Bibliothek beim programmieren kennen lernen kannst. Sobald der Sketch grösser wird lagerst Du einfach Funktionen (oder Klassen) in eine Arduino-Bibliothek aus, die Du im Sketch includierst. Der Vorteil ist, dass Du dich nicht gross mit dem IDF Build-System rumärgern musst, sondern einfach Deine main.cpp in Arduino kompilierst. Wenn Du dann im Thema drin bist und fortgeschrittene Ansprüche hast, kannst Du dich in das IDF Build-System einarbeiten.
Ach so, auf diese Weise lassen sich auch Arduino und IDF Funktionen mischen ;-)
Die ESP32 Videos von Andreas Spiess sind zum Einstieg super, der hat auch multithreading, deep sleep, etc: https://www.youtube.com/channel/UCu7_D0o48KbfhpEohoP7YSQ/videos
Marco schrieb: > Ach so, auf diese Weise lassen sich auch Arduino und IDF Funktionen > mischen Sicher. Wenn Arduino ein geschlossenes System wäre, hätte es keinen Erfolg gehabt.
>Sicher. Wenn Arduino ein geschlossenes System wäre, hätte es keinen >Erfolg gehabt. Naja. Wobei es ja nicht unbedingt so sein müsste, dass die Low-Level Funktionen nach oben sichtbar sind. Bei den STM32 Frameworks kommt es sehr darauf an, welches man verwendet und dann die HAL Header verwendet werden können.
Marco schrieb: > Habe selbst viel mit dem ESP32 rumgespielt, aber wenn Du es auf > besonders stromsparenden Betrieb abgesehen hast, kann ich ihn leider > nicht empfehlen. Der ESP32 verbraucht in deep sleep modus 7 µA, was bei CR123A 3V Lithium-Batterie 1600mAh theoretisch 228571 Stunden also, 9523 Tage also fast 26 Jahre. Die ATiny13 verbrauchen noch weniger, etwa: 0,2µA, den würde ich aber nur in absoluten Aussnahmefällen mit einer kleineren Batterie wie Z.b.: CR3230. Geht die Programmierung unter Arduino direkt mit FreeRTOS für ESP32?
... ich mache beim esp32 mit micro python rum und das macht richtig spaß! mt
Das einzige Buch was ich überhaupt bzgl. ESP32 kenne ist von Neil Kolban: https://leanpub.com/kolban-ESP32 Selbst wenn dir das nicht zusagt kannst du mal einen Blick auf seine "Snippets" im Github-Repo werfen: https://github.com/nkolban/esp32-snippets Ansonsten gibts bei Youtube interessante Videos von Andreas Spiess und pcbreflux, wobei ich bei letzterem auch eher einen Blick ins Repo werfen würde: https://github.com/pcbreflux/espressif/tree/master/esp32/app
Ich würde die Arduino IDE nicht verwenden. Sie funktioniert zwar bietet aber kaum Komfort für das Programmieren, lieber eine IDE mit Code Vervollständigung und "IntellieSense". Da du auch unter Arduino auf das IDF Framework zugreifen kannst, kann du auch die FreeRTOS Funktionen nutzen.
ESP32newbe schrieb: > Der ESP32 verbraucht in deep sleep modus 7 µA, was bei CR123A 3V > Lithium-Batterie 1600mAh theoretisch 228571 Stunden also, 9523 Tage also > fast 26 Jahre. Die ATiny13 verbrauchen noch weniger, etwa: 0,2µA, den > würde ich aber nur in absoluten Aussnahmefällen mit einer kleineren > Batterie wie Z.b.: CR3230. Das ist richtig, aber Du wirst ja auch was mit ihm machen wollen, von daher bist Du ja nicht durchgehend im Deep Sleep, abgesehen davon, dass dann jedesmal der Hauptspeicher gelöscht wird. Du kannst dann noch mit dem ULP was machen, der einen Speicher hat, den man über den Sleep retten kann. Je nachdem welche Peripherie Du brauchst. Aber wofür einen ESP32, wenn Du den Hauptspeicher nach jedem aufwachen wieder neu initialisieren musst (oder gar nicht verwendest). Kommt halt ganz auf den Anwendungsfall an, welchen Speicher und welche Peripherie Du durchgehend brauchst. Wenn er hauptsächlich Stand-By ist und nur gelegentlich aufgeweckt wird, kann es in Ordnung sein.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.