Clean up Dockerfile
All checks were successful
continuous-integration/drone Build is passing

This commit is contained in:
Lauri Võsandi 2022-03-15 22:25:36 +02:00 committed by Lauri Võsandi
parent ec77627535
commit 5e06963f3f
2 changed files with 18 additions and 4 deletions

View File

@ -6,8 +6,9 @@ RUN : \
&& apt-get autoremove -y \
&& rm -rf /var/lib/apt/lists/*
RUN git clone --depth 1 -b v1.17 https://github.com/micropython/micropython.git /src
RUN cd /src/mpy-cross && make
RUN cd /src/ports/unix && make submodules && make
RUN cd /src/ports/esp32 && bash -c "source /opt/esp/idf/export.sh && make"
WORKDIR /src
RUN make -C mpy-cross
WORKDIR /src/ports/esp32
RUN bash -c "source /opt/esp/idf/export.sh && make submodules && make"
RUN rm /src/ports/esp32/build-GENERIC/frozen_content.c
CMD /src/ports/unix/micropython
CMD make && cp build-GENERIC/firmware.bin /build/

13
README.md Normal file
View File

@ -0,0 +1,13 @@
This Docker image drastically simplifies building MicroPython binaries for ESP32 microcontrollers with
[frozen modules](https://docs.micropython.org/en/latest/reference/manifest.html#freezing-source-code)
-- that is flashable MicroPython images that include your payload as bytecode so they're easy to deploy.
Place your source code under `modules/` and the Docker image should pick them
up and bundle them into the resulting firmware image placed under `build/`
```
docker run --rm -v $PWD/modules:/src/ports/esp32/modules -v $PWD/build:/build harbor.k-space.ee/k-space/micropython-esp32
esptool.py -p /dev/ttyUSB0 --chip esp32 -b 460800 write_flash -z 0x1000 build/firmware.bin
```
Currently stuck with MicroPytyhon 1.17 until [this](https://github.com/micropython/micropython/issues/8410) fix is included with 1.19+.