Close

Temperature Schedule

A project log for Fermentation Station

Gadget to help make better beer

krockwellKrockwell 03/22/2020 at 19:270 Comments

Over the last week I've been working on the scheduling aspect of this project. The goal is to be able to setup a schedule, or profile, that the fermenter will follow. In the rpi_beers project there is now a script titled "generate_calendar" which accepts a file containing the step temperature (Fahrenheit) and step duration (days) organized in a comma-seperated list. The example below would set the temperature at 65 for 1 day, then raise to 67 for 1 day, then raise to 68 and sit at that temperature for 14 days before raising to 72 to finish out the last 7 days. The "generate_calendar" script will take in this file and output a JSON-formatted "calendar" file.

The script currently assumes that day 1 is the current date, though I expect to change this in a future revision. If the input is less than 30 days, the calendar will extend the last temperature out to reach a full 30 days.

Example profile (temperature, days):

65, 1

67, 1

68, 14

72, 7

Example output (JSON format, created March 22, 2020):

{"08 Apr 2020 ": "72", "04 Apr 2020 ": "68", "18 Apr 2020 ": "72", "14 Apr 2020 ": "72", "10 Apr 2020 ": "72", "30 Mar 2020 ": "68", "09 Apr 2020 ": "72", "22 Mar 2020 ": "65", "05 Apr 2020 ": "68", "01 Apr 2020 ": "68", "13 Apr 2020 ": "72", "27 Mar 2020 ": "68", "19 Apr 2020 ": "72", "28 Mar 2020 ": "68", "15 Apr 2020 ": "72", "11 Apr 2020 ": "72", "31 Mar 2020 ": "68", "17 Apr 2020 ": "72", "07 Apr 2020 ": "72", "03 Apr 2020 ": "68", "23 Mar 2020 ": "67", "20 Apr 2020 ": "72", "25 Mar 2020 ": "68", "16 Apr 2020 ": "72", "12 Apr 2020 ": "72", "24 Mar 2020 ": "68", "29 Mar 2020 ": "68", "06 Apr 2020 ": "68", "26 Mar 2020 ": "68", "02 Apr 2020 ": "68"}

Discussions