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
./filesystemdirectory in the Micropython filesystem root, including:
boot.py- executed on power up and attempts to connect to WiFi (for the specifiedSSIDandPASSWORD) 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