We're happy to help with any problems or questions that arise when using BrewBlox. You can reach us on the forum: https://community.brewpi.com
Our first reply often consists of the same handful of questions. To save you some time, you may want to run through this checklist first.
- Is your system and firmware up-to-date? You can run
brewblox-ctl updateto check, or find the latest release date in https://brewblox.netlify.com/user/release_notes.html
brewblox-ctl loggenerates all kinds of logs and diagnostic data for us to look at. It will also create a termbin.com link. You can copy that URL in your post.
- In the UI sidebar, bottom left corner there is a "bug" button. Click here, and choose "Export API errors to file". Please attach this file to your post.
- If your Spark service page is working, it may be useful to include your Blocks. You can export them by clicking on the "Actions" button in the top right corner of the service page, and then choosing "Import/Export Blocks". Please attach the generated file to your post.
Known issues / workarounds
We quickly fix most bugs we find. Some of them can't be fixed immediately, but have a temporary workaround.
We keep this list updated with the issues we're aware of, but haven't yet permanently resolved.
After (re)starting, all my services and dashboards disappeared
Sometimes the datastore service hangs on startup. To check, you can view the Docker logs using the
docker-compose logs datastore command.
After startup, the service is expected to print the following to its log:
datastore_1 | **************************************************** datastore_1 | WARNING: CouchDB is running in Admin Party mode. datastore_1 | This will allow anyone with access to the datastore_1 | CouchDB port to access your database. In datastore_1 | Docker's default configuration, this is datastore_1 | effectively any other container on the same datastore_1 | system. datastore_1 | Use "-e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password" datastore_1 | to set it in "docker run". datastore_1 | ****************************************************
The service hangs if after 2-3 minutes after startup it still hasn't logged anything.
Until we find a permanent solution, you can try the following workaround.
- Close the UI page.
- Stop the service:
docker-compose stop datastore
- Recreate the service:
docker-compose up -d
- Check logs for startup message:
docker-compose logs --follow datastore
If it hasn't logged the startup message after 2-3 minutes, press Ctrl-C to exit the logs, and retry.
Frequently asked questions
My service can't connect to my Spark over Wifi
For reference, you can find the full guide on connection settings guide here.
Assuming you're still using the default settings (haven't added device-specific arguments to
docker-compose.yml), you can use the following steps to troubleshoot your connection.
Is the Spark connected to Wifi?
- Did you run
- Does the Spark LCD show an IP address?
If the answer to either is no: run
Is the Spark accessible from your computer and the Raspberry Pi?
- Can you visit the Spark IP in your browser? It should show a short placeholder message.
- If you run
brewblox-ctl http get <SPARK_IP>, do you see the html for the placeholder message?
If the answer to either is no, your Spark and Pi are likely using different subnets in your home network. Check your router configuration to allow them to communicate.
If the answer to all questions is yes, but the service still can't find your Spark, it may be a problem with mDNS.
By default, we use multicast DNS to discover Sparks that are not connected over USB. In most - but not all - routers, mDNS is enabled by default. Check your router configuration for settings related to multicast DNS.
If you can't solve the problem in your router settings, it may be preferable to skip discovery, and add
--device-host=SPARK_IP to your docker-compose.yml file. You can find the syntax in the connection settings guide.
When doing so, it is advised to assign a fixed IP address to the Spark in your router settings. (Also called "static DHCP lease").
How do I display temperature in Fahrenheit?
There are two settings: one for the UI and history, one for the Spark LCD.
- Go to the Spark service page
- In the top right corner, click on the
- Click on
Units, and change the
- Go to the Spark service page.
- Click to select the
DisplaySettingsblock in the block list.
- Click on the cogwheel in the DisplaySettings widget to open settings.
- Click on the current
Temperature Unitto change the value.
Why can removed or renamed blocks still be selected in the Graph Widget settings?
History data is not changed when a block changes name. After a name change, the service simply starts publishing data under the new name.
The old name will disappear from the Graph widget settings 24 hours after the block is removed or renamed.
Units are part of the field name. For 24 hours after changing units from Celsius to Fahrenheit, you'll see both
spark-one/block/value[degF] in the Graph settings.