Hack d’une prise Alfawise murale étanche
16 avril 2019Bonjour tout le monde,
Aujourd’hui, je me suis amusé à changer le firmware d’une prise Alfawise étanche qui me permettra de piloter la pompe de mon système de récupération d’eau de pluie.
Comme c’est encore tout frais et afin d’éviter d’oublier des étapes, je vais vous montrer comment “Hacker” celle-ci.
La prise Alfawise comme les prises SonOff est basée sur un relais piloté par un microcontrôleur Esp8266 donc ce tutoriel est appliquable à quasiment tous les systèmes basés sur ce microcontrôleur.
L’Esp8266 est assez cool car il permet de faire des objets connectés pilotés directement via le réseau Wifi très facilement et pas mal d’industriel “Lowcost” l’utilise pour fabriquer des prises “intelligentes”. On avait déjà un peu abordé le sujet dans le post sur le NodeMcu. ( https://miniprojets.net/index.php/2018/04/24/nodemcu-ou-comment-piloter-des-prises-via-le-wifi-pour-moins-de-10e/ )
Partie 0: Le matériel choisi
Pour le matériel nécessaire à cette transformation, il faudra:
- Un convertisseur FTDI
- Des câbles dupont
- Un câble mini USB
- Un fer à souder et de l’étain
- Un cutter ou un couteau
- Un trombone (oui ça fait toujours classe de dire que l’on hack quelque chose avec un trombone)
- Un ordinateur afin de faire “la programmation”
- Un pistolet à colle chaude
- La Prise Alfawise
Partie 1: Préparation du matériel
Maintenant que vous avez tout cela, nous pouvons passer à l’étape du démontage. Attention avant de démonter, vous devez toujours débrancher la prise 220v! Pour la programmation, seule l’alimentation via le convertisseur FTDI sera nécessaire et suffisante, ne travaillez jamais avec du 220V branché et accessible facilement!!!
Pour démonter, la prise rien de plus simple, il faut dans un premier temps soulever le capot supérieur afin de voir les composants internes.
Débranchez les fils rouge (phase) et noir (neutre) et enlevez le capot supérieur.
Après on débranche les fils du bouton poussoir afin d’éviter de les endommager quand on enlèvera la carte du boitier inférieur
Maintenant avec un cutter, on va couper et enlever la colle qui maintien la carte dans le boitier
Voilà maintenant vous avez la carte accessible et prête à passer à l’étape de préparation
Pour préparer la carte, il faut la retourner afin d’avoir accès aux pastilles de programmation
Les pastilles se trouvent sur la photo ci-dessus en haut à droite et marquées 3.3,RX,TX et GND
Et voilà passons à l’étape un peu tricky, il faut souder un câble sur chaque pastille (3.3V, GND, TX, RX) en faisant attention à ne pas faire de court-circuit.
Une fois cela fait, on peux brancher les câbles sur le convertisseur FTDI en respectant bien le voltage d’alimentation car certain convertisseur comme le mien possède un jumper qui permet de choisir entre du 5V et du 3.3V pour le Vcc (Pour un Esp8266, il faut prendre 3.3V.Donc on connecte de la façon suivante:
- Carte –> FTDI
- 3.3V –> vcc
- RX –> TX
- TX –> RX
- GND –> GND
Petite astuce: Si lors de l’étape de Flashage, un échec de communication se produit, il faudra peut-être inverser le RX et le TX, car certains convertisseurs possèdent des bornes inversées
Une fois cela fait, vous êtes prêt à brancher le tout sur l’ordinateur. Mais avant cela, il faut mettre l’Esp8266 en mode Flashage.
Partie 2: Flashage du firmware
Pour cela, il faut faire créer une connexion là où à l’origine il y avait un bouton de prévu comme sur les photos suivantes (j’ai essayé avec le bouton poussoir du boitier inférieur de la prise mais cela ne marchait pas)
Je vous l’avais dis que ça fait classe de hacker un truc avec un trombone!
Bon une fois cela fait et tout en gardant le trombone en place, il suffit de brancher le tout à l’ordinateur grâce au câble mini USB.
Normalement, si tout ce passe bien, un nouveau port COM doit être détecté, si ce n’est pas le cas, il faudra surement installer les bons drivers pour votre convertisseur FTDI. (Souvent basé sur un convertisseur CH340G)
Si tout est ok, on enlève le trombone et on peux passer à l’étape de programmation
Pour la programmation de cette prise, j’utilise le firmware Espurna.
Voici le lien explicatif du projet: https://github.com/xoseperez/espurna/wiki ainsi que le lien de téléchargement direct des firmwares https://github.com/xoseperez/espurna/releases
Clairement, ce gars est badass vu le nombre de matériel qu’il rend compatible! Je vous invite fortement à fouiner un peu sur son projet.
Pour notre cas, on utilisera le firmware
espurna-1.13.5-itead-sonoff-basic.bin ou plus récent
Pour flasher le firmware, j’utilise le soft ESPEasy, issue de ce site: https://github.com/letscontrolit/ESPEasy/releases
Il suffit de le télécharger, le dézipper et de mettre le firmware téléchargé précédemment dans le dossier.
Une fois que cela est fait, il faut double-cliquer sur FlashESP8266.exe
La fenêtre suivante apparait avec le port COM normalement déjà renseigné. Il ne vous reste plus qu’à choisir le firmware
Vous n’avez plus qu’à cliquer sur Flash et c’est parti mon kiki!
Si tout ce passe bien au bout de 2-3 min vous aurez un Flash Ok (s’il est Failed, débranchez l’USB, vérifiez le RX,TX, pensez au trombone et rebrancher)
Voilà vous avez enfin fini la programmation de votre prise!
Maintenant, il faut se connecter dessus afin de pouvoir la piloter à distance.
Donc afin de travailler en toute sécurité, vous devez remonter la prise dans son boitier. Il faut respecter les étapes suivantes:
- Dessouder les 4 câbles dupont installés précédemment
- Remettre en place la carte dans son boitier en la refixant bien avec de la colle chaude
- Reconnecter le bouton poussoir (pas nécessaire mais utile quand on a pas d’ordinateur et que l’on est à coté de la prise)
- Reconnecter les fils rouge et noir
- Disjoncter le circuit qui va accueillir la prise au niveau du tableau électrique
- Brancher la phase, le neutre et la terre sur la prise comme indiqué dans le manuel
- Remettre en route le disjoncteur
Partie 3: Configuration de la prise
Une fois tout cela fait, si vous regarder maintenant sur votre ordinateur du coté des réseaux Wifi, vous avez normalement un nouveau réseau qui est apparu et qui se nomme ESPURNA-XXXXX
Vous allez pouvoir vous connecter dessus avec le mot de passe suivant : fibonacci
Maintenant allez sur votre navigateur internet et tapez l’adresse suivante:
http://192.168.4.1
On va vous demander un login et un mot de passe qui sont les suivants “admin” pour le login et “fibonacci” pour le mot de passe
Il va falloir changer le mot de passe tout de suite car le firmware refuse de vous laisser travailler tout nu (c’est à dire avec un mot de passe par défaut, c’est une question d’hygiène et de sécurité informatique)
La prise va rebooter et vous devrez vous reconnecter sur le réseau ESPURNA-XXXXX avec le nouveau mot de passe (Faite attention souvent votre OS garde en mémoire l’ancien mot de passe associé au réseau et refuse de se reconnecter sur celui-ci donc il faut lui faire oublier le réseau pour ensuite pouvoir se reconnecter)
Une fois la reconnection faite, vous pouvez retourner sur la page
http://192.168.4.1 avec pour login “admin” et mot de passe celui que vous avez défini.
Vous allez vous retrouver sur la page suivante:
On voit que le Switch est sur Off, ce qui correspond bien à la réalité comme la photo ci-dessous
Je sais ce que vous pensez: Mon dieu, il nous parle de sécurité électrique mais il nous montre une image où la prise n’est pas dans son boitier… (oui je sais mais pour la démonstration c’était plus simple…)
Bon revenons à nos moutons
Maintenant sur la page et que vous cliquez sur le On –> Tadam! il passe normalement à On comme sur la capture suivante
Et si tout c’est bien passé vous avez du entendre un petit clac et la led d’état du relais s’allume comme illustré par la photo suivante (qui est toujours avec un système sans protection…)
Hourra, ça marche!!!
Maintenant, il ne reste plus qu’à programmer la prise pour qu’elle se connecte sur le réseau Wifi de votre maison.
Pour cela, il faut allez sur l’onglet WIFI et vous allez tomber sur la page suivante:
Faite un “Scan now” pour vérifier que votre prise voit votre réseau (ici on observe qu’elle voit mes réseaux et ceux de mes voisins)
Il suffit alors de cliquez sur Add network et de remplir les champs correctement.
Il faut savoir que si vous mettez plusieurs réseaux, la prise se connectera toujours sur le réseau donc le signal est le plus fort (C’est pratique pour quelqu’un qui comme moi a des répéteurs Wifi qui peuvent tomber en panne de temps en temps).
Maintenant que tout est ok, vous pouvez cliquer sur Save puis sur Reboot.
On peux maintenant se reconnecter sur notre réseau Wifi habituel.
Une fois cette étape faite, il faut allez dans les paramètres de votre routeur afin de connaitre l’adresse IP qui est attribuée à votre prise (pour moi c’est la Freebox qui gère l’adressage donc cela ressemble à cela)
Il ne me reste alors plus qu’à aller dans mon navigateur internet et taper l’adresse http://192.168.1.39/, rentrez le login et le mot de passe définis précédemment pour retrouver le contrôle à distance de ma prise.
Voilà c’est tout pour ce petit “Hack”. Je vous expliquerai dans un prochain post comment faire pour la connecter à un système domotique (style Jeedom grâce au protocole MQTT).
Je vous remet les adresses des différents sites qui m’ont permis de construire ce tutoriel:
https://github.com/xoseperez/espurna/wiki
https://github.com/letscontrolit/ESPEasy/releases
et au cas où, voici l’archive contenant le firmware et le logiciel nécessaire au Flashage.
J’espère que ce post aura été clair et vous aidera dans le futur. N’hésitez pas à me faire des retours si un truc cloche ou que vous bloquez sur un point.
Bon continuation à tous,
Ferrader
Salut merci pour ce tuto très instructif
[…] de la méthode pour récupérer l’adresse IP d’un matériel brancher sur une freebox http://miniprojets.net/index.php/2019/04/16/hack-dune-prise-alfawise-murale-etanche/ (Pour les autres, je suis désolé mais il faut voir comment faire avec votre Box ou Routeur mais […]
[…] de la méthode pour récupérer l’adresse IP d’un matériel brancher sur une freebox http://miniprojets.net/index.php/2019/04/16/hack-dune-prise-alfawise-murale-etanche/ (Pour les autres, je suis désolé mais il faut voir comment faire avec votre Box ou Routeur mais […]
Very good post! We will be linking to this particularly great post on our site. Keep up the good writing.
Howdy fantastic website! Does running a blog similar to this take a large amount of work? I’ve no expertise in coding however I had been hoping to start my own blog soon. Anyways, should you have any suggestions or techniques for new blog owners please share. I understand this is off topic nevertheless I simply needed to ask. Appreciate it!
Hi, I use wordpress. it’s quite simple to use it. I don’t have any suggestions, i just write what i want.
[…] pouvez aussi relire mon article http://miniprojets.net/index.php/2019/04/16/hack-dune-prise-alfawise-murale-etanche car cela sera utile pour la […]
[…] On télécharge aussi le logiciel flasher le firmware, j’utilise le soft ESPEasy, issue de ce site: https://github.com/letscontrolit/ESPEasy/releases comme nous avions fais dans l’article http://miniprojets.net/index.php/2019/04/16/hack-dune-prise-alfawise-murale-etanche/ […]
[…] On télécharge aussi le logiciel flasher le firmware, j’utilise le soft ESPEasy, issue de ce site: https://github.com/letscontrolit/ESPEasy/releases comme nous avions fais dans l’article http://miniprojets.net/index.php/2019/04/16/hack-dune-prise-alfawise-murale-etanche/ […]