Thanx. For BrewPi I used Chromium for communication with the process (IP 0.0.0.0). Can I do it simpler? What do you guys do?
For using brewblox-ctl, it’s easiest to log in to your Pi using SSH. That way you don’t need to connect a keyboard/monitor to your Pi.
To use the UI, get the Pi IP address, and go there in the browser on your computer.
You can get the Pi IP address externally by installing Fing on your phone.
If you’re already logged in on the Pi, you can get its IP address by running:
ifconfig | grep 192
Example output:
pi@washberry:~ $ ifconfig | grep 192
inet 192.168.2.8 netmask 255.255.255.0 broadcast 192.168.2.255
here 192.168.2.8
is the IP address.
Yepp, a great step for me, perhaps a small step for mankind.
When I entered PTTY I needed the IP address. I found it on Fing. I suggest that you mention the IP address procedure on your installation instruction.
When I got to the IP site, I get a heavy security warning. Should I just forget it?
That’s a good idea - I’ll add some instructions on how to find the Pi IP.
Yes, you can click on more info -> continue to get past the security warning.
The warning is because it’s using a self-signed certificate for HTTPS. You can’t get officially signed SSL certificates if your website is not accessible from the internet. (and you don’t want that here)
Yepp, and what you just thought me could be entered on the instructions as well: I can enter the IP in my PC browser.
Previously, on BrewPi, I used the Chromium browser end TeamViewer for remote. I think I just got a push in an improved direction.
The security warning is explained in the instructions (under step 7), but I’ll make it somewhat more explicit about IP addresses.
Yes, I agree. The security warnings are very well explained. I have been running in my own small circles here…
I think I am trough todays problems and ready to go on with creating a fermentation process.
I thank you very much for your patience with me.
Cheers
I hope im not in the wrong category here: but im having issues with basically starting over and reinstalling docker and getting BrewBlox up.
pi@Brewpi:~/brewblox $ brewblox-ctl up
No brewblox-ctl extensions found in current directory
Running command:
docker-compose up -d --remove-orphans
Starting brewblox_mdns_1 … error
Starting brewblox_traefik_1 …
Starting brewblox_eventbus_1 …
Starting brewblox_ui_1 …
Starting brewblox_datastore_1 …
Starting brewblox_influx_1 …
Starting brewblox_ui_1 … error
ERROR: for brewblox_mdns_1 Cannot start service mdns: failed to listen to abstract unix socket “/containerd-shim/moby/6bd6cb88cb7e025f95dff370fe6db5623701484072ff28efd23d04da0bf26cc6/shim.sock”: listen unix /containerd-shim/moby/6bd6Starting brewblox_eventbus_1 … error
ERROR: for brewblox_ui_1 Cannot start service ui: failed to listen to abstract unix socket “/containerd-shim/moby/eea01487d32e69be380bc3f0294bd2fa26d7ddfe12001936350b3e76c36b62f1/shim.sock”: listen unix /containerd-shim/moby/eea01487d32e69be380bc3f0294bd2fa26d7ddfe12001936350b3e76c36b62f1/shim.sock: bind: address already in use: unknown
Starting brewblox_datastore_1 … error
oby/af89fd40cf825ceefbb3f339915f875a3ebcf54ac0f6093bed05ae24ee12cffe/shim.sock: bind: address already in use: unknown
Starting brewblox_traefik_1 … error
Starting brewblox_influx_1 … error
ERROR: for brewblox_influx_1 Cannot start service influx: failed to listen to abstract unix socket “/containerd-shim/moby/30e266a8e5fcd1d6b742ab409e0b64bd53779c546b6cb00c727d5c5903ec0f8c/shim.sock”: listen unix /containerd-shim/moby/30e266a8e5fcd1d6b742ab409e0b64bd53779c546b6cb00c727d5c5903ec0f8c/shim.sock: bind: address already in use: unknown
ERROR: for brewblox_traefik_1 Cannot start service traefik: failed to listen to abstract unix socket “/containerd-shim/moby/309790c55d65f0c82a3e80ededef43923e10243a47d16b0340e48cbba4a25b69/shim.sock”: listen unix /containerd-shim/moby/309790c55d65f0c82a3e80ededef43923e10243a47d16b0340e48cbba4a25b69/shim.sock: bind: address already in use: unknown
ERROR: for mdns Cannot start service mdns: failed to listen to abstract unix socket “/containerd-shim/moby/6bd6cb88cb7e025f95dff370fe6db5623701484072ff28efd23d04da0bf26cc6/shim.sock”: listen unix /containerd-shim/moby/6bd6cb88cb7e025f95dff370fe6db5623701484072ff28efd23d04da0bf26cc6/shim.sock: bind: address already in use: unknown
ERROR: for traefik Cannot start service traefik: failed to listen to abstract unix socket “/containerd-shim/moby/309790c55d65f0c82a3e80ededef43923e10243a47d16b0340e48cbba4a25b69/shim.sock”: listen unix /containerd-shim/moby/309790c55d65f0c82a3e80ededef43923e10243a47d16b0340e48cbba4a25b69/shim.sock: bind: address already in use: unknown
ERROR: for ui Cannot start service ui: failed to listen to abstract unix socket “/containerd-shim/moby/eea01487d32e69be380bc3f0294bd2fa26d7ddfe12001936350b3e76c36b62f1/shim.sock”: listen unix /containerd-shim/moby/eea01487d32e69be380bc3f0294bd2fa26d7ddfe12001936350b3e76c36b62f1/shim.sock: bind: address already in use: unknown
ERROR: for eventbus Cannot start service eventbus: failed to listen to abstract unix socket “/containerd-shim/moby/af89fd40cf825ceefbb3f339915f875a3ebcf54ac0f6093bed05ae24ee12cffe/shim.sock”: listen unix /containerd-shim/moby/af89fd40cf825ceefbb3f339915f875a3ebcf54ac0f6093bed05ae24ee12cffe/shim.sock: bind: address already in use: unknown
ERROR: for datastore Cannot start service datastore: failed to listen to abstract unix socket “/containerd-shim/moby/76afcf03f05e533d2c0396ce3dc1aed6d72f7228b44a2e5b508f463e76f46acd/shim.sock”: listen unix /containerd-shim/moby/76afcf03f05e533d2c0396ce3dc1aed6d72f7228b44a2e5b508f463e76f46acd/shim.sock: bind: address already in use: unknown
ERROR: for influx Cannot start service influx: failed to listen to abstract unix socket “/containerd-shim/moby/30e266a8e5fcd1d6b742ab409e0b64bd53779c546b6cb00c727d5c5903ec0f8c/shim.sock”: listen unix /containerd-shim/moby/30e266a8e5fcd1d6b742ab409e0b64bd53779c546b6cb00c727d5c5903ec0f8c/shim.sock: bind: address already in use: unknown
ERROR: Encountered errors while bringing up the project.
Traceback (most recent call last):
File “/usr/local/bin/brewblox-ctl”, line 11, in
load_entry_point(‘brewblox-ctl==0.7.0’, ‘console_scripts’, ‘brewblox-ctl’)()
File “/usr/local/lib/python3.6/site-packages/brewblox_ctl/main.py”, line 81, in main
cli()
File “/usr/local/lib/python3.6/site-packages/click/core.py”, line 764, in call
return self.main(*args, **kwargs)
File “/usr/local/lib/python3.6/site-packages/click/core.py”, line 717, in main
rv = self.invoke(ctx)
File “/usr/local/lib/python3.6/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/usr/local/lib/python3.6/site-packages/click/core.py”, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “/usr/local/lib/python3.6/site-packages/click/core.py”, line 555, in invoke
return callback(*args, **kwargs)
File “/usr/local/lib/python3.6/site-packages/brewblox_ctl/commands.py”, line 42, in up
utils.run_all(shell_commands)
File “/usr/local/lib/python3.6/site-packages/brewblox_ctl/utils.py”, line 130, in run_all
return [run(cmd) for cmd in shell_cmds]
File “/usr/local/lib/python3.6/site-packages/brewblox_ctl/utils.py”, line 130, in
return [run(cmd) for cmd in shell_cmds]
File “/usr/local/lib/python3.6/site-packages/brewblox_ctl/utils.py”, line 124, in run
return check_call(shell_cmd, shell=True, stderr=STDOUT)
File “/usr/local/lib/python3.6/subprocess.py”, line 291, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command ‘docker-compose up -d --remove-orphans’ returned non-zero exit status 1.
pi@Brewpi:~/brewblox $
If you want to do a clean install, I recommend removing all brewblox components, and then doing a clean install.
To remove the brewblox dir, stop all containers, and remove brewblox-ctl:
cd ~
sudo rm -rf brewblox
docker kill $(docker ps -aq)
sudo pip3 uninstall brewblox-ctl
pip3 uninstall brewblox-ctl
ok ran all that and got to here:
pi@Brewpi : ~ $ pip3 install --user setuptools brewblox-ctl
Requirement already satisfied: setuptools in /usr/local/lib/python3.6/site-packages
Requirement already satisfied: brewblox-ctl in ./.local/lib/python3.6/site-packages
Requirement already satisfied: python-dotenv[cli]<0.14.0,>=0.13.0 in ./.local/lib/python3.6/site-packages (from brewblox-ctl)
Requirement already satisfied: zeroconf<0.29.0,>=0.28.1 in ./.local/lib/python3.6/site-packages (from brewblox-ctl)
Requirement already satisfied: click<8.0.0,>=7.1.1 in ./.local/lib/python3.6/site-packages (from brewblox-ctl)
Requirement already satisfied: pyyaml<6.0.0,>=5.3.1 in ./.local/lib/python3.6/site-packages (from brewblox-ctl)
Requirement already satisfied: docker<5.0.0,>=4.3.1 in ./.local/lib/python3.6/site-packages (from brewblox-ctl)
Requirement already satisfied: requests<3.0.0,>=2.23.0 in ./.local/lib/python3.6/site-packages (from brewblox-ctl)
Requirement already satisfied: configobj<6.0.0,>=5.0.6 in ./.local/lib/python3.6/site-packages (from brewblox-ctl)
Requirement already satisfied: docker-compose<2.0.0,>=1.26.2 in ./.local/lib/python3.6/site-packages (from brewblox-ctl)
Requirement already satisfied: ifaddr>=0.1.7 in ./.local/lib/python3.6/site-packages (from zeroconf<0.29.0,>=0.28.1->brewblox-ctl)
Requirement already satisfied: websocket-client>=0.32.0 in ./.local/lib/python3.6/site-packages (from docker<5.0.0,>=4.3.1->brewblox-ctl)
Requirement already satisfied: six>=1.4.0 in ./.local/lib/python3.6/site-packages (from docker<5.0.0,>=4.3.1->brewblox-ctl)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in ./.local/lib/python3.6/site-packages (from requests<3.0.0,>=2.23.0->brewblox-ctl)
Requirement already satisfied: idna<3,>=2.5 in ./.local/lib/python3.6/site-packages (from requests<3.0.0,>=2.23.0->brewblox-ctl)
Requirement already satisfied: certifi>=2017.4.17 in ./.local/lib/python3.6/site-packages (from requests<3.0.0,>=2.23.0->brewblox-ctl)
Requirement already satisfied: chardet<4,>=3.0.2 in ./.local/lib/python3.6/site-packages (from requests<3.0.0,>=2.23.0->brewblox-ctl)
Requirement already satisfied: docopt<1,>=0.6.1 in ./.local/lib/python3.6/site-packages (from docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
Requirement already satisfied: distro<2,>=1.5.0 in ./.local/lib/python3.6/site-packages (from docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
Requirement already satisfied: jsonschema<4,>=2.5.1 in ./.local/lib/python3.6/site-packages (from docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
Requirement already satisfied: texttable<2,>=0.9.0 in ./.local/lib/python3.6/site-packages (from docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
Requirement already satisfied: cached-property<2,>=1.2.0 in ./.local/lib/python3.6/site-packages (from docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
Requirement already satisfied: dockerpty<1,>=0.4.1 in ./.local/lib/python3.6/site-packages (from docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
Requirement already satisfied: pyrsistent>=0.14.0 in ./.local/lib/python3.6/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
Requirement already satisfied: attrs>=17.4.0 in ./.local/lib/python3.6/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
Requirement already satisfied: importlib-metadata; python_version < “3.8” in ./.local/lib/python3.6/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
Requirement already satisfied: zipp>=0.5 in ./.local/lib/python3.6/site-packages (from importlib-metadata; python_version < “3.8”->jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.26.2->brewblox-ctl)
You are using pip version 9.0.1, however version 20.2.2 is available.
You should consider upgrading via the ‘pip install --upgrade pip’ command.
pi@Brewpi : ~ $ brewblox-ctl install
bash: brewblox-ctl: command not found
pi@Brewpi : ~ $ exec $SHELL --login
SSH is enabled and the default password for the ‘pi’ user has not been changed.
This is a security risk - please login as the ‘pi’ user and type ‘passwd’ to set a new password.
pi@Brewpi : ~ $ brewblox-ctl install
bash: brewblox-ctl: command not found
pi@Brewpi : ~ $
What is the output from
echo $PATH
Can you run
~/.local/bin/brewblox-ctl --help
If you can run brewblox-ctl from the abs path, you may need to extend your path.
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
exec $SHELL --login
ok here you go:
pi@Brewpi:~ $ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
pi@Brewpi:~ $ ~/.local/bin/brewblox-ctl --help
Usage: brewblox-ctl [OPTIONS] COMMAND [ARGS]…
The Brewblox management tool.
It can be used to create and control Brewblox configurations. More
commands are available when used in a Brewblox installation directory.
If the command you’re looking for was not found, please check your current
directory.
By default, Brewblox is installed to ~/brewblox.
Example calls:
brewblox-ctl install
brewblox-ctl --quiet down
brewblox-ctl --verbose up
Options:
-y, --yes Do not prompt to confirm commands.
-d, --dry, --dry-run Dry run mode: echo commands instead of running them.
-q, --quiet Show less detailed output.
-v, --verbose Show more detailed output.
–color / --no-color Format messages with unicode color codes.
–help Show this message and exit.
Commands:
up Start all services.
down Stop all services.
restart Stop and start all services.
follow Show logs for one or more services.
kill Stop and remove all containers on this computer.
install Create Brewblox directory; install system dependencies;…
flash Flash firmware on Spark.
wifi DISABLED: Configure Spark Wifi settings.
particle Start a Docker container with access to the Particle CLI.
disable-ipv6 Disable IPv6 support on the host machine.
env List, get, or set env values.
pi@Brewpi:~ $ echo ‘export PATH="$HOME/.local/bin:$PATH"’ >> ~/.bashrc
pi@Brewpi:~ $ exec $SHELL --login
SSH is enabled and the default password for the ‘pi’ user has not been changed.
This is a security risk - please login as the ‘pi’ user and type ‘passwd’ to set a new password.
pi@Brewpi:~ $
If you now call brewblox-ctl
, does it work?
yes - but now I have this:
pi@Brewpi:~/brewblox $ brewblox-ctl up
ERROR:
Can’t find a suitable configuration file in this directory or any
parent. Are you in the right directory?
Supported filenames: docker-compose.yml, docker-compose.yaml
Command ‘docker-compose up -d --remove-orphans’ returned non-zero exit status 1.
pi@Brewpi:~/brewblox $ ls
brewblox_ctl_lib
but the install process completed without errors…
pi@Brewpi : ~/brewblox/brewblox $ ls
pi@Brewpi : ~/brewblox/brewblox $ pwd
/home/pi/brewblox/brewblox
pi@Brewpi : ~/brewblox/brewblox $
After install, you need to run brewblox-ctl setup
in the ~/brewblox dir.
ok sorry slow bus: - ok looks like it loaded - now ill be onto the next part about asking you about the blocks for my setup - I should start a new post about my setup with pictures for the diagram layout - would that be helpful for you and others to reference to help me troubleshoot? in case something is missing etc.?
You can get started with one of the wizards. Feel free to ask if anything is still missing or unclear.
Hello, Thought I would follow the conversation here. I am now on the UI web page which loads fine.
I simply want the dashboard with temperatures to show. Under the Spark-one it offers me to do an update. It was strange because I got a message in the box stating that it should be up to date.
When I do it, I get the following message on the UI:
Update failed: Request failed with status code 424
If retrying the update does not work, please run 'brewblox-ctl flash'
Log messages
Started updating spark-one@/dev/ttyACM0 to version 94793741 (2020-08-24 15:59:14 +0200)
Sending update command to controller
Waiting for normal connection to close
Connecting to /dev/ttyACM0
Failed to update firmware: SerialException([Errno 6] could not open port /dev/ttyACM0: [Errno 6] No such device or address: '/dev/ttyACM0')
Scheduling service reboot
So I went to the terminal and did the following:
pi@raspberrypi:~/brewblox $ brewblox-ctl flash
Please press ENTER when your Spark is connected over USB
INFO Pulling flasher image...
edge: Pulling from brewblox/firmware-flasher
3cfb62949d9d: Pull complete
1ef8a3a07026: Pull complete
b0a4348231c5: Pull complete
df326638a053: Pull complete
ea880123298f: Pull complete
0859a37932b6: Pull complete
8d15d34ed1fe: Pull complete
472f5e1053bb: Pull complete
3d788ca7e49b: Pull complete
d2cd1c45fa37: Pull complete
6a1ef8b24086: Pull complete
Digest: sha256:59d0c8da6abd437b43ebd4b65e7921cee917c53cc58a8302794ae44eb729042d
Status: Downloaded newer image for brewblox/firmware-flasher:edge
docker.io/brewblox/firmware-flasher:edge
INFO Stopping services...
Stopping brewblox_datastore_1 ... done
Stopping brewblox_eventbus_1 ...
Stopping brewblox_ui_1 ...
Stopping brewblox_influx_1 ...
Stopping brewblox_history_1 ...
Stopping brewblox_traefik_1 ...
Stopping brewblox_spark-one_1 ...
ERROR: for brewblox_influx_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=210)
ERROR: for brewblox_history_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=210)
ERROR: for brewblox_ui_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=210)
ERROR: for brewblox_traefik_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=210)
ERROR: for brewblox_spark-one_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=210)
ERROR: for brewblox_eventbus_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=210)
ERROR: An HTTP request took too long to complete. Retry with --verbose to obtain debug information.
If you encounter this issue regularly because of slow network conditions, consider setting COMPOSE_HTTP_TIMEOUT to a higher value (current value: 200).
Command 'docker-compose down' returned non-zero exit status 1.
pi@raspberrypi:~/brewblox $ brewblox-ctl particle -c flash-bootloader
Please press ENTER when your Spark is connected over USB
INFO Pulling flasher image...
edge: Pulling from brewblox/firmware-flasher
Digest: sha256:59d0c8da6abd437b43ebd4b65e7921cee917c53cc58a8302794ae44eb729042d
Status: Image is up to date for brewblox/firmware-flasher:edge
docker.io/brewblox/firmware-flasher:edge
INFO Stopping services...
Removing brewblox_datastore_1 ... done
Removing brewblox_eventbus_1 ... done
Removing brewblox_ui_1 ... done
Removing brewblox_influx_1 ... done
Removing brewblox_history_1 ... done
Removing brewblox_traefik_1 ... done
Removing brewblox_spark-one_1 ... done
Removing network brewblox_default
INFO Starting Particle image...
INFO Type 'exit' and press enter to exit the shell
Flashing P1 bootloader...
Done.
sending file: bootloader-p1.bin
Flash success!
Flash success!
Done.
pi@raspberrypi:~/brewblox $ brewblox-ctl up
Creating network "brewblox_default" with the default driver
Creating brewblox_history_1 ...
Creating brewblox_traefik_1 ...
Creating brewblox_influx_1 ...
Creating brewblox_spark-one_1 ...
Creating brewblox_ui_1 ...
Creating brewblox_eventbus_1 ...
Creating brewblox_datastore_1 ...
ERROR: for brewblox_history_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for brewblox_spark-one_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for brewblox_ui_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for brewblox_influx_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for brewblox_traefik_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for brewblox_datastore_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for brewblox_eventbus_1 UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for history UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for spark-one UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for ui UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for influx UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for traefik UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for datastore UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: for eventbus UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=200)
ERROR: An HTTP request took too long to complete. Retry with --verbose to obtain debug information.
If you encounter this issue regularly because of slow network conditions, consider setting COMPOSE_HTTP_TIMEOUT to a higher value (current value: 200).
Command 'docker-compose up -d --remove-orphans' returned non-zero exit status 1.
pi@raspberrypi:~/brewblox $ brewblox-ctl --verbose up
SHELL docker-compose up -d --remove-orphans
brewblox_datastore_1 is up-to-date
brewblox_spark-one_1 is up-to-date
brewblox_traefik_1 is up-to-date
brewblox_ui_1 is up-to-date
brewblox_history_1 is up-to-date
brewblox_influx_1 is up-to-date
brewblox_eventbus_1 is up-to-date
pi@raspberrypi:~/brewblox $
I reload the web page and it still asks for an update. I do the UI update and still get the same issue.
Does brewblox-ctl log
work now?
The timeout errors still appear, indicating something is suffering from hangups.
Common issue checklist:
- How old is your SD card?
- Did you previously run
brewblox-ctl disable-ipv6
? - Have you disabled swap memory on your Pi?
(“huh, what?” are perfectly normal answers to the last two questions)
pi@raspberrypi:~/brewblox $ brewblox-ctl log
INFO Log file: /home/pi/brewblox/brewblox.log
/bin/sh: 1: echo: echo: I/O error
Command ‘echo “BREWBLOX DIAGNOSTIC DUMP” > brewblox.log’ returned non-zero exit status 1.
The SD card is less than 2 years old.
I did not run the disable-ipv6 command.
I remember thinking about removing the swap memory but I do not think I did.
But yes, “huh, What?”