Téléverser le sketch de Samovar sur l’ESP32 prend 10 à 15 minutes avec Arduino IDE ou PlatformIO. Les étapes : (1) installer Arduino IDE 2.x et ajouter la prise en charge des cartes ESP32 via le gestionnaire de cartes (URL d’Espressif) ; (2) sélectionner la carte “ESP32 Dev Module” et le port COM ; (3) télécharger la dernière version du firmware sur GitHub (releases) ; (4) ouvrir le fichier .ino et installer les bibliothèques OneWire, DallasTemperature et LiquidCrystal_I2C ; (5) cliquer sur Upload (Téléverser). Lors du premier téléversement, il peut être nécessaire de maintenir le bouton BOOT de l’ESP32 enfoncé. Après un flashage réussi, le contrôleur crée un point d’accès Wi-Fi “Samovar” pour la configuration initiale du réseau. Alternative : PlatformIO, pour ceux qui veulent compiler depuis les sources et participer au développement. Configuration minimale : un câble USB de données (pas seulement de charge) et un ESP32 avec 4 Mo de flash.
Si vous avez un ESP32, vous pouvez déjà téléverser le sketch et tester le fonctionnement de Samovar.
Pour téléverser le sketch sur l’ESP32, il faut installer le programme Arduino IDE. Il sert d’éditeur de sketch, de compilateur de sketch, et aussi à téléverser le programme compilé sur l’ESP32
En savoir plus sur le travail avec Arduino IDE
Après l’installation d’Arduino IDE, il faut lui apprendre à travailler avec l’ESP32 ; par défaut, il ne sait pas le faire. Lisez-le ici : Installation et configuration de la carte ESP32 dans Arduino IDE
Si vous avez réussi à compiler l’exemple et à le téléverser sur l’ESP32, vous pouvez passer à la configuration, à la compilation et au téléversement de Samovar.
Téléchargez depuis GitHub l’archive avec la dernière version stable du sketch.
Vérifiez le dossier Documents/Arduino/. Il ne doit contenir aucun dossier nommé Samovar, libraries ou tools.
Attention ! À chaque installation d’une nouvelle version de Samovar, vous devez supprimer de Documents/Arduino/ les dossiers cités ci-dessus ou les déplacer ailleurs.
Décompressez l’archive téléchargée dans un endroit pratique. Entrez dans le dossier nouvellement créé et descendez jusqu’au dernier dossier Samovar x.xx (où x.xx est le numéro de version). Renommez le dossier Samovar x.xx en Samovar et copiez-le dans Documents/Arduino/.
Depuis le dossier Samovar, copiez les dossiers libraries et tools dans Documents/Arduino/. Au final, le dossier Documents/Arduino/ doit contenir 3 dossiers : Samovar, libraries et tools.
Vérifiez que le fichier esp32fs.jar du dossier tools se trouve au chemin suivant : tools/ESP32FS/tool/esp32fs.jar. Si la structure des dossiers est différente, il faut la corriger, sinon vous ne pourrez pas téléverser l’interface web sur l’ESP32.
Attention ! Il faut utiliser les bibliothèques qui sont téléchargées avec Samovar. Le code de certaines de ces bibliothèques a été modifié (bogues corrigés, prise en charge de l’ESP32 ajoutée).
Si Arduino IDE est lancé, il faut le fermer et le rouvrir.
Dans Arduino IDE, ouvrez le fichier Samovar.ino du dossier Documents/Arduino/Samovar.
Téléversez le sketch sur l’ ESP32 : cliquez sur le bouton Upload (Téléverser), et Samovar sera téléversé sur l’ESP32. Pendant le téléversement, divers messages d’avertissement peuvent s’afficher ; ignorez-les. Si le message Connecting apparaît mais que le téléversement ne démarre pas et que des points continuent d’apparaître à l’écran, appuyez sur le bouton Boot de l’ESP32 et maintenez-le pendant 3 secondes. Si cela réussit, vous pouvez ouvrir le moniteur du port COM (vérifiez que la vitesse est réglée sur 115200) ; dans le moniteur, vous devriez voir des messages sur le démarrage de Samovar et l’adresse IP avec laquelle Samovar s’est connecté à votre réseau. Si Samovar n’a pas pu se connecter au réseau, il créera son propre point d’accès wifi nommé Samovar, sans mot de passe. Plus de détails sur la connexion au wifi ci-dessous.
Installez l’interface web sur l’ ESP32 : dans le menu “Tools” (Outils), choisissez ESP32 Sketch Data Upload, et le contenu du dossier Samovar/data sera installé sur l’ESP32 (c’est l’interface web).
Des informations supplémentaires sur les réglages de Blynk sont disponibles ici, et sur l’utilisation des graphiques ici
Comment régler le pilote de moteur pas à pas A4988
Comment régler le pilote de moteur pas à pas DRV8825
Une tension de 0,6V suffit pour que la pompe fonctionne. Si vous n’avez pas de voltmètre, vous pouvez placer la résistance ajustable du pilote en position médiane. Si la pompe ne tourne pas, vous pouvez augmenter un peu la tension.
Notez qu’il vaut mieux modifier le réglage de la résistance ajustable hors tension, car le risque de griller le pilote est élevé. Il est également conseillé de lubrifier les galets de la pompe avec de la graisse silicone. Cela réduira le frottement, donc la charge sur le moteur pas à pas, et augmentera la durée de vie du tuyau en silicone.
Pour un Samovar avec le pilote A4988, il faut relier ensemble les broches MS1, MS2, MS3 et VCC, et relier aussi les broches SLP, RST et VCC (sur la carte, c’est le connecteur H1) et, dans les réglages de Samovar dans le navigateur, indiquer une valeur approximative de pas par ml de liquide : 16000. Vous pouvez ajuster précisément les pas dans les réglages, au calibrage de la pompe.
Passons à la configuration du sketch de Samovar
Après le téléversement d’essai, ouvrez le fichier Samovar_ini.h dans Arduino IDE. Il contient les principaux réglages du sketch que vous pouvez modifier. Sans expérience de programmation, il vaut mieux ne rien changer dans les autres fichiers.
Si vous n’utilisez pas de capteur de débit, désactivez impérativement son utilisation dans le sketch. Pour cela, dans le fichier Samovar_ini.h, remplacez la ligne
#define USE_WATERSENSOR
par
//#define USE_WATERSENSOR
Si vous ne comptez pas utiliser de régulateur de tension commandable, la ligne
#define SAMOVAR_USE_POWER
doit être remplacée par
//#define SAMOVAR_USE_POWER
Si vous ne comptez pas utiliser Blynk, la ligne
#define SAMOVAR_USE_BLYNK //use Blynk in the project
doit être remplacée par
//#define SAMOVAR_USE_BLYNK //use Blynk in the project
Si vous voulez utiliser le bouton d’arrêt d’urgence, il faut activer son utilisation dans le sketch. Pour cela, la ligne
//#define USE_ALARM_BTN
doit être remplacée par
#define USE_ALARM_BTN
Après avoir fait les modifications nécessaires, il faut téléverser une nouvelle fois le sketch sur l’ESP32, puis vous pourrez passer à la configuration de Samovar lui-même.
Au premier démarrage, Samovar créera son propre point d’accès wifi nommé Samovar, sans mot de passe. Lorsque vous vous connectez à ce point d’accès wi-fi, un portail doit s’ouvrir. Si le portail ne s’est pas ouvert automatiquement, ouvrez dans le navigateur de l’appareil connecté à Samovar une page à l’adresse 192.168.4.1, et un formulaire avec les paramètres de connexion wi-fi s’ouvrira.

