Archives par étiquette : espeasy

TP-Link Kasa et IFTTT

If This Then That, IFTTT, Si Ceci Alors Cela en français, un site qui permet de créer des Applets destinées à interagir avec votre domotique, votre Google Home, votre Alexa, vos modules TP-Link, eWelink, etc.

Aujourd’hui, nous allons créer une applet permettant de venir activer une prise Kasa (TP-Link) via un simple appel https. Cet appel pourra être lancé avec un simple curl depuis votre Raspberry Pi, un bouton sur Domoticz ou autre application de domotique, voir même depuis un IoT ESPeasy, ou un tableau de bord Node Red : vous l’aurez compris, TOUT est permis, TOUT est envisageable !

Commencez par vous inscrire sur https://ifttt.com/ puis depuis votre compte en haut à droite, cliquez sur CREATE :

Nous allons choisir WEBHOOKS pour pouvoir venir activer votre prise via https :

Choisissons Receive a web request puisque telle est notre intention, cqfd :

et donnons le nom radiateurmarche pour pouvoir l’indiquer dans notre requête web par la suite :

Nous venons de créer le déclencheur, trigger, il faut maintenant choisir le service qui sera activé, dans notre cas Kasa de TP-Link sur lequel nous possédons déjà un compte et une App android active. Les prises ont déjà un nom, faciles à retrouver :

Il vous sera demandé email et mot de passe de votre compte Kasa.
Que voulons-nous faire ? Choisissons Turn On pour ALLUMER notre prise :

Quelle prise voulons-nous activer ? La salle de bain, choisissons là :

et on termine en cliquant sur Create Action.

Voyons le résumé, puis validons :

Maintenant, il nous faut récupérer la clé d’activation, sans cela IFTTT ne pourra pas savoir qui demande quoi. Rendez-vous dans l’Applet Webhooks :

et cliquons sur SETTINGS en haut à droite :

Cliquez et copiez l’URL, cachée ici, pas fou 😉

Vérifions notre applet :

Vous pourrez désormais activer le chauffage en envoyant :

https://maker.ifttt.com/trigger/radiateurmarche/with/key/xxxxxxxxx

où xxxxxxxx doit être utilisé avec votre propre clé.

A vous de jouer maintenant pour créer une applet radiateurarret et utiliser le lien https://maker.ifttt.com/trigger/radiateurarret/with/key/xxxxxxxxxxxxx pour désactiver la prise.

Simple non ?

 

 

 

 

Weemos D1 : contrôle MQTT du shield relai

Votre petit Weemos D1 est LA puce idéale pour vos projets IoT (Internet Of Things) car il sait utiliser des tas de périphériques, de capteurs. Ici, nous allons nous intéresser au shield relai, une platine munie d’un seul et unique relai qui va venir s’enficher sur le Weemos D1 :

Avant de débuter, nous allons poser quelques bases :

  • vous avez déjà un broker MQTT d’installé
  • votre Weemos D1 est flashé avec EasyESP
  • dans la configuration, nous avons appelé notre ESP wimosD1
  • nous enverrons nos trames MQTT de commande sur wimosd1/relay

Si MQTT vous est totalement inconnu, je vous invite à lire cet excellent billet sur Framboise314, LE site dédié aux petits RaspberryPi.

Au boulot maintenant : commençons par aller dans la configuration ESPEasy du Weemos, dans hardware, et désactivons l’I2C :

Nous allons maintenant ajouter un périphérique Generic – MQTT Import dans devices :

Le nom est relay1 et il ne répondra qu’aux trames adressées au nom de l’ESP (souvenez-vous, nous avons choisi wimosd1) suivi de relay.

Dans TOOLS, ADVANCED, activons les RULES en cochant la case ad-hoc, comme l’aurait dit le capitaine d’un nom voisin :

Une nouvelle option RULES va alors apparaitre dans le menu de configuration d’ESPEasy. Voici la règle à ajouter :

on relay1#relay=1 do
Publish %sysname%/relay,relai actif
GPIO,5,1
endon

on relay1#relay=2 do
Publish %sysname%/relay,relai coupé
GPIO,5,0
endon

En clair, lorsque nous enverrons à wimosd1/relay la valeur 1, le relai s’activera. En envoyant 0, il se coupera ! Simple non ?

Ouvrez un terminal sur votre broker MQTT, placez vous en écoute MQTT :

mosquitto_sub -v -t 'wimosd1/#' 

Ouvrez un second terminal, toujours sur le broker MQTT, et lancez la commande :

mosquitto_pub -t 'wimosd1/relay' -m 1 

Et voici le relai qui s’active, dans le premier terminal vous verrez passer ces messages :

wimosd1/relay 1
wimosd1/relay relai actif

Vous savez désormais comment faire réagir un Weemos D1 à des ordres MQTT. A vous maintenant d’approfondir les scripts, d’intégrer de nouvelles actions en fonction d’une température par ex, d’un mouvement détecté avec un capteur PIR, etc.

ESPEasy : un firmware domotique sur ESP8266

Vous en aviez assez de chercher comment programmer votre ESP8266 avec Arduino ou en Python ? Les langages de programmation vous semblent parfois plutôt opaques ? Et si vous testiez le firmware ESPEasy sur votre petite bestiole 8266 ?

ESPEasy est un firmware qui va rendre votre ESP8266 totalement communiquant :

  • liaison vers un broker MQTT
  • liaison vers Domoticz
  • connexion simplifiée de dizaines de capteurs : température, pression, relais, mesure des gaz, luminosité, relais, interrupteurs, buzzer, etc.
  • connexion simple à votre réseau WiFi local

Pour débuter, le mieux est de se rendre sur le site des concepteurs, ESPEasy.

Coté matériel, nous avons utilisé indifféremment des NodesMCU, un ESP201, un Wemos D1 mini.

Ce dernier se trouve à des tarifs très bas en Asie et reçoit des shields, de petits modules externes qui s’enfichent les uns sur les autres et permettent de fournir les sondes nécessaires à votre usage :

Ici, nous avons en bas le Wemos D1 mini, au dessus une sonde de température/pression, et en dernier un relai. Ainsi équipés, nous pourrions imaginer de venir activer le relai si la température descend en dessous d’un certain seuil, toujours en diffusant l’information en MQTT ou directement sur la domotique de la maison, Domoticz.

D’autres shields sont disponibles :

  • bouton pression
  • écran OLED
  • écran LCD
  • détection de mouvements
  • contrôle de moteurs
  • platine pour poser 1 ou 2 shields supplémentaires