ESP32 / ESP8266

ESP Hardware

ESP8266ESP32
CPU-Kerne12
Taktrate160 MHz240 MHz
Flash-Speicher4 MB4 MB
SRAM160 KB512 KB
GPIO-Pins1736
Touchsceeen-Sensorennein10
ADC-Kanäle116
Bluetoothneinja
Hardware-PWM-Kanäleneinja
Software-PWM-Kanäle816
Verbrauch80 mA260 mA

Wer ist besser geeignet für simple Sensoren?

Beide Micro-PCs besitzen zahlreiche GPIO-Pins, unterstützen die Funkverbindung per WLAN, lassen sich (sofern du die NodeMCU-Variante der Boards verwendest) per micro USB Kabel mit Strom versorgen und können mit der Arduino IDE programmiert werden. Während beide Boards je nach Marktplatz für ca 3-6€ erhältlich sind, ist der ESP8266 aufgrund des fehlenden zweitren Kerns und da er kein Bluetooth unterstützt in der Regel ein wenig günstiger.

Wer ist besser geeignet für komplexe Geräte?

Für komplexere Geräte, die Multithreading oder eine Bluetooth-Verbindung voraussetzen ist hingegen der ESP32 vermutlich die sinnvollere Wahl, da der ESP8266 diese Funktionen schlicht einfach nicht bietet.

Peripherie

ESP Projekte

esptool

  • esptool.py –port /dev/ttyUSB0 erase_flash
  • esptool.py –chip esp32 –port /dev/ttyUSB0 write_flash -z 0x1000 /home/cs/Downloads/esp32-20220117-v1.18.bin
  • die Befehle werden fehlerhafte aus DokuWiki kopiert am besten von hier kopieren.

Serielle Terminals

  • picocom /dev/ttyUSB0 -b115200
  • uPyLoader uPyLoader git
  • rshell
    • Aufruf: ins Arbeitsverzeichnis wechselm und dann rshell –buffer-size=30 -p/dev/ttyUSB0 -a -e nano
    • Dann ähnlich wie bash. Der ESP32 wird mit /pyboard angesprochen, z.B. cd /pyboard.
    • repl ist möglich
    • cp file.py /pyboard kopiert file.py auf den ESP32
    • edit /pyboard/start.py editiert auf dem ESP32
    • Aktuelles Verzeichnis synchronisieren: rsync . /pyboard

μPyLoader

Jupyter

  • Jupyter MicroPython Kernel „pip install jupyter_micropython_kernel“, und „python -m jupyter_micropython_kernel.install“
  • im Terminal „jupyter notebook“ starten und mit %serialconnect to –port=/dev/ttyUSB0 –baud=115200 zum ESP32 verbinden

Nützliche Links