Docker environment to flash, configure, and interact with boards running Micropython.
Tested with:
- ESP32-DevKitC
- ESP32-PICO-KIT
Everything is executed using make
because it keeps the interface simple.
All targets assume that the ESP32 device is attached via USB to the DEVICE_PORT
defined in the Dockerfile
(default: /dev/ttyUSB0
).
If you want to run it without this device attached, use: docker-compose -f docker-compose-no-device.yml ...
make erase-esp32-flash
make flash-esp32-firmware
make configure-device
This:
- Copies all the files in the
./filesystem
directory in the Micropython filesystem root, including:
boot.py
- executed on power up and attempts to connect to WiFi (for the specifiedSSID
andPASSWORD
) and starts the web replwebrepl_cfg.py
- defines the webrepl password (PASS
) configuration variable
-
Resets the device in order to execute the new
boot.py
-
Prints the MAC address of the device in case you need to whitelist it
-
Waits for the network connection and then print the device's IP address
By default, this attempts to connect to the DEVICE_PORT
specified in the Dockerfile
using GNU Screen.
To kill a GNU Screen session, type: ctrl-a k y
make repl
This will give you a bash prompt within the container from which you can use esptool, ampy, etc. directly.
make shell