Inhaltsverzeichnis:

GmailBox mit Zapier und Adafruit - Gunook
GmailBox mit Zapier und Adafruit - Gunook

Video: GmailBox mit Zapier und Adafruit - Gunook

Video: GmailBox mit Zapier und Adafruit - Gunook
Video: Was ist IFTTT - Einfache Erklärung 2024, November
Anonim
GmailBox mit Zapier und Adafruit
GmailBox mit Zapier und Adafruit

In diesem anweisbaren erkläre ich Ihnen Schritt für Schritt, wie Sie einen Gmail-Notifier mit dem ESP8266 erstellen.

Was brauchst du:

- Gmail-Konto

- Zapier-Konto

- Adafruit-Konto

- Arduino-IDE

- NodeMCU ESP8266

- Servomotor (ich verwende den SG90)

- LED-Licht (ich verwende einen Neopixel-LED-Streifen, andere Lichter funktionieren auch, erfordern jedoch möglicherweise eine andere Bibliothek)

Schritt 1: Zapier einrichten

Zapier einrichten
Zapier einrichten
Zapier einrichten
Zapier einrichten

Erstellen Sie ein Zapier-Konto und erstellen Sie einen neuen Zap. Sie benötigen Zapier, um Daten von Gmail zu erhalten, die anschließend an Adafruit weitergeleitet werden. Dazu später mehr.

Schritt 2: Erstellen eines Triggers

Trigger erstellen
Trigger erstellen
Trigger erstellen
Trigger erstellen

Wir möchten sicherstellen, dass, wenn Sie eine E-Mail in Gmail erhalten, etwas anderes passiert, daher benötigen Sie Ihr Gmail-Konto. Wählen Sie in Ihrem neuen Zap Gmail als Anwendungsauslöser und melden Sie sich bei Gmail an.

Schritt 3: Zapier mit Adafruit verbinden

Zapier mit Adafruit verbinden
Zapier mit Adafruit verbinden
Zapier mit Adafruit verbinden
Zapier mit Adafruit verbinden
Zapier mit Adafruit verbinden
Zapier mit Adafruit verbinden

Jetzt möchten Sie die Daten, die Sie in Gmail erhalten haben, an Adafruit senden. Suchen Sie im Abschnitt "Tun Sie dies" nach Adafruit und verbinden Sie sich mit Ihrem Adafruit-Konto. Wählen Sie dann als Aktionsereignis "Feeddaten erstellen" aus.

Schritt 4: Einrichten von Adafruit

Einrichten von Adafruit
Einrichten von Adafruit
Einrichten von Adafruit
Einrichten von Adafruit
Einrichten von Adafruit
Einrichten von Adafruit

Gehen Sie nun zu io.adafruit.com und erstellen Sie ein Konto, wenn Sie noch kein Konto haben. Gehen Sie zu Ihren Feeds und erstellen Sie einen neuen Feed. In diesem Fall lautet der Name meines Feeds "gmailbox", diesen benötigen Sie später.

Wenn Sie Ihren Adafruit-Schlüssel nicht finden können, finden Sie ihn in der oberen rechten Ecke.

Schritt 5: Feed-Daten von Zapier

Feed-Daten von Zapier
Feed-Daten von Zapier
Feed-Daten von Zapier
Feed-Daten von Zapier

Gehen Sie nun zurück zu Zapier, um Ihren Feeddatenbereich zu ordnen. Wählen Sie bei der Feed-Taste die Option "Benutzerdefinierten Wert verwenden". Der "Custom Value For Feed Key" muss mit dem Namen Ihres Feeds in Adafruit übereinstimmen, seien Sie also vorsichtig mit Großbuchstaben.

Geben Sie bei "Wert" den Wert ein, den Sie in Adafruit als Wert sehen möchten. Der gleiche Wert wird später im seriellen Monitor in Arduino sichtbar sein.

Schritt 6: Testen mit Zapier, Adafruit und Gmail

Testen mit Zapier, Adafruit und Gmail
Testen mit Zapier, Adafruit und Gmail
Testen mit Zapier, Adafruit und Gmail
Testen mit Zapier, Adafruit und Gmail

Jetzt können Sie Ihren Zap testen. Klicken Sie auf Test & Continue (vergessen Sie nicht, den Zap danach einzuschalten). Gehen Sie dann zurück zu Adafruit zu Ihrem Feed und unter der Grafik können Sie sehen, ob die Daten angekommen sind. Nachdem Sie Ihren Zap eingeschaltet haben, können Sie dies auch testen, indem Sie sich selbst eine E-Mail senden.

Schritt 7: Arduino einrichten

Arduino einrichten
Arduino einrichten

Schließen Sie Ihren ESP8266 an und öffnen Sie Arduino. Erstellen Sie eine neue Skizze und eine neue Registerkarte, wie in der Abbildung oben gezeigt. Nennen Sie es "config.h" (Sie können es beliebig benennen). Fügen Sie den Code unten in die Registerkarte "config" ein.

Mit diesem Code können Sie sich mit Ihrem WLAN und Adafruit verbinden. Ich habe es aus einem zuvor verwendeten Projekt. Ich benutze es immer noch und es funktioniert gut für mich.

/************************ Adafruit IO-Konfiguration ********************** *********/

// besuchen Sie io.adafruit.com, wenn Sie ein Konto erstellen müssen, // oder wenn Sie Ihren Adafruit IO-Schlüssel benötigen. #define IO_USERNAME "Ihr Adafruit-Benutzername" #define IO_KEY "adafruit-Schlüssel" /******************************** WIFI ** ************************************/ #define WIFI_SSID "Ihre WLAN-SSD" #define WIFI_PASS "wifi Passwort" #include "AdafruitIO_WiFi.h"

