~MikroController sind mittlerweile meines Erachtens eine kostengünstigere und energieschonende Alternative zu Raspberry-Pi oder ähnlichen [System-on-a-chip|https://de.wikipedia.org/wiki/System-on-a-Chip] (SOC-)Lösungen. \\
(Markus, Stand 19.01.2024)
Beispiele:
* https://de.wikipedia.org/wiki/ESP8266 -> Mikrocontroller mit 6-Watt-Stromaufnahme und WLAN-Fähigkeit
* https://de.wikipedia.org/wiki/ESP32 -> Als Nachfolger des ESP8266 entwickelte espressif den Mikrocontroller ESP32 mit einigen Verbesserungen wie beispielsweise Bluetooth und einem [Hallsensor|https://de.wikipedia.org/wiki/Hall-Sensor].
!Programmierumgebungen:
* https://wokwi.com -> Simulator für ESP32, Arduino, STM32
* https://www.digikey.com/en/maker/tutorials/2022/getting-started-with-the-wokwi-arduino-simulator -> getting started with wokwi ESP32-Simulation
* https://github.com/espressif/esp-launchpad -> Das Github-Repository des Projekts "Esp-Launchpad"
"Too Long, didn't read" (TL;DR) zum o.g. __ESP-Launchpad__:
{{{
ESP Launchpad is a web based tool, available for flashing firmware application to the ESP32 device connected via USB serial port.
}}}
!Programmiersprachen:
* [Rust|https://de.wikipedia.org/wiki/Rust_(Programmiersprache)] -> siehe Linksammlung __"Rust und Embedded"__ unten
* [Lua|https://de.wikipedia.org/wiki/Lua]-basierte interaktive Programmierung unter der Bezeichnung [NodeMCU|https://de.wikipedia.org/wiki/NodeMCU].
* [Micropython|https://de.wikipedia.org/wiki/MicroPython] (Python-basierte interaktive Programmierung)
* Circuitpython (Python-basierte interaktive Programmierung)
* [Arduino-|https://de.wikipedia.org/wiki/Arduino_(Plattform)]/[C++|https://de.wikipedia.org/wiki/C%2B%2B]-basierte Programmierung. Siehe https://randomnerdtutorials.com/how-to-install-esp8266-board-arduino-ide/
* [AT|https://de.wikipedia.org/wiki/AT-Befehlssatz]-Command für die Nutzung als Seriell-zu-WLAN-Schnittstelle
* ESP Easy zur Ansteuerung von Sensoren/Aktoren über WLAN
* ESP [Basic|https://de.wikipedia.org/wiki/BASIC]
!Tools:
* https://tinyurl.com/esp32mergebinaries -> grundlegende Befehle - Binärdateien zum Flashen
!Hardware:
* https://www.elektor.de/20518 -> ESP32-~DevKitC32E
* https://www.elektor.de/20299 -> LILYGO T-Display-S3 ESP32-S3 Entwicklungsboard (mit Headern)
!Projekte:
* https://hackaday.com/2020/08/30/olaf-lets-an-esp32-listen-to-the-music/ -> Overly Lightwight Acoustic Fingerprinting (OLAF) zur Erkennung von Songs per ESP32, auch per WASM im Webbrowser
* https://0110.be/posts/Acoustic_fingerprinting_in_the_browser_with_Olaf -> OLAF von Joren Six per [WebAssembly|https://de.wikipedia.org/wiki/Wasm] (WASM)
* https://0110.be -> weitere, m.E. interessante Projekte von Joren Six mit Mikrocontrollern, etc.
* https://elektormagazine.de/230496-02 -> Walkie-Talkie mit [ESP-NOW|https://espressif.com/en/solutions/low-power-solutions/esp-now], einer m.E. brauchbaren Alternative zu [LoRaWan|https://de.wikipedia.org/wiki/Long_Range_Wide_Area_Network]
* https://www.elektormagazine.de/magazine/elektor-69/42260 -> Schutzschild gegen Schnarchen
* __[Matter|https://de.wikipedia.org/wiki/Matter_(Standard)]__, ~SmartHome-Standard seit ca. Ende 2022:
** https://github.com/project-chip/connectedhomeip -> Matter C++-SDK auf Github
** https://github.com/project-chip/matter.js -> Implementation für Javascript
** https://github.com/project-chip/rs-matter -> Implementation für Rust
** https://espressif.github.io/esp-launchpad -> ESP-Launchpad
** https://zerocode.espressif.com -> ESP-[ZeroCode|https://www.zeroco.de/]
** https://developer.apple.com/documentation/matter -> Home-Mobile-SDK für iOS
** https://developers.home.google.com/matter/apis/home -> Home-Mobile-SDK für Android
!Schwerpunkt: Kommunikation
* [serielle Kommunikation|https://docs.arduino.cc/language-reference/en/functions/communication/serial/] und [USB|https://forum.arduino.cc/t/wie-kann-ich-ein-usb-gerat-an-den-arduino-anschliessen/579323]...nehmt gerne [ESP-8266|https://www.amazon.de/AZDelivery-NodeMCU-ESP8266-ESP-12E-Development/dp/B06Y1ZPNMS/ref=sr_1_10?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dib=eyJ2IjoiMSJ9.-zg1BpTgZghB-EGClCjNoTInzab7iXIUQAQcftrPIMYn-_qlIryb_QjpOEIF-wW5CZD7gmwLsZDJ1281Ss8jTkiR56VjxJqyJS3_9fjaypF_1Pn2L7IT9Mpe97UBWPrXE-ljpFfJdY6lE7sjZwhm1oNfbIGSSm35RxnS3YhCKYOfH1TUrDy_DPEZj5H9ivuO1AaRUWCTgWB95zB7lkxinkWysMCf1LF-s3Pk15b06Sw.TcQYpsffcBTf_NxTJM8C4TyodZDJv0QC3gOsrhR57K8&dib_tag=se&keywords=esp+8266&qid=1780139536&sr=8-10] oder [ESP-32|https://www.amazon.de/ESP-WROOM-32-Bluetooth-Schnittstelle-ESP32-DevKitC-32-Entwicklungsboard/dp/B0FKYH5YDC/ref=sr_1_57?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dib=eyJ2IjoiMSJ9.z11goL7N4CalcCnjlXfnHHQ2TnA5QSgsXEVSveabIfs8OS7Fu2rjvM9CMOwuQ_knfTbBijYDN5KeX_5NDCOsjcYpyaxQyp-PxhEBsq3eGul9Qmx9sV0byYoCgX4pK2jdJFGWKEwDORCZjIkYVRfmL8x25Ay721As4iB6rMn5GQm4KN5qxg5g4yfh3_z3au1X-N-8epD5rWc8CQunxgtiFygo_OeYVnUtlab-e6KOa5FTQlzTcDE_cuOOxAAjYzyYGAbmIM_4GAjHkuu0mZNrA_4T9HSY-OvmZ90nwqc7ea4.Rytmy-91-1GKn8XzAzPHtfEO5aBNj46wPIZQKMcSjLU&dib_tag=se&keywords=esp+32&qid=1780139669&sr=8-57]
* WLAN: [Grundlagen|https://exp-tech.de/blogs/blog/arduino-tutorial-wifi?srsltid=AfmBOorKTdbXd7yNGnvu6m_mTbWpOrlODqQLxBLmDkfLtl7yGjhwWHcC] und [Nachrüsten|https://forum.arduino.cc/t/wlan-fur-arduino-uno-nachrusten/593188]
* Bluetooth: [Bluetooth-Grundlagen|https://forum.arduino.cc/t/grundlagen-bluetooth/1368100]
* ~LoRaWan: [Grundlagen|https://docs.arduino.cc/learn/communication/lorawan-101/] und [Hardware|https://exp-tech.de/collections/lora?srsltid=AfmBOoqa5Rx-05d-j6fdJxQ4AT-YjFujgbIFg5tn_Lhuwy76ILwHuzgY]; \\Mesh: [Vergleich|https://www.seeedstudio.com/blog/2026/03/23/meshcore-vs-meshtastic/?srsltid=AfmBOoppR-YWckmDc9aqxHuay3qmKO9CDZLOVZ5_Jvs9-OkCVtH6Jnti] zwischen [Meshtastic|https://meshtastic.org/] (estd. 2019) und [MeshCore|https://meshcore.co.uk/] (estd. 2025);\\[Seeed Sensecap T1000-E|https://www.antratek.de/sensecap-card-tracker-t1000-e-for-meshtastic] kann wahlweise sowohl ~MeshCore als auch Meshtastic\\[LoRaWan Up- und Downlinks|https://www.aeq-web.com/seeed-sensecap-t1000-lorawan-gps-tracker] für Sensecap T1000-E Mesh-Knoten
!Schwerpunkt: Rust und Embedded
* https://technologyreview.com/2023/02/14/1067869/rust-worlds-fastest-growing-programming-language -> MIT Technology Review "How Rust went from a side project to the world's most loved programming language", 2023
* https://blog.rust-lang.org/2015/05/15/Rust-1.0.html -> Rust Blog "Announcing Rust 1.0", 2015
* https://blog.rust-lang.org/2019/05/15/4-Years-Of_Rust.html -> Rust Blog "4 years of Rust", 2019
* https://yalantis.com/blog/rust-market-overview -> Yalantis, "The state of the Rust market in 2023"
* https://insights.stackoverflow.com/survey/2021#most-loved-dreaded-and-wanted -> Stack Overflow Developer Survey, 2021
* https://docs.rust-embedded.org/book/intro/no-std.htmö#hosted-environments -> The Embedded Rust Book
* https://doc.rust-lang.org/std -> The Rust Standard Library (std)
* https://github.com/espressif/esp-idf -> C und C++ unterstützendes Entwicklungsframework ESP-IDF
* https://sourceware.org/newlib -> Newlib.Bibliothek
* https://github.com/esp-rs/esp-idf-hal/blob/master/examples/blinky.rs -> Blinky-Beispiel läuft auf ESP-IDF
* https://github.com/esp-rs/esp-idf-hal/tree/master/examples -> ESP-IDF-HAL
* https://github.com/esp-rs/esp-hal/blob/main/esp32c3-hal/examples/blinky.rs -> Blinky-Beispiel läuft auf Bare Metal
* https://github.com/esp-rs/esp-hal/tree/main -> ESP-HAL
* https://github.com/espressif/rust-esp32-example -> ESP-IDF-Befehle in Rust