Brewblox release 2020/05/27

Relevant links:

Firmware release date: 2020/05/13

For the last few months, we have been working on building advanced process control for Brewblox.
After all: brewing is a process with multiple distinct steps.
Currently, Spark settings must be changed multiple times over the course of a brew day.

We aim to streamline this, so you only have to press “start” and “next” during a brew day.

This is implemented as the new automation service on the Pi.

The service is currently in alpha / preview, and is not yet enabled by default

You can use the UI to build processes with branching or repeating steps.
The service runs processes in the background, and can interact with all Brewblox devices.
This includes Spark controllers, but also third-party devices and REST APIs.

Processes can use sensor values from one device to adjust settings on another device.
They can also integrate manual actions by creating tasks for the user, and then waiting until the task is marked as done.

Later features will include integration with recipe formats such as beer.xml.

Everything else in Brewblox will keep working as usual.
The automation service is and will be completely optional.

We’ll make an announcement when the automation service is sufficiently polished and stable for general release.
For now you’ll see release notes split between regular changes, and those concerning automation.

For those wanting to try the preview version, we added a short guide.


  • (improve) Widgets now show hints / get started buttons when empty.
  • (feature) Some builder parts are now scalable. This applies to parts that did not previously have size sliders, and do not include tubing.
  • (feature) Merged the PwmPump and Pump parts in Builder. If you had a PwmPump, it is automatically migrated.
  • (feature) Value display parts now can act as tube. Do note that scaling parts with flow enabled rapidly increases flow calculation time.
  • (feature) The Graph Widget now has an action to quickly add fields from specific blocks.

Automation changes

  • (feature) Added webhook action
  • (improve) Changed Create Task to Edit Task.
  • (improve) Condition tasks are now created at step start.
  • (improve) Steps and focused phase (conditions / actions / transitions) are now shown side by side.
  • (fix) You can now use readonly fields as a condition.
  • (feature) You can now select all options when changing task status.

Having major issues trying to install this, i formatted my micro sd card & did a complete re install of raspberry lite, followed the install instructions to the letter, on the last step brewblox-ctl install, i get command not found, -bash : brewblox-ctl: command not found

What am i doing wrong? I fly out to work tomorrow for 8 days & need to get this set up, i’ve got a beer in the FV now without any temp control?

seems i had to exit Putty then log back into the pi to complete the last step

throwing up another error now?

E: Sub-process /usr/bin/dpkg returned an error code (1)
Command ‘sudo apt upgrade -y’ returned non-zero exit status 100.

I’ll add some feedback to let people know when a logout is required to access brewblox-ctl.

The apt upgrade error indicates that there was some other error. Can you still see that on screen?

You can retry brewblox-ctl install, and choose not to install apt packages. It will print the packages it tried to install.
After that, manually run apt install [packages] (insert the printed package names)

Looks like its worked, I did what you said, then logged out back in, then did the brewblox-ctl install & it skipped what it had installed, then went through pull requests, I got the success all done message so exited, just going through the brewblox up process then i will try to log in through my browser, thanks for the help.
I wonder if the issues i was having were due to me running a raspberry pi 4?

Without seeing the apt error I can only guess. Apt is pretty stable, so most likely it’s some sort of network error. It’s very unlikely to be caused by you using a Pi 4.

It’s a really nice update and wonderful incoming automation features. Thanks for the hard work!


I really really love the automation feature.

Am I right in the understanding that if I want to mash for 40 minutes at 62 degrees, I have to set a transition of Step 1 to >= 62 and the precondition of Step 2 to a duration of 40 minutes?

Otherwise the time it takes to heat to 62 is included in the 40 mins mash, right?

That’s correct. Durations start counting from phase start.

1 Like

I am playing with a simulator while I wait for my hardware in the mail, and I wanted to play with the automation features. I tried to set up a simple process to create a task, then end the process when the task is completed. When I click the arrow to “create process” from the automation widget, a get an error alert on the bottom of the screen that says “Failed to start process for SampleTemplate: 404 page not found”. Is this because I’m using a simulated spark service, or should I still be able to simulate an automated process?

From the PoV of the automation service, a spark simulator is identical to a real one.

Did you add the automation service to docker-compose.yml? (Instructions are in the automation guide)

I did. I was able to get the automation service added to my UI, and went through steps of creating a sample template. I did get a bit confused by the steps/conditions/actions/transitions, so I may not have done it right. but then I added my automation widget to the dashboard and clicked the play button and that’s when I got the error.

It’s not showing the warning, so the automation service has been active.

Could you please open your network tab in the browser console (ctrl + shift + i, then go to the network tab), and trigger the error again? You should see a red entry. If you right click on it, you have the option to save it as HAR. Please upload that file

On the Pi, could you please run brewblox-ctl, and then post the result termbin URL here?

In the Automation guide, maybe can you show how the complete yml file should look? I am getting some errors left and right. Cheerio.

I’ll have a look at docs. For now you can also use as an example. The config for the service is slightly different, but it should give a feel for compose config.

Pay attention to indents: compose uses 2 spaces for each level of indenting. Don’t mix them with tabs.

Yeah, it was a matter of getting the indents correct.

Hey Bob, thanks for your help. Here’s the info you asked for:

raspberrypi.local.har (10.9 KB)

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.