Schritt 8: Einrichten Ihrer NodeMCU

Einrichten Ihrer NodeMCU
Einrichten Ihrer NodeMCU

Verbinden Sie den Servomotor und den LED-Streifen mit Ihrem ESP8266.

Drähte vom Servomotor (SG90): Braun geht in G (Masse), Rot geht in 3V, Orange geht in D6 (oder einen anderen digitalen Pin). Ich habe auch einige zusätzliche Kabel zur Verlängerung verwendet.

Drähte vom Neopixel: GDN geht an G (Masse), DIN geht an D4 (oder einen anderen digitalen Pin), +5V geht an 3V.

Schritt 9: Einrichten von Bibliotheken und Hardware

Gehen Sie nun zu Ihrer gerade erstellten Arduino-Skizze. Zuerst müssen Sie die benötigten Bibliotheken in die Skizze einbinden. Sie benötigen die soeben erstellte config.h, die Bibliothek für den ESP8622 und für den Neopixel-LED-Streifen.

Das fügst du wie folgt in den Code ein:

#include "config.h"

#einschließen #einschließen

Als Nächstes fügen Sie die von Ihnen verwendete Hardware hinzu

#enthalten

Servo-Servo; #define PIXEL_PIN D4 #define PIXEL_COUNT 10 #define PIXEL_TYPE NEO_GRB + NEO_KHZ800 Adafruit_NeoPixel Pixel = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);

Fügen Sie diese Zeile hinzu, um diese Skizze mit dem Feed in Adafruit zu verknüpfen:

AdafruitIO_Feed *gmailbox = io.feed("Ihr Feedname");

Schritt 10: Einrichtungscode ungültig machen

Im "void setup" verbinden Sie sich mit Adafruit, WiFi und stellen den Servomotor auf den zugewiesenen Pin ein. Danach können Sie im seriellen Monitor überprüfen, ob eine Verbindung hergestellt wurde.

Ich empfehle Ihnen, den Code erneut einzugeben, anstatt ihn zu kopieren. So können Sie sich später leichter erinnern und lernen, was Sie genau schreiben.

Der Code wird wie folgt aussehen:

Leere Einrichtung () {

// Geben Sie hier Ihren Setup-Code ein, um ihn einmal auszuführen: // Starten Sie die serielle Verbindung mit dem seriellen Monitor Serial.begin(115200) // warten Sie, bis der serielle Monitor geöffnet wird while(!Serial); // Verbindung zu io.adafruit.com Serial.print ("Verbindung mit Adafruit IO herstellen"); io.connect(); // Richten Sie einen Nachrichtenhandler für den Feed "Ihr Feedname" ein. // die handleMessage-Funktion (unten definiert) wird immer dann aufgerufen, wenn eine Nachricht // von Adafruit empfangen wird. // auf Verbindung warten while(io.status() get(); // der Pin des Servomotors servo.attach(D6); servo.write(0); nameofyourfeed->onMessage(handleMessage); }

Schritt 11: Code für ungültige Schleife

Als nächstes müssen Sie sicherstellen, dass Adafruit ständig läuft. Wir müssen dies in die void-Schleife stellen, damit ich ständig läuft.

Tun Sie dies wie folgt:

Leere Schleife () {

// Geben Sie Ihren Hauptcode hier ein, um ihn wiederholt auszuführen: io.run(); }

Schritt 12: Die Funktion für den Servomotor und LEDs als Ausgang

Jetzt werden wir sicherstellen, dass der Servomotor und die LEDs reagieren, wenn Sie eine E-Mail erhalten. Wir werden eine Funktion erstellen, die dies gewährleistet. Die Funktion wird "handleMessage" genannt, die wir zuvor im Code verwendet haben. Wir werden den Wert verwenden, den wir hier Adafruit sehen.

Wenn Sie eine neue E-Mail erhalten, muss sich der Servomotor um 90 Grad drehen und die LEDs müssen leuchten. Für die LEDs verwenden wir Rot als Farbe, aber Sie können es beliebig ändern. Sie möchten auch sicherstellen, dass nicht nur die erste LED des Streifens leuchtet, sondern Sie müssen sie in eine Schleife legen, um den gesamten Streifen zu beleuchten.

Versuchen Sie erneut, den Code erneut einzugeben, anstatt ihn zu kopieren und einzufügen.

Der Code wird wie folgt aussehen:

void handleMessage(AdafruitIO_Data *data) {

Wenn (Daten > 0) {servo.write (90); Verzögerung (1000); Serial.println ("Sie haben Post bekommen!"); for(int i = 0; i

Schritt 13: Auf Ihre NodeMCU hochladen und testen

Auf Ihre NodeMCU hochladen und testen
Auf Ihre NodeMCU hochladen und testen

Laden Sie die Skizze auf Ihren ESP8266 hoch. Sie können dies tun, indem Sie auf den nach rechts zeigenden Pfeil neben dem Häkchen in der linken oberen Ecke klicken.

Anschließend können Sie versuchen, sich selbst eine E-Mail zu senden, um es zu testen und sicherzustellen, dass es funktioniert.

Schritt 14: Der letzte Schliff

Sie sind mit dem Codierungsteil fertig. Fühlen Sie sich kreativ? Bauen Sie ein Briefkastengehäuse für das, was Sie gerade gemacht haben, und kleben Sie eine Fahne auf den Servomotor. Die Flagge wird jedes Mal hochgehen, wenn Sie eine E-Mail erhalten!

Vielen Dank, dass Sie diesem Handbuch gefolgt sind, und ich hoffe, es hat geholfen.

Empfohlen: