Trouble flashing Spark 2

I’m in the process of trying to do a fresh install of Brewblox on a newly configured Raspberry Pi 4 B to connect to a Spark 2. I haven’t done an update in quite some time.

The install seems to have worked but now I can’t connect to the Spark 2. I’ve tried doing a firmware update via use but get the following error when attempting to flash:

pi@raspberrypi:~/brewblox $ brewblox-ctl flash
INFO       Flashing Spark 2...
edge: Pulling from brewblox/brewblox-firmware-flasher
Digest: sha256:950a453a717e6ae24320674a9d8d51f98da2ea9077c1a149f87beea978df757f
Status: Image is up to date for ghcr.io/brewblox/brewblox-firmware-flasher:edge
exec /bin/bash: exec format error
Command 'docker run -it --rm --privileged -v /dev:/dev --pull always ghcr.io/brewblox/brewblox-firmware-flasher:edge flash' returned non-zero exit status 1.

Any advice? The Spark 2 is used for fementation chamber / fridge so runs constantly. I also have a Spark 3 to update which I use with my brewing setup.

Do you also get an error if you run this command?

docker run --rm hello-world

Could you please run brewblox-ctl log ?

This error can happen if the docker image is the wrong architecture for the processor.

It should automatically download the right one though.
Maybe removing all docker images and redownloading them would help?

This problem is not related to the spark, but running the docker image on the pi.

I’m experiencing exactly the same. Just bought a new Photon one week ago and replaced it on my Spark 2. When l try to flash the photon or accesing the CLI it gives me this exec error.

I even formatted the SD card and started over with a clean installation of Raspberry OS and the latest Brewblox release but the error is still there :slightly_frowning_face: I’m running it on a Raspberry Pi Model 3.

Could you please run these commands? That could narrow down the problem.

This is what I get:


pi@raspberrypi:~/brewblox $ docker run --rm hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
04341b189be6: Pull complete
Digest: sha256:4e83453afed1b4fa1a3500525091dbfca6ce1e66903fd4c01ff015dbcb1ba33e
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (arm32v7)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

Thanks for the diagnostics!

Turned out a non-multiplatform image was used as a dependency. I fixed the issue, and pushed a hotfix. If you run brewblox-ctl flash or brewblox-ctl particle, it will automatically pull the updated image.

1 Like

Wow that was really a fast fix :smiley:

Thanks a lot you are doing such a great job! :+1:

I will give it a try next week when i’m at my brewery again.

Yeah!!! It is working now :smiley:

1 Like