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.
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 I’m running it on a Raspberry Pi Model 3.
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/
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.