Sign inSign up

theantz/espidf

By theantz

•Updated about 4 years ago

A dockerized esp-idf setup, build from source and patched to make it work on ppc64le.

Image
0

406

theantz/espidf repository overview

⁠espidf

An esp-idf⁠ docker image.

Some minor patches are applied to make it work on ppc64le.

The images are created using https://github.com/the-antz/docker-espidf⁠.

⁠requirements

The image is build on the assumption that your regular users uid is 1000 (to allow your non-root user to access a bind-mounted project directory).
The timezone is set to Europe/Berlin.
If you want/need to change these, you can

  • build this image from source⁠ with the correct values set or
  • build a new image based on this one, e.g.:
# I did not actually try this snippet. Might need a few tweaks.
FROM theantz/espidf:4.4.2

# change uid
usermod -o -u <new-uid> user
chown -R user:user /home/user

# set timezone
ARG TZ=Europe/Berlin
RUN ln -fs /usr/share/zoneinfo/$TZ /etc/localtime && dpkg-reconfigure --frontend noninteractive tzdata

CMD["/entry"]

⁠usage

⁠manual

With your device connected as $DEVICE (e.g. /dev/ttyUSB0):

docker run --rm -it --name espidf \
  -v ${ABS_YOUR_PROJECT_DIR}:/home/user/projects \
  --device=${DEVICE} \
  -e HOST_DIALOUT_ID=${HOST_DIALOUT_ID} \
  theantz/espidf:4.4.2

HOST_DIALOUT_ID is the gid of your hosts dialout group (you want to be able to flash your device, right?).

Or without a device connected:

docker run --rm -it --name espidf \
  -v ${ABS_YOUR_PROJECT_DIR}:/home/user/projects \
  theantz/espidf:4.4.2

To start another shell in the already running container: docker exec -it espidf /entry

⁠helper scripts

Alternatively you can use the ./start.sh and ./join.sh scripts from the source repo⁠ (see usage⁠).

Basically

./start.sh /dev/ttyUSB0 or
./start.sh
Optionally ./join.sh

Tag summary

Content type

Image

Digest

sha256:2460c301a…

Size

1.8 GB

Last updated

about 4 years ago

docker pull theantz/espidf:4.4.2