As a fan of healthy eating, he became interested in the hot fermentation method of cooking. The meaning of cooking is gentle heating in the range of 40-80 degrees for several hours. It looks like a process of “languor” from folk traditions. Different products have their own temperature ranges for the work of natural enzymes – natural catalysts that convert indigestible substances in food into easily digestible ones. The dish that is being cooked passes sequentially through different temperature ranges. For those wishing to get acquainted in detail – the site Sergei Gladkov… Original in taste, and a whole field for experimentation is useful.
When cooking, it is necessary to maintain the temperature to the nearest degree. Hence the problem: not all conventional multicooker maintains the temperature with the specified accuracy, and they do not have the required modes in the menu.
I recently purchased the Redmond RMC-M226S multicooker, which is controlled by the Ready for Sky (R4S) application. It’s just a pity for the time to constantly monitor whether the exposed temperature stage has passed, take out a smartphone and drive in a new one. The smartphone application is not very convenient, it is especially difficult to accurately set the temperature with a rotating wheel. It also stopped working without GPS on.
The search led to the article Controlling the SkyKettle kettle from GNU / Linux, I decided to make an application that itself controls the multicooker according to a given program.
The protocol for controlling a multicooker is similar to controlling a kettle, at the beginning of the phrase 0x55 is transmitted, at the end 0xAA, the second byte is a sequencer increasing by 1
At the beginning, the control device initializes the connection, sends a password:
55 <sqv> FF <8 байт пароля> AA
Receives a message about successful registration in response:
55 <sqv> FF 01 AA
Next is the command 01, such as ping, which prolongs the session:
55 <sqv> 01 AA
In order for the application to know the current state, there is a command 06, to read the status, 20 bytes of status are transmitted in response:
55 <sqv> 06 AA
55 <sqv> 06 (статус) Текущий режим 00-09 02 - мультиповар Температура сотни Температура - десятки и единицы часы до окончания минуты ?? ?? 01 - автоподогрев (0 - выключен) состояние нагрева 0- выкл, 01-ввод данных, 05 - включено ?? ?? 0 0 0 0 0 AA
To turn on the mode, use command 05:
55 <sqv> 05 - установка режима программа готовки 00-04 02-мультиповар температура - сотни температура десятки и единицы часы минуты 00 00 01 AA
And finally, command 03 “Ignition” – start the heater.
55 <sqv> 03 AA
If necessary, you can turn off the device with command 04. There is another way to turn on auto-heating.
This is my first experience building Android apps. Many thanks Alexander Klimov for the training site.
In an application called Vicigilo (in Esperanto it means queuing device), you can set up to 9 heating intervals with their own time. Any set (recipe) can be stored in memory. At the end of preparation or in case of communication failure, a notification is given. I didn’t have time to finish scanning the devices to find the MAC address of the multicooker, it needs to be inserted manually in the settings. Sometimes on some smartphones the transfer does not always work out reliably (the multicooker does not always respond), I think it is necessary to enter several attempts to connect.
The compiled application file can be download here
Source link github
Of course, I didn’t get exactly what I wanted, all the same, the need to keep the smartphone within bluetooth range remains, but you no longer need to keep track of the time, it’s especially nice when the process starts early in the morning. For the future, there are plans to make your own thermostat, or at least create a piece of iron that controls the multicooker using an autonomous program.