Relai Sonoff / Tasmota

Introduction

Nous allons voir ici la procédure pour ajouter un relai contrôlable via octoprint sur votre imprimante.
Le but étant de pouvoir l’allumer et la couper à distance ou … Plus intéressant: la couper automatiquement lors de la fin d’un print par exemple.
Cette procédure s’applique à tous les relais de la marque sonoff (le modèle basic, la prise secteur connectée, etc…)
Je ne traiterais pas ici du branchement en lui-même du relai puisque tout dépend des modèles, pour ceux qui ne veulent pas bidouiller électriquement au niveau du boitier de contrôle vous pouvez simplement prendre la prise connectée S20 et brancher l’imprimante dessus (après avoir flashé la prise).
Dans l’exemple ci-dessous j’utilise le modèle de base « Sonoff Basic » … Suivant votre modèle il faudra regarder sur le site de tasmota afin de trouver les branchements correspondants pour le module FTDI (Vous trouverez ces informations ICI dans la rubrique « Devices – Additional Info » du menu sur la droite).


Prérequis

  • Un module FT232RL FTDI USB (pour flasher le firmware du relai) que vous pourrez trouver par exemple ICI
  • Un fer à souder
  • Du fils électrique et des connecteurs Dupont ou directement des cables Dupont mâle-femelle
  • Le logiciel ESPtool nécessaire pour flasher le firmware, ainsi que le dernier firmware tasmota.(vous trouverez un fichier zip contenant tout le nécessaire dont tasmota en version française ICI)

Préparation du relai

  • Afin de flasher le relai il va falloir souder 4 fils (ou un connecteur dupont) sur ces 4 pastilles.
  • Reliez ensuite ces cables sur les bornes du module FTDI (il est indiqué directement sur le PCB à quoi correspondent les bornes) en inversant les pins TX et RX.
  • Positionnez le cavalier du module FTDI sur 3.3V
  • Reliez le module FTDI à un PC via un câble micro USB tout en maintenant le bouton ON/OFF du sonoff appuyé puis relâchez après quelques secondes.
  • Ouvrez le gestionnaire de périphériques afin de vérifier que le module est bien reconnu et notez le numéro du port COM correspondant
  • Décompressez l’archive contenant les outils nécessaires pour flasher le nouveau firmware puis exécutez le fichier flash.cmd
  • Renseignez le numéro du port COM noté précédemment et valider avec la touche Entrée.
  • Une fois que s’affiche « Flush complete » l’opération est terminée et votre sonoff est flashé, vous pouvez alors appuyer sur n’importe quelle touche pour fermer la fenêtre et débrancher l’USB.
  • Vous pouvez maintenant dessouder les fils du sonoff et le refermer afin de le mettre en place dans le boitier ou de le brancher sur la prise si il s’agit du modèle S20.

Configuration du relai

  • Pour configurer le wifi le plus simple sera alors d’appuyer 4 fois sur le bouton ON/OFF, ce qui aura pour effet de le mettre en mode Hotspot
  • Connectez-vous au sonoff avec un smartphone, une tablette ou un PC portable puis rendez-vous sur l’adresse http://192.168.4.1 pour lui fournir les informations de connexion à votre réseau wifi.
  • Trouvez l’adresse IP du relai (soit via votre box/routeur, soit via une application smartphone qui permet de scanner le réseau (ex : Net Analyzer ou IP Tools sur android))
  • Ensuite rendez-vous sur l’interface de gestion du sonoff grâce à son adresse IP (ex : http://192.168.0.24 ) puis cliquez sur configuration
  • Cliquez tout d’abord sur « Configuration module » pour sélectionnez le modèle correspondant à votre relai puis validez (le relai vas alors redémarrer)
  • De retour sur le menu principal après le redémarrage, retournez dans « Configuration » puis « Autre configuration »
  • Choisissez le mot de passe administrateur et décochez la case MQTT (vous pouvez également choisir un nom plus explicite pour votre relai puis validez).

Configuration d’ Octoprint

  • Dans octoprint, rendez-vous dans le gestionnaire de plugin, installez le plugin « OctoPrint-Tasmota » puis comme demandé, relancez octoprint.
  • Retournez dans les préférences d’octoprint puis dans les options du plugin tasmota et indiquez les infos de votre relai (l’adresse IP du sonoff, l’index laissez 1, comme label vous pouvez mettre ce que vous voulez, le nom d’utilisateur c’est « admin », le mot de passe est celui que vous avez choisi précédemment) puis validez.

C’est terminé !

Votre relai est maintenant contrôlable via le bouton dédié qui s’est ajouté en haut de l’interface d’octoprint ainsi que via les gcode M80 et M81.
Par exemple, pour que l’imprimante ce coupe automatiquement à la fin d’une impression vous pouvez ajouter ces 2 lignes à votre gcode de fin (en remplaçant l’adresse IP par la vôtre bien évidemment):

M109 R50 ; Attend que la température baisse jusqu’à 50°
M81 192.168.0.24 1 ; Coupe le relai sonoff

Pour plus d’informations (en anglais) vous pouvez consulter le wiki officiel du firmware tasmota: https://github.com/arendst/Sonoff-Tasmota/wiki
Vous pourrez à tout moment trouver la dernière version du firmware à cette adresse.


Contrôler le relai depuis votre smartphone Android

Si comme moi vous utilisez la version payante de l’application printoid pour contrôler octoprint (et si ce n’est pas le cas je vous invite vivement à essayer la version gratuite), vous pouvez ajouter un ou des boutons à l’écran principal afin d’allumer et/ou éteindre votre imprimante.

  • Pour ce faire, slider vers la droite pour afficher le menu de gauche puis cliquez sur commande:
  • Utilisez ensuite le bouton ajouter pour ajouter deux boutons, avec les paramètres suivants (vous pouvez bien évidemment personnaliser comme vous le souhaitez)

C’est terminé, vous pouvez contrôler le relai directement depuis votre smartphone !

Si vous ne souhaitez pas utiliser printoid, vous avez toujours la possibilité d’utiliser une application qui permet d’envoyer des requêtes HTTP comme HTTP Shortcuts et d’y ajouter des boutons vers les adresses suivantes (pensez bien à remplacer « ip_du_relai » et « votre_mot_de_passe » par les vôtres bien évidemment) :

  • Pour allumer le relai : http://ip_du_relai/cm?user=admin&password=votre_mot_de_passe&cmnd=Power%20On
  • Pour l’éteindre : http ://ip_du_relai/cm?user=admin&password=votre_mot_de_passe&cmnd=Power%20Off
  • Un seul bouton pour éteindre ou allumer : http://ip_du_relai/cm?user=admin&password=votre_mot_de_passe&cmnd=Power%20Toggle