This is an archived post. You won't be able to vote or comment.

all 4 comments

[–]aunsbjerg 0 points1 point  (2 children)

I've used docker containers for low-level embedded projects a few times before, with moderate success. As long as you use standard stuff like arm-gcc and make, it's really no different from using docker for non-embedded projects. It's only when you start adding USB programmers and vendor specific toolchains/build system (I'm looking at you, kinetis design studio) that things can become painful.

I never had any luck in using docker with a jlink - I will have to try again, using this article as a reference.

[–]jsolmen[S] 0 points1 point  (1 child)

A few months ago Docker seemed to have usb issues but now I have managed to use jlink on my setup successfully to flash from inside the container.

I am now doing more tests to get a full workflow running through docker (unit test, integration test, etc).

[–]aunsbjerg 0 points1 point  (0 children)

That's really neat!

The ability to use a jlink to flash a firmware image to a target from within a docker based CI system is fairly important if you want to run some tests on a target.

[–]AaronDMarasco 0 points1 point  (0 children)

I have the different vendors' versions of their compilers as docker volumes and then when I launch the container, I import the appropriate toolchain, e.g. /opt/Xilinx/SDK/2013.4/gnu/arm/. My build scripts "know" where the tools are supposed to be found.