Transformer un Sonoff SC en veilleuse connectée

Dans ce nouvel article, je vais vous apprendre à transformer votre Sonoff SC en veilleuse connectée. Et plus encore, pour cela, on va reprogrammer deux firmwares, ajouter un anneau de LED RGB et changer le capteur de température/humidité pour un modèle plus performant.

Pour rappel, le Sonoff SC est un capteur d’environnement complet fonctionnant en Wifi, pour plus d’informations, n’hésitez pas à relire mon article précédent sur le sujet.

Bref, c’est un bon petit projet pour passer notre week-end bien au chaud, sans plus attendre passons dans le vif du sujet.

Les améliorations

Comme indiqué plus haut, c’est l’occasion ou jamais d’en profiter pour améliorer un peu notre Sonoff SC. Pour ma part, cela va passer par un remplacement du capteur de température/humidité le fameux DHT11. À la place, je lui préfère son grand frère le DHT22 qui est plus précis, mais qui à aussi une plage de fonctionnement plus large.

Sonoff_SC_Veilleuse_Connectee_hack_01

Ce choix n’a pas été fait au hasard, ces deux équipements sont exactement identiques du point de vue matériel. La seule chose qui change est du côté logiciel, la librairie n’est pas la même. Mais comme on va changer les firmware dont celui de l’ATMEL qui gère de DHT, c’est l’occasion ou jamais de mettre de l’open source partout.

On en profite aussi pour souder un connecteur standard qui nous permettre de déporter le DHT plus haut dans le boîtier au niveau du capteur de poussière et ainsi encore améliorer la précision des relevés.

On fait de même pour l’ensemble des connecteurs non peuplé. Cela nous permettra plus facilement de brancher notre reprogrammateur et d’utiliser les pistes libres pour ajouter d’autres composant comme l’anneau de LED qui vas nous permettre de transformer notre Sonoff SC en veilleuse connectée.

Transformer sont Sonoff SC en veilleuse connectée

Un capteur environnemental Wifi et qui fait veilleuse, le tout en open source pilotable sous Jeedom et en 5V, que demander de plus ?

Pour la partie veilleuse, je me base sur un anneau de 24 LED NeoPixel 5050 RGB de chez Adafruit. Le gros avantage est que chacune des LED est pilotable et adressable individuellement, ce qui permet de réaliser des motifs lumineux complexe.

Pour l’installation rien de bien compliqué, après avoir démonté complètement le Sonoff SC, on trouve assez de place dans la partie supérieure. On fait simplement glisser l’anneau dans le tube jusque la butée.

Pour la connexion, on soude simplement 3 fils sur les bornes 5V GND et data input. On se repiquera ensuite sur les broches ISP 2*3 à côté de l’ATMEL pour le 5V et la masse et la broche SDA de l’ESP pour le data input.

La suite sera de donner les nouveaux firmware, Tasmota pour l’ESP8266 bien connu, n’hésitez à lire un précédent tutoriel sur le sujet. Et un firmware alternatif pour l’ATMEL qui prend en charge le DHT22 ainsi que d’autres améliorations.

Pour la reprogrammation de l’ATMEGA, le branchement est semblable à ce que l’on fait habituellement sauf qu’en plus, il faut connecter la ligne DTR du reprogrammateur à la broche RST de l’ATMEGA. Cela vas envoyer le signal automatiquement le signal de reset à l’ATMEGA afin de le passer en mode reprogrammation (voir photo ci-dessous).

On repart ainsi avec un module entièrement open source. Petite astuce, n’oublier pas d’enlever les deux jumper RX et TX sur la carte afin de pouvoir reprogrammer séparément les deux microprocesseurs. Et aussi sur certaines révision du Sonoff SC, les marquages RX et TX sont inversés. Donc si vous avez du mal à reprogrammer, essayer d’inverser le RX et le TX.

Il ne reste plus qu’a assembler l’ensemble avec un peu de colle chaude et jouer des coudes pour faire entrer tous les câbles. Mais cela se fait sans trop de mal et les changements sont imperceptible de l’extérieur.

Configuration et ajout dans Jeedom

Passons à la configuration de l’ensemble. Pour cela, on se rend sur la console web de notre équipement puis on renseigne les paramètres du module.

Ici Sonoff SC et pour piloter les LED, on ajoute sur le GPIO2 le driver des LED WS2812. On se retrouve avec toutes les informations et la gestion des LED sur la page principale.

On n’oublie pas de désactiver les logs sur le port série pour ne pas interférer avec la communication entre l’ATMEL et l’ESP. Puis on renseigne les informations nécessaires pour la communication avec Jeedom en MQTT.

 

Et voici fini pour le Sonoff SC, passons maintenant à Jeedom. On va utiliser le plugin “JMQTT” pour récupérer les informations, que l’on renseigne comme ci-dessous.

Sonoff_SC_Veilleuse_Connectee_Jeedom_01

Puis on récupère ensuite les informations qui nous intéresse avec l’option “parseJSON“. On renseigne aussi les commandes actions qui vont nous permettre de donner des instructions au Sonoff SC.

On se retrouve maintenant avec une nouvelle tuile sur notre dashboard. Sur lequel apparaît toutes les informations de l’environnement ainsi que la possibilité de piloter les LED et d’avoir des graphiques d’évolution.

Conclusion

Transformer un Sonoff SC en veilleuse connectée est un beau petit projet de week-end qui nous montre une fois de plus que l’open source à beaucoup à nous apporter. Mais sans aller jusqu’à parler de hacking, on à quand même été très loin dans les modifications d’un produit à l’origine propriétaire.

On se retrouve bientôt pour de nouveaux tutoriels.

3 pensées sur “Transformer un Sonoff SC en veilleuse connectée

  • 05/01/2019 à 21:13
    Permalink

    Bonjour,

    Merci pour votre tutoriel ! Je l’attendais depuis votre dernier post sur le sonoff SC avec Jeedom !

    Cependant je bloque sur la programmation de l’ATMega328P car je ne l’ai jamais fait sur sur ce microprocesseur,

    Quelle est la procédure ?

    Utilisez-vous Atom également ?

    Utilisez-vous la même carte de programmation que pour l’ESP 8266 ?

    Dans l’espoir de vous relire.

    Cordialement.

  • 05/01/2019 à 21:38
    Permalink

    Bonjour, la procédure est très proche de celle de l’ESP. J’utilise le même reprogrammateur (YP-05) et platformio. Branchez le reprogrammateur aux broches de l’ATMEGA 5V, GND, RX, TX comme d’habitude mais en plus branchez la ligne DTR du reprogrammateur à la broche RST de l’ATMEGA, cela vas envoyer le signal de reset à l’ATMEGA permettant de le passer en mode reprogrammation évitant ainsi de la faire manuellement.
    Dans platformio, pour uploader le firmware faire F7 et choisissez l’option “UPLOAD (sonoff-sc-pro)” si vous avez mis un DHT22 à la place du DHT11, cette information apparait dans le fichier platformio.ini
    J’ai amélioré l’article suite à votre remarque, merci à vous.

  • 16/01/2019 à 21:32
    Permalink

    Merci pour votre aide !

    La domotique progresse grâce à vous !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *