Samovar 7.00: Cheesemaking mode first appeared in this version.
In Cheesemaking mode, Samovar runs a cheesemaking process by a program: it heats the milk at a set rate, holds the temperature, cools, switches the stirrer on by schedule, waits for the required acidity by the pH sensor, opens the drain valve and stops where the cheesemaker has to act (add the starter culture, cut the curd, move it into molds). The program consists of stages, and each stage is one line. The lines are described on the page
Cheesemaking program.
Equipment
Heating. The main heating element is switched on through relay no. 1 and the regulator, as in Beer mode: while the difference between the setpoint and the temperature is greater than HEAT_DELTA, full power is applied, and then the PID regulator holds the temperature. The boost heating element is not used in this mode - relay no. 4 is taken by the drain valve.
Temperature sensors. In every line with a temperature you choose the sensor that the stage works by: "Boiler" («Куб»), "Water" («Вода»), "Column section" («Царга»), "Vapor" («Пар») or "TCA" («ТСА») (the roles are assigned on the
Temperature tab). One sensor in the vessel is usually enough - the "Boiler" role. The readings of the other sensors are shown on the main page for reference.
Stirrer. Either through relay no. 2 (on/off), or through the
I2CStepper board with a stepper motor - then the speed and direction are set. The stirrer is set separately in each program line.
PH-4502C pH sensor. It is connected through the ADS1115 or to the LUA_PIN analog input with voltage matching. Wiring diagrams, the galvanically isolated variant and the operation of the filter are described in the technical section
pH acidity sensor and its connection. Before use, perform the
pH calibration.
Drain valve. It is connected to relay no. 4. In other modes the boost heating element sits on this relay - connect either the valve or the heating element, but not both at once. The valve opens at the "Drain" («Слив») stage and closes on the transition to the next stage and on any end of the program.
Cooling. Used at the "Cooling" («Охлаждение») stage. The scheme depends on the firmware build and is shown in the status line in the "Cooling" field:
pump (#define USE_WATER_PUMP) - the water supply valve opens and the cooling pump switches on; while the temperature is above the target by more than 1°C, the pump runs at full power, and closer to the target - at the minimum (PWM_LOW_VALUE);
two valves (#define USE_WATER_VALVE) - the water supply valve opens, and a second valve on the WATER_PUMP_PIN pin opens for a stronger flow;
unavailable - the build has neither a pump nor a valve; a program with a "Cooling" stage will not start.
Dispenser (optional). The "Dosing" («Дозирование») stage can feed a component with Samovar's standard peristaltic pump - the volume and rate are converted to steps using the pump calibration (
Pump).
Warning.
Without the ADS1115, the LUA_PIN input is taken by the pH sensor during cheesemaking: do not connect the PH-4502C and the MPX5010DP to it at the same time. When pH is connected through the ADS1115, this input stays free. In Cheesemaking mode, relay no. 4 controls the drain valve.
How to enable
Open
Settings → Main, in the "Operating mode" («Режим работы») field choose "Cheesemaking" («Сыроварение») and save the settings. The main page of Samovar becomes the cheesemaking page. The settings related to the mode are collected on the
Settings → Cheese tab.
The first time the mode is enabled, a default program is loaded (heating to 63°C, hold, cooling to 34°C, adding the starter culture and the enzyme, cutting, draining and pressing). Replace it with your own on the "Program" («Программа») tab.
Main page of the mode
The page consists of four tabs: "Process" («Процесс»), "Program" («Программа»), "Recipes" («Рецепты») and "Additional" («Дополнительно»). The "Chart" («График») button opens the
local chart.
Main page of Cheesemaking mode, the "Process" («Процесс») tab
 Status
The name of the current stage and its number out of the total number of stages. While the program is not running - "Idle" («Ожидание»).
|
 Stage
The type of the current stage: Heating («Нагрев»), Hold («Выдержка»), Cooling («Охлаждение»), Stirring («Перемешивание»), Dosing («Дозирование»), pH wait («Ожидание pH»), Manual action («Ручное действие»), Drain («Слив») or Lua.
|
 pH
The current acidity from the PH-4502C sensor. If the sensor is not connected, not calibrated, or the value is outside 0-14 - "no data" («нет данных»).
|
 Cooling
The cooling scheme in this firmware build: "pump" («насос»), "two valves" («два клапана») or "unavailable" («недоступно»).
|
 Progress
The share of the stage time that has passed since it began, relative to the "Timeout, min" («Тайм-аут, мин») field (for a hold - relative to the hold time).
|
 Start / Stop cheesemaking
Starts the program from the first stage. While running, the button is called "Stop cheesemaking" («Остановить сыроварение») and ends the program with a confirmation.
|
 Next stage / Confirm
Goes to the next stage. At the "Manual action", "Drain" and manual "Dosing" stages the button is called "Confirm" («Подтвердить») - the stage will not end without pressing it.
|
 Chart
Goes to the local temperature chart.
|
 Working time
How long the stage has been running. For a hold, time with underheating beyond the tolerance is counted partially, and time with underheating of 3°C or more and with overheating above the tolerance is not counted.
|
 Timeout
How much time is left until the stage is forcibly stopped by the timeout.
|
 Current and next stage
The card of the current stage: name, progress, working time, timeout and the name of the next program stage.
|
On a phone screen, instead of separate cards, a "Key values" («Ключевое») block is shown: the vessel temperature, the stage setpoint, the current temperature, the working time and the timeout.
The "Sensors" («Датчики») block shows all connected temperature sensors, and the diagram in the center shows the vessel with its current temperature. At the bottom is the "System" («Система») line: free memory (Heap), board temperature (BME temp), Wi-Fi signal level (RSSI), free space in the file system and, if the water pump is used, its PWM.
The "Additional" tab has the "pH calibration" («Калибровка pH») button (goes to the page
pH calibration), a reminder about connecting the PH-4502C and relay no. 4, as well as a field for running
Lua commands and Lua buttons, if they are defined in the files btn_cheese_button1.lua and btn_cheese_button2.lua.
Workflow
Assign the temperature sensors and, if necessary, calibrate the pH sensor and the dosing pump.
On the "Program" tab compose the program and press "Save program" («Сохранить программу»).
On the "Process" tab press "Start cheesemaking" («Начать сыроварение»). Samovar checks the program: stages with a temperature must have a sensor assigned, for a stirrer over I2C the I2CStepper board must be connected, for a local dispenser the pump calibration must be done, for the "Cooling" stage a cooling scheme must be available, for the "pH wait" («Ожидание pH») stage the pH calibration must be saved, and for the "Lua" stage the file /cheese.lua must exist. If the check fails, the reason with the line number appears in the messages, and the heating does not switch on.
After the check, a log file is created, the heating switches on and the first stage begins. Each transition to a stage is accompanied by the message "Line N; stage name" («Строка N; название этапа»).
The "Manual action" («Ручное действие»), "Drain" and "Dosing" stages with the manual method wait for the cheesemaker: do the action and press "Confirm" («Подтвердить») (this is what the "Next stage" («Следующий этап») button is called at that time). The "Next stage" button can finish any stage early. A short press of the
universal button does the same, and a long press ends the cheesemaking.
After the last stage, Samovar switches off the heating, cooling, stirrer and dispenser, closes the drain valve and shows the message "Cheesemaking program finished" («Программа сыроварения завершена»). The status line shows "Idle" («Ожидание»).
Before a stage changes, all actuators are put into a safe state (heating and cooling off, stirrer and dispenser stopped, drain closed), and then whatever the new stage needs is switched on.
Stopping, timeouts and errors
Stop cheesemaking («Остановить сыроварение») - ends the program at any moment (with a confirmation). The result is the same as at a normal end: all outputs are off, the drain valve is closed.
Timeout. Every stage has a time limit (the "Timeout, min" («Тайм-аут, мин») field; for the "Hold" («Выдержка») stage it is "Total timeout, min" («Общий тайм-аут, мин»)). If the stage does not finish within this time, cheesemaking stops with the message "Line N: Cheese program operation timeout" («Строка N: Тайм-аут операции сырной программы») (for a hold - "Hold timeout" («Тайм-аут выдержки»)). The exception is "Stirring" («Перемешивание»): its duration is the completion condition.
Stage errors also stop the program with the message "Line N: reason": no data from the selected temperature sensor, a stirrer or cooling error, an unreliable pH for longer than 10 s at the "pH wait" stage, a Lua script error.
The safety system works as in Beer mode: emergency shutdown when the vessel temperature is above
BOILING_TEMP + 5°C, when the limit water or TCA temperature is exceeded at the cooling stage, and when there is no water flow (if flow control is enabled). Overheating and emergencies are described on the page
Emergency button, additional emergency sensors.
Reboot during cheesemaking. Samovar remembers the mode and the number of the current stage. After a reboot the heating does not resume, and the message "Session interrupted by reboot: line N/M" («Сессия прервана перезагрузкой: строка N/M») appears in the messages. If the program from the snapshot fails the check, it is cleared, and the default program is not substituted - compose the program again.