Yes, I see what you mean, in fact the box temp is going down even with the power at 2.3%. The steady state will need the box and brew temp both to be around the setpoint so that means that with an ambient 20F above the setpoint it only needs about 2% of power, which is only 12 seconds every 10 mins. I think the thing to try is to limit the maximum power something like 5% of power. Is each one of the kicks in the box temperature from the compressor switching on for not much more than the 15 seconds setup as the Actuator Time in the timeprop node? If so then that could come down a bit as even on the min it is giving a noticeable kick to the box temp. So this is what I suggest:
- Reduce the actuator time to 10 secs to allow a rather smaller minimum input.
- Add a Scale node after the PID, set to scale 1.0 to 1.0 and 0.0 to 0.95. That seems odd, but since 1.0 is 0 cool power that means when it asks for no power it will still get none, and when it asks for full power (which is zero) it will get 5% power.
If I have got my brains round that correctly then the compressor should never be on for more than about 5% of the time (plus a bit because of the 10 second actuator time).
If you make those changes and just deploy changed nodes then it should not affect anything else and you can just leave it running. That should have a very dramatic effect on the stability, hopefully it will be overly stable and then we can get back to tuning it.
On the chart, plot the value coming out of the PID not the value coming out of the Change node.