User Interface Goes Away

Got the brew system up and running today for a test brew. Had no issues except for the User Interface, which seems to “go away” at various times and has to be continuously reloaded. Very simple interface and the temp control is excellent! See the interface photos below:

The graph widget and timer widget stay “up” but all the ‘blocks” disappear. Pain in the ass to continuously reload. How can I alleviate this?

Ric

Could you please run brewblox-ctl log, and post the result url?

If you open the browser dev tab (ctrl+shift+i), and keep it open until the block widgets disappear, does that show any errors?

Did the ctrl+shift+i … Saw no errors or warnings, though perhaps I’m not looking at the correct part.

https://termbin.com/yus0

Ric

Your spark-one service has no device ID set. This will make it connect to whichever spark controller it discovers first.
Going by your log, you have a Spark 3 and a Spark 4. I assume spark-one to be the service for the Spark 3, and spark-rims for the Spark 4.

If this assumption is correct, you can fix your configuration by running

brewblox-ctl add-spark -n spark-one --device-id 4C0036000851353532343835

Alternatively (if you can’t copy/paste), run brewblox-ctl add-spark -n spark-one, and select the above device ID from the discovered options.

I ran this, since the UI I was losing was the spark-rims (Spark 4) service…

brewblox-ctl add-spark -n spark-rims --device-id 4C0036000851353532343835

Got this:

I guess there’s something fundamental that I do not understand about the spark-service, or it will not function with my current Raspberry Server.

I sure hope I will be able to load the back-up configuration and do not have to start all over again to configure the UI…

https://termbin.com/td0j

spark-one connecting to your rims spark can still cause you to lose spark-rims messages. This happens if messages for one service are sent to the other.

In this case, run both:

brewblox-ctl add-spark -n spark-one
brewblox-ctl add-spark -n spark-rims

Discovery tells you whether a device is a spark 3 or 4, so for both pick the right model.

Thanks!

OK…Here…we…go…

OK, wait a minute… I have two spark-one services, both with Spark 3’s on two different fermentation fridges. It has never been a problem keeping these separate.

OK. Got it! Ran :

brewblox-ctl add-spark -n spark-rims

and picked out the Spark 4. The UI came up on the next reload.

Thanks.

I’m currently fermenting in Fermentation System Ava, one of the Spark 3 services and do not want to mess with it. Can I rename the other Spark 3 service on Fermentation System Rylie without messing up the current fermentation controller?

Crap. UI just went blank again…

Can I run:

brewblox-ctl add-spark -n spark-rylie

and

brewblox-ctl add-spark -n spark-ava

and select the proper Spark 3’s for each?

They showed up as selections when I ran: brewblox-ctl add-spark -n spark-rims

I’m not 100% sure on all details of your setup(s), so I’ll just keep it generic:

You want 1 spark service per controller. Not more, not less.
It does not matter what Pi a spark service runs on: services from two different Pi’s connecting to the same controller will also cause problems.

You always want to have the same service connect to the same controller. You select the controller during brewblox-ctl add-spark.

Well…sorry to say that that didn’t work. Glad I did not try it on the active fermentation system.

Looks like I will have to start over, reload the Op System on the RaspberryPi and then reload BrewBlox.

Tomorrow.

These were the exact same issues I was having last week, not being able to give discrete names to either of the Spark 3’s.

Brewblox services | Brewblox may be helpful to understand service-controller relations.

I recommend first using brewblox-ctl add-spark / brewblox-ctl service remove to make sure that your docker-compose.yml file contains exactly the services you want, and all services have a --device-id=XXXXX setting.

When that’s done, restart brewblox, open the UI, and the new services will pop up.

Thanks. Read the Brewblox services section in the guide and followed it after reconfiguring the RPi and Brewblox. The goal here was to change (rename?) the second spark-one service to spark-two. Seemed as though it might be successful, but I am still getting the same errors.

On a better note, it seems that if I shutdown the second spark-one service (on an idle fermentation fridge) the Spark 4 (spark-rims) interface seems a lot more stable.

Here’s a diagram of my setup.

Is it going to be possible to rename the second spark-one service to spark-two?

Yes, the service names are independent per Pi, so you can rename it to whatever you want. Just make sure only the services you want are present in all docker-compose files, and that all services have a --device-id set.

Be aware that USB communication is no longer used on the Spark 4. It’s probably using wifi right now.

If all your devices are in the same LAN, you can also use a single Pi to control all sparks and setups.

Going to be out of pocket for a day, so I will get back on it tomorrow afternoon, or maybe Friday.

I’m thinking that when I was selecting the spark to rename, I should have selected the LAN option for that spark (192.168.1.51) and not the USB selection.

Thanks for the help.

Unless specifically excluded, it will try both USB and LAN while looking for a controller with the right device ID.

I’M BACK!!!

Looks like I made some progress in getting my second Spark 3 controller service renamed "spark-two.

With ALL of the other spark controllers TURNED OFF, I ran brewblox-ctl discover-spark. It appears to be successfully renamed. Huh?

So, I then rebooted everything including the user interface. The spark-two service came up green in the “left hand” menu box.

I started to run the Quick Start - Fermentation Fridge Wizard. Got to the device discovery screen and the Compressor Driver SSR and the two one-wire temperature sensors were listed! So, SUCCESS right???

As I was naming these devices, the spark-two service returned to it’s “yellow mode” and everything stopped functioning. EXPLETIVE DELETED, but I’ll probably start getting complaints from my neighbors if I can’t get this working soon.

Where to go from here???

Were all other pi servers also stopped or turned off? The service connects to the controller, so if you had a service running on another pi, it very well could connect to this controller.

Could you please run brewblox-ctl log on all servers?