Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
NT_801 : FIRMWARE DiY pour ESP
Ou comment fabriquer facilement une configuration domotique DiY- Hacker un produit industriel - Créer un nouveau capteur sans développer du code
Technologies : 1. Firmware DiY2. SONOFF // ESP8266/553. TASMOTA // ESPeasy
[email protected] © Sept 2019 V1.0
mailto:[email protected]
Sommaire
1. Des firmwares DiY
2. SONOFF
3. TASMOTA
4. ESPEASY
5. Conclusions
Des Firmwares DiYLa vraie nouveauté et c’est une Révolution : Certains produits HW (ITEAD/SONOFF) à base du célèbre ESP8266 (Espressif) sont tellement populaire que des makers astucieux ont crés une nouvelle sorte de firmware : Des firmwares directement prêt à être flashés sur le produit (en lieu et place de celui du fabriquant) et configurable via son smartphone ou le navigateur.
Moralité : Fini le code source, il n’est plus nécessaire de maitriser un éditeur et un langage, il suffit de télécharger le binaire et de le flasher directement. (Seule opération : souder un connecteur).
2 exemples présenté ici :
1/ Hacker un équipement SONOFF : utilisation de TASMOTA L’intérêt de cette solution est d’éviter que vos commandes soient envoyés sur un serveur Chinois pour piloter votre lampe de salon qui est à 2 mètres !! … pas très « green ».
2/ Se fabriquer une sonde température couplée à un ESP-01 : utilisation de ESPEASY
Les 2 sont bien sûr compatible avec les applications domotiques DiY : Jeedom, Domoticz, Home Assistant et OpenHAB.
Comment établir le choix de tel ou tel firmware DiY pour ESP ? : (Choix pas facile beaucoup de groupe de qualité)
TASMOTA est très typé SONOFF (d’où la préférence de Tasmota pour le hackage du SONOFF)ESPeasy est plus généraliste (D’où ESPEASY pour la sonde de température indépendante).
Il en existe 3 ou 4 autres firmware DiY ayant chacun ses avantages et ses inconvénients.
Les deux communautés (Tasmota/EspEasy) sont sensiblement aussi importantes l’une que l’autre.Liste des contributeurs et fréquences des mises à jour : github permet d’avoir des statistiques !.
https://www.youtube.com/watch?v=B38e1HAMUXsExemple un bouton sensible
On peux même détourner les versions usine en les « augmentants » par ajout de capteurs.
https://esphome.io/devices/sonoff.html Liste toutes les configurations SONOFF
Des Firmwares DiY
Blogs
https://www.youtube.com/watch?v=B38e1HAMUXshttps://esphome.io/devices/sonoff.html
SONOFF
https://sonoff.tech
https://www.itead.cc
https://sonoff.tech/https://www.itead.cc/
SONOFF
https://www.youtube.com/watch?v=uZjZZKiKlNYVisite de l’usine
Une gamme très complète et prévue pour être hackable.
https://www.youtube.com/watch?v=uZjZZKiKlNY
SONOFF Avant de passer au étapes suivantes, bien penser que le remplacement du firmware d’origine par un nouveau impose quelques menu travaux manuels ☺.
Il faut généralement souder un connecteur pour pouvoir relier le device au PC (via un UART/USB et un connecteur de 4 pins (+/-/Tx/Rx). Opération assez facile et plus compliqué sur certains modèles minuaturisés.
Il existe bien une procédure dit « FOTA » Firmware Over the Air : C’est-à-dire recharger le nouveau software via la transmission radio.La procédure est longue, complexe et hasardeuse.- Il faut d’abord télécharger sur le site du fabriquant la dernière du fabricant (compatible DiY), ce qui veut dire
inscription puis téléchargement via l’application sur le smart phone et un montage alabiqué d’AP, puis télécharger puis flasher une version intermédiaire, puis rebelote avec la finale (bref 1 heure de boulot).
- J’ai essayé : conclusions pas encore au point j’ai toujours échoué sur l’utime flashage.
TASMOTA
Wiki : https://github.com/arendst/Sonoff-Tasmota/wikiGitHub : https://github.com/arendst
https://github.com/arendst/Sonoff-Tasmota/wikihttps://github.com/arendst
TASMOTA
Très nombreux tutoriaux ou youtube dessushttps://www.youtube.com/watch?v=IcOFeIcLFFo
Micrologiciel alternatif pour les périphériques basés sur ESP8266
tels que iTead Sonoff avec interface utilisateur Web, règles et
minuteries, mises à jour OTA, modèles de périphérique
personnalisés et prise en charge des capteurs. Permet de contrôler
MQTT, HTTP, Serial et KNX pour les intégrations avec les systèmes
de maison intelligente. Écrit pour Arduino IDE et PlatformIO.
Vu par Guilhem il y a quelques temps, le projet est maintenant très étoffé.
TASMOTAC’est donc une véritable mine d’or, avec énormément de combinaisons avec sources et binaires précompilés.
C’est un cas de DIY extrèmement rapide :
- On achète directement un HW packagé industriel
- On télécharge une autre version de firmware plus personnalisée
Le coût du sonoff défiant toute concurrence se fabriquer un actuateur de ce type n’a plus aucun sens.
C’est toujours possible voir ma note de Décembre 2016.
Pour démarrer : tout est dans le Wiki, et c’est plutôt bien documenté.
TASMOTA
(Préférer : Espeasy Flash c’est mieux)
La Procédure officielle TASMOTA
TASMOTA
Quel binaire utiliser ? : Dépend du produit et de la conf domotique
https://github.com/arendst/Sonoff-Tasmota/releases/tag/v6.6.0
Etape 1 : Choisir et Télécharger le bon binaire
https://github.com/arendst/Sonoff-Tasmota/releases/tag/v6.6.0
TASMOTA Des précisions
TASMOTAJ’opte pour le Classic qui est aussi en Francais
https://github.com/arendst/Sonoff-Tasmota/releases/tag/v6.6.0
https://github.com/arendst/Sonoff-Tasmota/releases/tag/v6.6.0
TASMOTA
http://www.cr10.fr/relai-sonoff/
rougeblancgrisnoir
Conseillé: Ré-Utilisable directement sur l’ESP01
Etape 2 : Souder un connecteur et raccorder le montage au PC via l’USB.
Version BASIC R1
ATTENTION : Bien sûr pas de raccordement secteur !!
http://www.cr10.fr/relai-sonoff/
TASMOTAhttps://github.com/arendst/Sonoff-Tasmota/wiki/Hardware-Preparation
Procédure officielle Tasmota
https://github.com/arendst/Sonoff-Tasmota/wiki/Hardware-Preparation
TASMOTA
Jumper en place (mode boot) Appuyer sur le bouton Mettre on Le flashage peux commencer avec ESPeasyFlasherContôler Enlever le jumper
Cablâge
Version SONOFF Basic R3 (sortie en 2019)Cette version utilise le 8255 (8286 sur les basic R1/2)Le chip 8255 intégre nativement 1MO de Flash
Version Firmware testée : sonoff-FR.bin
Plus rapide de souder 4 pins que de passer par la procédure de mise niveau radio, de plus on peux flasher directement la bonne version.
La version R3 est juste + esthétique.
TASMOTA Version DUAL ou POWParticularité : 2 relais ou mesure de la consommation
Toujours le même principe.
https://projetasgarddiy.fr/2019/01/29/flasher-un-sonoff-dual-r2-avec-tasmota/
https://projetasgarddiy.fr/2019/01/29/flasher-un-sonoff-dual-r2-avec-tasmota/
TASMOTA
https://github.com/letscontrolit/ESPEasy/releases/tag/mega-20190903
Sélectionner une version de l’outillage et la télécharger
https://github.com/letscontrolit/ESPEasy
Etape 3 : Choisir un (bon) utilitaire de flashage
Version Basic
Version Avancée+ Terminal serie
Perso je préfère :
https://github.com/letscontrolit/ESPEasy/releases
https://github.com/letscontrolit/ESPEasy/releases/tag/mega-20190903https://github.com/letscontrolit/ESPEasyhttps://github.com/letscontrolit/ESPEasy/releases
TASMOTAhttps://github.com/espressif/esptool
https://projetsdiy.fr/esp-easy-flasher-firmware-esptool-py-esp8266/
https://www.domo-blog.fr/comment-flasher-le-firmware-du-sonoff-basic-pour-lutiliser-sur-jeedom/
http://opendomotech.com/flasher-un-sonoff-avec-esp-easy/http://www.electro-info.ovh/index.php?id=220
Version Python(Tasmota)
Il y a d’autres alternatives : (affaire de goût)
Version Espressif
Tutoriels
https://github.com/espressif/esptoolhttps://projetsdiy.fr/esp-easy-flasher-firmware-esptool-py-esp8266/https://www.domo-blog.fr/comment-flasher-le-firmware-du-sonoff-basic-pour-lutiliser-sur-jeedom/http://opendomotech.com/flasher-un-sonoff-avec-esp-easy/http://www.electro-info.ovh/index.php?id=220
TASMOTAExcellent tuto+ d’autres
http://opendomotech.com/flasher-un-sonoff-avec-esp-easy/
Etape 4 : Procédure pour Flasher le binaire
appuyant sur le bouton du Sonoff, attendre encore
une seconde ou deux et relacher. cliquer enfin
sur « FlashESP8266 ».
https://github.com/KmanOz/Sonoff-HomeAssistant
Après le Flash le module démarre sur son propre réseau WifiIl est visible sur un smartphone saisir le réseau Wifi de la box puis redémarrer
Utiliser un utilitaire tel que IP Scanner pour connaitre l’adresse IP que la box va donner au sonoff Utiliser un navigateur pour accéder au son off avec so adresse Finir de le configurer MQTT et DomoticZ
ATTENTION : Toujours des précautions à prendre avec l’ESP8266 La pin GPIO0 doit être reliée à la masse (utilisation de jumper), dans conf : appuyer sur le bouton avant de mettre on.
http://opendomotech.com/flasher-un-sonoff-avec-esp-easy/https://github.com/KmanOz/Sonoff-HomeAssistant
TASMOTA Etape 4 : Procédure pour Flasher le binaire
Après le flashage : - Mettre OFF- Retirer le cavalier - Laisser les câbles UART connectés (avec un terminal UART type Termite on peut voir les
traces d’éxécutions plutôt rassurant).- Alimenter via l’UART (toujours pas de secteur)- Vérifier le fonctionnement de l’ensemble (voir la note 802 pour le détail)
TASMOTAProcédure : http://www.steves-internet-guide.com/setting-up-the-sonoff-tasmota-mqtt-switch/
La version Française c’est bien sympa !!
Etape 5 : Configurer le SONOFF modifié par Tasmota
http://www.steves-internet-guide.com/setting-up-the-sonoff-tasmota-mqtt-switch/http://www.steves-internet-guide.com/setting-up-the-sonoff-tasmota-mqtt-switch/
TASMOTA Copie Ecran navigateur
TASMOTAVoir la note 802 (même auteur)Vérification en 3 étapes :
✓ Via le navigateur HTTM (commandes directe)✓ Via le browser MQTT (voir l’apparission des commandes sur le serveur MQTT)✓ Via une appli domotique –Etape Ultime qui clos le couplage du device à l’application domotique de son choix
Pour le test rapide le mieux c’est DOMOTICZ
Etape 6 : Tester le nouveau firmware
ESPEASY
Wiki : https://www.letscontrolit.com/wiki/index.php/ESPEasyGithub : https://github.com/letscontrolit
https://www.letscontrolit.com/wiki/index.php/ESPEasyhttps://github.com/letscontrolit
ESPEASYObjectif : fabriquer une sonde de température étanche avec un simple ESP 01 et une sonde Source : https://projetsdiy.fr/esp-easy-objet-connecte-domotique-esp8266/Projet : https://www.letscontrolit.com/wiki/index.php?title=ESPEasy
http://framboiseaupotager.blogspot.com/2018/05/tous-les-secrets-de-lesp01-realisation.html
https://projetsdiy.fr/esp-easy-esp8266-wemos-d1-mini-mqtt/
https://projetsdiy.fr/esp-easy-objet-connecte-domotique-esp8266/
Suivre la procédure : https://projetsdiy.fr/esp-easy-objet-connecte-domotique-esp8266/
Attention n’oubliez pas le strapping au moment de la programmation.
ESPEASY
Connecter la sonde de température :
ESPEASY
Mot de passe : configesp
Lancer un navigateur avec l’adresse : http://192.168.4.1/setup
ESPEASY
http://192.168.4.1/setup
main
ESPEASY
CONCLUSIONS
Facile, rapide il n’y a plus à hésiter.