Hack du module Sonoff 4CH Pro, firmware MQTT Tasmota

tasmota
firmware
sonoff

#1

Le firmware Tasmota permet de remplacer le firmware d’origine des modules Itead Sonoff. Il permet de connecter (et de piloter) plus facilement les modules depuis un serveur domotique (Domoticz, Jeedom, Home Assistant, Open HAB…). Il peut être installé sur tous les produits Sonoff

De quoi avez vous besoin ?
Le firmware tasmota peut être installé depuis l’IDE Arduino mais il est nécessaire de modifier celui-ci avant de pouvoir téléverser le projet. C’est beaucoup plus facile (mais moins conviviale pour les débutants) avec PlatformIO. Je vous conseille d’installer l’éditeur de code Visual Studio Code et le plugin PlatformIO (suivre ce tutoriel. C’est beaucoup plus légers que d’installer Atom (l’éditeur de code de GitHub).
Vous aurez également besoin de l’outil esptool.py contenu dans le SDK d’Espressif. Suivez ce tutoriel pour l’installer.

Avertissements
Vous êtes responsable de l’installation du nouveau firmware. Projets DIY ne pourra être tenu pour responsable en cas de détérioration de matériel ou blessures. Débrancher toute alimentation électrique avant l’ouverture du boitier et durant toute les étapes d’installation et de configuration. Ne mettez sous tension le module que lorsque le boitier est fermé.
Suivez ce tutoriel pour plus de détails sur l’installation du firmware sur un Sonoff 4CH pro.

Installer le connecteur série
Souder le connecteur série ainsi qu’une broche sur l’emplacement GND sur le PCB comme indiqué en rouge

Brancher le câble FTDI
Brancher le câble FTDI comme indiqué. Il n’est pas nécessaire de croiser RX/TX à cause d’une erreur de repérage sur le PCB. Si vous n’arrivez pas à communiquer avec le module, essayer d’inverser RX/TX.

Mettre l’ESP8285 en mode programmation (flash mode)
Relier la broche GPIO0 à la broche GND puis branchez l’alimentation 5-12VDC

Trouver le port COM

  • Sur Windows. Ouvrir PowerShell et exécuter la commande mode. Si le câble FTDI n’est pas détecté, l’installation du driver est peut être en cours (première utilisation) ou elle a échouée. Allez dans le panneau de configuration / périphériques pour vérifier.
  • Sur macOS, Linux, Raspbian…, ouvrir un Terminal et exécuter la commande ls /dev/tty.usb*. Vous devriez récupérer le port sous la forme
    /dev/tty.usbserial-A1048DR2

Sauvegarder le firmware

Exécutez cette commande pour télécharger le firmware d’origine. Changer PORT_COM par le votre

esptool.py --port PORT_COM read_flash 0x00000 0x100000 image1M.bin

Puis effacer la mémoire

esptool.py --port PORT_COM erase_flash

Récupérer le firmware depuis GitHub
Allez sur GitHub pour télécharger le dépôt du projet.

Installer le firmware

Ouvrez le projet depuis Visual Studio Code (file -> Open folder) et ouvrez le fichier user_config.h pour indiquer le SSID et le mot de passe du réseau WiFi


Ensuite ouvrir le fichier platformio.ini et décocher la cible. Par exemple env_default = sonoff

Compiler le projet pour vérifier que tout est correct

Si aucune erreur n’est renvoyée, vous pouvez le téléverser

Ouvrez le moniteur série pour connaître l’adresse IP du Sonoff 4CH Pro

Une fois hacké, il est très facile d’inclure les modules Sonoff Itead dans un serveur domotique Open Source :