What about software? Can you share what you write on and other details?
Savradym Denis: The device firmware is written in C++ with assembler inserts to speed up critical sections. The project is based on the ESP-IDF framework. At the beginning of the journey, hardware PWM was used to control cartridges, but it did not allow for more flexibility and accuracy, as well as for counting cycles when flavors were supplied, which is critical for conducting accurate scientific research. The solution to the problems was the use of software generation of a control signal, which made it possible to set the exact time and intensity of the aroma supply, it also became easier to synchronize the control channels with each other.
The moment with the automation of the supply of flavors depending on the picture on the screen will be tied to neural networks, elements of machine vision and machine learning, which allow detecting various objects and linking them to the movie timeline. We have already come up with the architecture of such a solution and are gradually implementing it.
To control the device, at the moment, a set of text commands is used that can be received from various communication interfaces, which allows you to use the device both at home by connecting to a wireless network Wi-Fi 2.4 GHz, Bluetooth or GSM, and in production – RS-232 , RS-485. When using a wireless network, communication with the device can be carried out both using the UDP or TCP transport layer protocols, as well as the http(s) and mqtt(s) application layers. At the request of customers, it is possible to consider the possibility of communication through other interfaces and protocols, such as DMX or modbus. In the future, we plan to abandon text commands by developing our own communication protocol, which should solve the problem of command length redundancy.
That is, MQTT is supported, and the device can be used in a smart home system?
Anton Vasiliev: Yes, the device works according to the MQTT protocol and can be built into any architecture. We, for example, use Node.red for some cases. It is a development environment, with visual programming, which was originally conceived for serious industrial solutions and is often used in IoT. We can now control our devices located in other cities from Moscow. You can also control the device through the Telegram bot, which is interesting when used, for example, in museums and galleries, as an interactive element of the exposition.
Are you planning to publish your work in open access?
Savradym Denis: Sooner or later we will come to this. We will publish some of the information so that more advanced users can individually configure devices. But we do not plan to fully upload the development to open source yet. Some part will be provided upon request, maybe for research.