Struggling to maintain fridge temp

I’m running a commercial glass door fridge and have just swapped over to brewblox from brewpi. at the moment is just a fridge not doing fermentation.

I’m finding that the average fridge temp rises when the room gets warmer and the PID doesn’t seem to compensate. I reduced the max on time and off time for the fridge from 5 minutes to 2 minutes but the fridge seems to be running 9 minutes off and 6 minutes on at the moment. which is driving quite large temp swings. I’m fine with the average holding around the setpoint but the average is regularly climbing above the setpoint.

All other settings are the default.

Close in view of the actuator action:

Longer view where you can see the average climb above the setboint:

PID settings:

Any suggestions on how I better tune this?


I notice the bump in temp is in the afternoon each day. Am I right in guessing this is when your heating comes on in the room? If it’s worth anything, I’ve started seeing something similar since winter hit. My beer itself has seen <+/-0.5degC drift though so I’ve not been worrying too much. I expect it’ll settle in a month or two and I have a feeling tuning for this time of year would thrown things out for the rest.

I think you mean min on/off time.

Don’t reduce the min off time too much. Cycling to compressor too quickly can damage and overheat it.

I think 1 or 2 degree swing in fridge temp is normal of there isn’t much thermal mass.

Share the cooler PID graph to see why the integrator is not correcting to the right average.

I think it is because Td is too long for how quick your fridge cools and it triggers integrator anti windup.
Perhaps Kp could be lower too.


Yes, I’m ok with the temp swing. Just hoping to get it to swing with an average close to the setpoint.


Try the following:

Set the pwm (back) to a 30 min period and use a 5 minute minimum off time.

Set Td to zero for now.
Set Ti to 4 hours.
Set Kp to 10.

The goal of this is to make it react less aggressively to small temperature changes.

You could even set some filtering on the fridge setpoint.

Let in run for a while and share the PID graph again (a bit more zoomed in)

The PWM was still on 30m.

I’ve changed the others and will let it run for a bit and come back to you.

Thanks for your help