
Settingator est le logiciel au cœur des modules et concepts entiers.
Il se décompose en deux parties, une partie « maître » et une partie « module ».
La partie « maître » est réalisée en Python, elle offre une interface graphique et joue le rôle de chef d’orchestre pour les modules.
La partie « module » est une bibliothèque C++ destinée aux micro-controleurs ESP32.
Leur mode de fonctionnement est le suivant :
– Côté ESP32, on instancie un objet « Settingator » et lui assigne un « Communicator », ce dernier peut être de type « ESPNow », « UART/HardwareSerial » ou « WebSocket ».
– Ensuite, on déclare des « settings », ceux-ci sont généralement liés à une variable, portent un nom, et peuvent aussi avoir une fonction « callback ».
– Côté ordinateur, on utilise la partie Python pour communiquer avec les modules, le script envoie une requête d’initialisations aux modules et ceux vont répondre avec tout les « settings » déclarés au préalable. Ainsi une interface graphique se construit pour les représenter. Lorque l’on modifie les champs de l’interface, un message de mise à jour est envoyé au module correspondant qui va donc mettre à jour son état et appeler d’éventuels « callbacks ». Il est aussi possible d’ajouter via le script des logiques plus complexes ou des boutons personnalisés qui peuvent effectuer des actions particulières.
Modules.
Maître.