BrewPi display screen gone dark?

I have a relatively new BrewPi Spark 3 and Raspberry Pi 3 Model B+. Up until yesterday they worked as expected as I’m learning the new system. Last night I ran brewblox-ctl update and since that time the display on my Spark3 is very dark. Not black, just very faint as if the brightness is turned way down. And all the vibrant colors I set up are washed out now.

Separately but perhaps related, my cooling actuator doesn’t seem to be getting called any longer. The pin state is 1 but the relay is not getting the signal to come on. Could be the same for the heating actuator but I haven’t tested.

The DisplaySettings block can set screen brightness. You can find it on the Spark Controller 'spark-one' page in the UI. (click the cogwheel / expand to full settings to see the slider).

Is the actuator displaying a spinner on top of the on/off button? Fridges have a very long minimum off time. This is also displayed as “constrained by” in the digital actuator widget (also accessible on the service page).

The percentage on the slider was fully up to 100 when I checked, so I slid it to a lower value and then up to 100 again. That didn’t change the status quo. I changed the text at the bottom of the display and verified that this went through, so the screen isn’t fully malfunctioning.

RE: the cooling actuator, I can see the pin state moving around from 0 to 1 but it doesn’t actually cause the freezer to turn on. So I think the logic of the mutex and PID/PWM is working OK, just not the logic between the controller and the relays. I have since directly plugged in the freezer (no CPUs in between AC power and freezer) and verified that the compressor came on so the freezer itself didn’t flake out.

If you open the spark casing, is the ribbon connector to the display properly seated?

On the actuator side: we released an update about an hour ago that adresses some bugs in the spark pins. Could you try updating and checking whether that solved it?

If not: does the error persist if you switch to a different pin?

Noob question: if I want to move the actuator’s green connector to a different Spark pin, does it require me to go through the [ Wizardry / Quick Start ] flow to build a new dashboard and choose the pin locations at that time or can I change the actuator/pin mapping after-the-fact?

The wizard does nothing you can’t do yourself - you can manually edit everything it created.

Changing a pin is simple: in the service page, go to either the SparkPins or the digital actuator, and change the output pin. You don’t need to change anything else (your graphs track the digital actuator, not the pin)

Adding some background to what Bob already said: like any other LCD, the backlight is independent of the pixels. It sounds like the backlight is not powered correctly.

It the spark widget, in the expanded settings, that is reported as 5V voltage? Maybe the spark is underpowered?

Here is a picture of the screen. If the backlight is the issue then I would expect the top and bottom rows to be less bright. Or at least as uniformly dim as the rest of the display.

Could you please export your blocks, and post them here (spark service page, actions, import/export). Only going by the picture, it looks like a bug in settings, and not in the screen itself.

Here are the exported blocks:
brewblox-blocks-spark-one.json (6.3 KB)

I updated the file after I removed every block related to Cold Conditioning. I am now in fermentation mode (a kveik yeast) and need to focus on getting that working

Sorry, I didn’t answer Elco’s question about the voltage. I can’t figure out where this is reported. The nearest thing I can find is the spark-one widget, subtitled “Device info”. But it doesn’t have a way to expand its settings, just a refresh button.

Spark pins widget, in expanded or popup dialog.

If you change a display to which block it is linked, does that bring back anything?

We just released a firmware update. I don’t expect your issue is related to anything changed in this firmware, but let’s test against latest.

OK, thanks. The voltages are reported as 5.01 and 12.18. Both report “enabled” but I have only a very reliable AC-based power going in currently, no USB. So to me it seems odd that the LCD display says “USB” on it.

Weird thing #2: I thought I updated the firmware earlier today but according to the Spark its firmware date is 2019-12-17. I did both brewblox-ctl update and afterwards went through with the UI-based firmware update after being prompted. It seemed to fail on the first UI-based try, but it re-presented itself and the second try seemed to succeed (regardless of what the date says).

Weird thing #3: I physically moved my actuator connectors from the lower two pins to top #1 and top #2. I did not remap actuators to pins in the UI, and yet when I plugged into top #2 the freezer suddenly powered up. So even though the UI showed that the lower pins mapped to the actuators, at least one of the upper pins had the signal.

Weird thing #4: the green light on the side of the Spark’s display is slowing fading from full brightness to low and back again

I tried your blocks on hardware here.

#1. USB text/logo should are dim grey when not in use, but text is still there. They are lighter blue when connected over USB.

Regarding #2, we released that firmware to develop on Dec 17, but only released it to edge today.
This is a bit confusing indeed, but it is the most recent version that we pushed out today.

#3 This reproduced here. Thanks for reporting. I’ll look into why the pin is active at boot. As soon as you assign an actuator to the pin it works as expected though.

#4 This just means it is connected to WiFi, but not to the Particle cloud.

The display widgets are all linked to an unknown block. This is why they are greyed out, the block cannot be found. As soon as you relink them to the right block the color is back.

Confirmed re: the display widgets / dark screen. Sorry for the false alarm, all fixed now.

I just pushed a firmware hotfix for the top2 init bug. Thanks again for reporting it, it didn’t show up in my own tests.