Il faut choisir l’élément “Configure WiFI” (Configurer le WiFi)

Sélectionnez ensuite votre réseau wi-fi domestique dans les réglages et saisissez le mot de passe.
Si vous comptez utiliser Blynk, vous pouvez saisir son jeton à la troisième ligne. Le jeton peut aussi être saisi plus tard dans les réglages de Samovar : Settings – Other – Blynk token (Réglages – Autres – Jeton Blynk). Si vous modifiez le jeton Blynk dans les réglages, vous devez redémarrer Samovar pour que Blynk commence à fonctionner avec le nouveau jeton. Si le jeton a été saisi lors de la configuration de la connexion au réseau, il n’est pas nécessaire de redémarrer Samovar ; le jeton saisi sera initialisé correctement tout de suite.
Une fois le wifi correctement configuré, Samovar devrait se connecter au réseau local. Si ce n’est pas le cas, il faut le redémarrer. Vous pouvez vous connecter à Samovar de deux façons :
Suivez le lien http://samovar.local (il ne fonctionne pas toujours, selon les réglages de votre routeur).
Connectez-vous par l’adresse IP, visible dans le moniteur série d’Arduino IDE : Tools – Serial Monitor (Outils – Moniteur série). Pour cela, ouvrez le moniteur série, réglez la vitesse sur 115200 bauds, débranchez l’ESP32 de l’ordinateur et rebranchez-le. L’état de démarrage de Samovar apparaîtra dans le moniteur série, y compris l’adresse IP avec laquelle Samovar s’est connecté à votre routeur. Si un écran est installé, l’adresse IP est visible sur le quatrième écran.
