Hardcoded compressor on/off times

I got my Spark yesterday and was testing out my powertail setup today before hooking it too a fridge, but I noticed something. If you are in beer constant mode and change the beer set temp, both the minimum run time of 3 minutes and minimum off time of 5 minutes are followed. If you change frrom beer constant to off with the cooling function on, but having been run less than 3 minutes, it still powers down. Reversing that (having it set to off then back to beer constant at a temp that should trigger cooling) still enforces the 5 minute idle time.

So, not a big deal and probably not a scenario that people will often run into, but I wanted to bring it up.

As a side note, this is fantastic, I can’t wait to get my fridge later today and start using it for real!

I think this is fine: the minimum ON time is to prevent lot’s of short bursts of cooling. The minimum OFF time is what actually protects the compressor from being damaged.

At least that is how I understood it, the minimum off time is what is necessary to prevent damage to a compressor. Anyone with more knowledge for fridge inner workings, please share.

Oh, that makes perfect sense. I thought the minimum on time was also for compressor life, but if it is only needed to prevent a bunch of mini cycles, there’s no harm in someone switching it off early.

Thanks for your work on this! The GDM-12 is now in my basement, so here we go. :smile:

I haven’t had a chance to set up the spark yet, so forgive my ignorance - but can these minimum off / on times be overridden?

They cannot be overridden currently, only by recompiling the code yourself.
I still think that is the correct design for compressors, but some people might have setups in which an override makes sense.

I plan to add PWM support for fridge heaters an direct beer heaters soon, which will be unaffected by the minimum times. So that only leaves the minimum times for cooling, which only makes sense when you are using a compressor. For a different setup, with a fan that draws cold air form a freezer for example, the minimum time could be less or zero.
Perhaps a good way would be to still have them and not have an easy way to set them, but have some special commands to unlock the feature for those that really know what they are doing (without recompiling).

1 Like

I would make them regular settings, but in the UI, have another setting - cooler type - the user has to type in “iamnotusingafridge” to unlock the cooling on/off times. Include warnings, disclaimers, terrified cat gifs above the settings so that users are suitably warned of the consequences of changing this when using it to cool a fridge.

If someone changes them via the serial interface, or finds some other way to change the settings then that’s fine - it’s their setup and their responsibility. :slight_smile:

I was just thinking - because when I get around to trying this with a RIMS system the minimum on / off times will have to be very short. Are their no minimum on / off times for heating at present?

The heater will be PWM and will ignore the on/off times (makes no sense in the context of something you’re switching on and off constantly.)

I’m would imagine this is pretty low on the priority list, but after Elco got my Pi working yesterday, I’ve noticed there are large “Cooling minimum time” sections in my graph. Although technically using a fridge, I’m using the fridge damper to control the temp of the fridge section (while the freezer stays controlled by the factory system) just as a normal fridge does, so I have unlimited flexibility in on/off cycles, so this would be great for me too!