Stromversorgung (Achtung!)
- 3.3 V max.
- bis zu 180 mA erforderlich
GPIO
- 3.3V level
- 15 mA max. (!)
Speichergröße bestimmen
- esptool -p com3 flash_id
- see https://nodemcu.readthedocs.io/en/master/en/flash/#determine-flash-size
factory reset
- esptool -p COM3 -b 921600 erase_flash
- danach muss der Parametersektor neu geschrieben werden
(s. https://espressif.com/en/support/explore/get-started/esp8266/getting-started-guide)
Minimalbeschaltung
- GND
- 3.3V
- EN => 3.3V
- GPIO15 => pull-down
- GPIO0 => pull-up (optional)
- GPIO2 => pull-up (optional, build-in LED)
esptool versions
- esptool.py, esptool.exe 2.0.0 (in UDK enthalten)
unterstützt nur bis zu 4 MByte Flash - esptool.exe 0.4.13 (igrr und Arduino)
abweichende Syntax, ersetzt auch esptool2, deutlich langsamer - esptool2.exe
abweichende Syntax und Funktion, zum Erzeugen der Binärdateien
Toolchain
Espressif SDK
- es gibt verschiedene Ausprägungen (NONOS, RTOS, …)
- SDK RTOS „IDF Style“ scheint derzeit (2019/11) die aktuellste Version zu sein und orientiert sich wohl am ESP32 SDK
- die offiziellen Releases dazu finden sich hier
- in der Dokumentation wird allerdings direkt auf Github verwiesen
Setup
- Python 2.7.x installieren
- esp32_win32_msys2_environment_and_toolchain-20181001.zip entpacken
- xtensa-lx106-elf-win32-1.22.0-100-ge567ec7-5.2.0.zip neben xtensa-esp32-elf unter /var/opt entpacken
- /etc/profile.d/esp8266_toolchain.sh entsprechend esp32_toolchain.sh anlegen
- mingw32.exe
cd /opt git clone --recursive https://github.com/espressif/ESP8266_RTOS_SDK.git export IDF_PATH=/opt/ESP8266_RTOS_SDK python -m pip install --user -r $IDF_PATH/requirements.txt
Update
cd /opt/ESP8266_RTOS_SDK git fetch origin git merge origin
Test
mkdir /proj cd /proj cp -r $IDF_PATH/examples/get-started/hello_world . cd /proj/hello_world make menuconfig (set serial interface) make flash make monitor
ESP32 IDF
Viele Beispiele etc. sind bisher nur in der Version für ESP32 enthalten.
cd /opt git clone --recursive https://github.com/espressif/esp-idf
Spiffs
- spisffsgen.py und Makefile.projbuild aus esp-idf in /components/spiffs ergänzen
- irgenwie nicht kompatibel, mkspiffs klappt auch nicht
- Issue abwarten?