Bouton intelligent IFTTT : 5 étapes
Bouton intelligent IFTTT : 5 étapes
Anonim
Bouton intelligent IFTTT
Bouton intelligent IFTTT

J'ai créé ce bouton intelligent avec les objectifs suivants en tête:

  • Il a dû fonctionner avec des piles alcalines standard pendant une durée décente
  • Il devait pouvoir interagir avec IFTTT
  • Il devait être petit, et à cause de cela, il devait être simple

Fournitures

  • ESP-01 (Vous pouvez les trouver partout, j'obtiens le mien sur AliExpress)
  • Bouton poussoir (je les ai utilisés car ils sont beaux et gros)
  • Résistance 1.5K (Encore une fois, vous pouvez les trouver n'importe où)
  • Bouton-poussoir lumineux à LED (j'ai le mien ici)
  • Carte prototype

Étape 1: DIY IFTTT Smart Button

J'ai fini par choisir un bouton-poussoir lumineux à LED comme étui. J'ai eu cette idée de ce guide. C'est aussi là que j'ai découvert que je pouvais alimenter l'ESP avec seulement deux piles alcalines. En fait, j'en ai beaucoup utilisé, mais il y a eu quelques problèmes. Premièrement, c'était trop compliqué. Je n'avais pas besoin d'autant de fonctionnalités. Deuxièmement, le code est pour NodeMCU, et je ne me souviens plus pourquoi, mais je voulais utiliser Arduino IDE. Mais le projet a été un excellent point de départ.

Le premier problème que j'ai rencontré était de savoir comment faire en sorte qu'un bouton fasse deux choses. C'était délicat car le bouton est également utilisé pour sortir le module du sommeil profond, donc un appui long ne pouvait pas être détecté sans ajouter plus de circuits. Après de nombreuses recherches, j'ai finalement écouté quelques conseils que j'avais vus rapportés à quelques reprises, mais pour une raison quelconque, j'ai continué à passer sous silence. L'ESP peut détecter de quel état il a démarré. Donc, s'il est réveillé d'un sommeil profond, il signalera que, s'il a été réveillé d'une réinitialisation, il le signalera. J'ai utilisé cette fonctionnalité pour faire la distinction entre un simple tapotement, qui le réveillerait du sommeil profond, et un double tapotement, qui le réinitialiserait avant qu'il ne passe en sommeil profond et donnerait ainsi une réponse différente. Cela a grandement simplifié le circuit.

Maintenant, tout ce dont j'avais besoin était un interrupteur, connectant le RST à la terre avec une résistance de 1,5K. C'est ça. Et bien sûr la puissance des batteries. Mais ça l'est. Le câblage est hyper simple. Cependant, il y a de la soudure, alors préparez-vous à cela.

Étape 2: fabrication du boîtier et de la planche

Vous devez d'abord modifier le boîtier pour l'adapter au module. J'ajouterai des images et des étapes détaillées plus tard mais pour l'instant; Je viens à peu près de suivre à nouveau les étapes applicables de ce guide.

Une fois le boîtier modifié, vous devez souder des fils aux bornes de la batterie. J'ai utilisé des cavaliers pour pouvoir connecter/déconnecter le module pour un clignotement facile.

Ensuite, vous devez créer la carte prototype avec le commutateur et la résistance. Mesurez la taille que la proto-carte doit avoir pour traverser les deux compartiments de batterie restants. Ensuite, soudez simplement le bouton au milieu de la carte avec un fil allant au bouton RST et l'autre se connectant au GND avec une résistance de 1,5K.

Ensuite, j'ai utilisé de la colle chaude pour fixer la planche au boîtier. La seule chose qui reste à faire est de brancher les fils dans le module et de tout assembler. Mais avant cela, il serait bon d'avoir d'abord du code. Flashons-le !

Étape 3: Codez

Et voici le code !

Remplacez simplement [SSID], [password], [trigger] et [key] par les informations appropriées.

En fait, vous devrez d'abord créer le déclencheur et obtenir la clé d'IFTTT. Alors allons-y puis revenons, parce que j'aime faire les choses à l'envers.

Étape 4: Configuration IFTTT

Vous devez configurer un webhook IFTTT qui se déclenche en cliquant sur une URL spécifique. Si vous n'avez pas de compte sur IFTTT, qu'attendez-vous ? C'est génial, va t'inscrire.

Si vous avez déjà un compte et que vous êtes habitué à créer des applets, cela devrait être trop difficile. Mais si vous ne l'êtes pas, voici un petit guide concis sur la configuration d'un webhook.

Vous avez maintenant vos informations, le nom du déclencheur et votre clé, pour le code !

Maintenant, vous pouvez enfin flasher le code.

Remarque: Étant donné que ces boutons peuvent être utilisés pour faire ce que vous voulez et que vous pouvez modifier la fonction plus tard, je vous recommande d'utiliser des noms de déclencheur génériques, comme button1 ou bluebutton, donc si vous modifiez sa fonction plus tard, le nom du déclencheur n'est pas quelque chose lié à ce pour quoi vous avez utilisé le bouton à l'origine, ce qui pourrait prêter à confusion.

Étape 5: FAIT

Et c'est fini. J'espère que vous avez trouvé ce guide utile. Si vous avez des questions ou des suggestions, n'hésitez pas à commenter.

Si vous êtes un bon programmeur, ce que je ne suis pas, n'hésitez pas à corriger mon code. J'ai clairement commenté ses lacunes mais je n'ai pas les compétences pour les corriger sans un énorme mal de tête, je ne suis vraiment pas du tout un programmeur.

Conseillé: