Indholdsfortegnelse:

GmailBox Med Zapier og Adafruit: 14 trin
GmailBox Med Zapier og Adafruit: 14 trin

Video: GmailBox Med Zapier og Adafruit: 14 trin

Video: GmailBox Med Zapier og Adafruit: 14 trin
Video: 3D-тусовки – LED Swords и PyPortal 2024, November
Anonim
GmailBox Med Zapier og Adafruit
GmailBox Med Zapier og Adafruit

I denne instruktive forklarer jeg dig trin for trin, hvordan du opbygger en Gmail -notifikator med ESP8266.

Hvad har du brug for:

- Gmail -konto

- Zapier -konto

- Adafruit -konto

- Arduino IDE

- NodeMCU ESP8266

- Servomotor (jeg bruger SG90)

- LED -lys (jeg bruger en Neopixel LED -strip, andre lys fungerer også, men kan kræve et andet bibliotek)

Trin 1: Opsætning af Zapier

Opsætning af Zapier
Opsætning af Zapier
Opsætning af Zapier
Opsætning af Zapier

Opret en Zapier -konto, og lav en ny Zap. Du skal bruge Zapier for at modtage data fra Gmail, og det vil derefter gå til Adafruit. Mere om dette senere.

Trin 2: Oprettelse af en udløser

Oprettelse af en udløser
Oprettelse af en udløser
Oprettelse af en udløser
Oprettelse af en udløser

Vi vil sikre os, at hvis du modtager en mail i Gmail, sker der noget andet, så du får brug for din Gmail -konto. I din nye Zap skal du vælge Gmail som applikationsudløser og logge på Gmail.

Trin 3: Tilslutning af Zapier til Adafruit

Tilslutning af Zapier til Adafruit
Tilslutning af Zapier til Adafruit
Tilslutning af Zapier til Adafruit
Tilslutning af Zapier til Adafruit
Tilslutning af Zapier til Adafruit
Tilslutning af Zapier til Adafruit

Nu vil du sende de data, du har modtaget i Gmail, til Adafruit. I afsnittet "Gør dette" skal du søge efter Adafruit og oprette forbindelse til din Adafruit -konto. Vælg derefter "Opret feeddata" som handlingsbegivenhed.

Trin 4: Opsætning af Adafruit

Opsætning af Adafruit
Opsætning af Adafruit
Opsætning af Adafruit
Opsætning af Adafruit
Opsætning af Adafruit
Opsætning af Adafruit

Gå nu til io.adafruit.com og opret en konto, hvis du ikke har en endnu. Gå til dine feeds, og opret et nyt feed. I dette tilfælde er navnet på mit feed "gmailbox", du skal bruge dette senere.

Hvis du ikke kan finde din Adafruit -nøgle, kan du finde den i øverste højre hjørne.

Trin 5: Feeddata fra Zapier

Feeddata fra Zapier
Feeddata fra Zapier
Feeddata fra Zapier
Feeddata fra Zapier

Gå nu tilbage til Zapier for at arrangere din feeddatasektion. Vælg indstillingen "Brug en brugerdefineret værdi" ved feednøgle. "Custum Value For Feed Key" skal være det samme som navnet fra dit Feed i Adafruit, så vær forsigtig med store bogstaver.

Ved "Værdi" udfyld hvad du vil se som værdi i Adafruit. Den samme værdi vil være synlig senere på den serielle skærm i Arduino.

Trin 6: Test med Zapier, Adafruit og Gmail

Test med Zapier, Adafruit og Gmail
Test med Zapier, Adafruit og Gmail
Test med Zapier, Adafruit og Gmail
Test med Zapier, Adafruit og Gmail

Nu kan du teste din Zap. Klik på Test & Fortsæt (glem ikke at tænde Zap bagefter). Gå derefter tilbage til Adafruit til dit feed og under grafen kan du se, om dataene er kommet. Når du har tændt din Zap, kan du også teste dette ved at sende dig selv en mail.

Trin 7: Opsætning af Arduino

Opsætning af Arduino
Opsætning af Arduino

Tilslut din ESP8266, og åbn Arduino. Opret en ny skitse og en ny fane som angivet på billedet ovenfor. Navngiv det "config.h" (du kan navngive det, hvad du vil). Indsæt koden herunder under fanen "config".

Med denne kode kan du oprette forbindelse til din WiFi og Adafruit. Jeg fik det fra et tidligere brugt projekt. Jeg bruger det stadig, og det fungerer godt for mig.

/************************ Adafruit IO Config *********************** *********/

// besøg io.adafruit.com, hvis du har brug for at oprette en konto, // eller hvis du har brug for din Adafruit IO -nøgle. #define IO_USERNAME "dit adafruit brugernavn" #define IO_KEY "adafruit key" /******************************* WIFI ** **********************************/ #define WIFI_SSID "din wifi ssd" #define WIFI_PASS "wifi adgangskode "#include" AdafruitIO_WiFi.h"

Trin 8: Opsætning af din NodeMCU

Opsætning af din NodeMCU
Opsætning af din NodeMCU

Tilslut servomotoren og LED -båndet til din ESP8266.

Ledninger fra servomotoren (SG90): Brun går i G (jorden), Rød går i 3V, Orange går i D6 (eller en anden digital pin). Jeg brugte også nogle ekstra kabler til forlængelse.

Ledninger fra Neopixel: GDN går til G (jord), DIN går til D4 (eller en anden digital pin), +5V går til 3V.

Trin 9: Opsætning af biblioteker og hardware

Gå nu til din Arduino -skitse, du lige har oprettet. Først skal du inkludere de biblioteker, du har brug for, i skitsen. Du skal bruge den config.h, du lige har oprettet, biblioteket til ESP8622 og til Neopixel LED -båndet.

Du sætter dette i koden som følger:

#include "config.h"

#include #include

Dernæst vil du inkludere den hardware, du bruger

#omfatte

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

Tilføj denne linje for at linke denne skitse til feedet i Adafruit:

AdafruitIO_Feed *gmailbox = io.feed ("dit feednavn");

Trin 10: Ugyldig opsætningskode

I "void setup" vil du oprette forbindelse til Adafruit, WiFi og indstille servomotoren til den tildelte pin. Herefter kan du kontrollere den serielle skærm, om der er oprettet forbindelse.

Jeg råder dig til at indtaste koden igen i stedet for at kopiere den. Dette gør det lettere at huske til senere, og du begynder at lære, hvad du præcist skriver.

Koden vil se sådan ud:

ugyldig opsætning () {

// sæt din opsætningskode her for at køre en gang: // start den serielle forbindelse med den serielle skærm Serial.begin (115200) // vent på, at den serielle skærm åbnes, mens (! Serial); // oprette forbindelse til io.adafruit.com Serial.print ("Opretter forbindelse til Adafruit IO"); io.connect (); // konfigurer en meddelelsesbehandler til feedet 'dit feednavn'. // handleMessage -funktionen (defineret nedenfor) vil blive kaldt, hver gang en besked // modtages fra Adafruit. // vent på tilslutning, mens (io.status () get (); // pin på servomotor servo.attach (D6); servo.write (0); nameofyourfeed-> onMessage (handleMessage);}

Trin 11: Kode for ugyldig sløjfe

Dernæst skal du sørge for, at Adafruit konstant kører, vi skal sætte dette i hulrummet, så jeg kører konstant.

Gør dette som følger:

void loop () {

// sæt din hovedkode her for at køre gentagne gange: io.run (); }

Trin 12: Funktionen for servomotoren og lysdioder som output

Nu skal vi sikre os, at servomotoren og lysdioderne reagerer, når du modtager en e -mail. Vi skal oprette en funktion, der sikrer dette. Funktionen får navnet "handleMessage", som vi brugte tidligere i koden. Vi vil bruge den værdi, som vi ser Adafruit her.

Hvis du modtager en ny e -mail, skal servomotoren dreje 90 grader, og lysdioderne skal lyse. Til lysdioderne bruger vi rød som farve, men du kan ændre den, hvad du vil. Du vil også sikre dig, at ikke kun den første LED på strimlen er tændt, så du skal sætte den i en loop for at tænde hele strimlen.

Og igen, prøv at indtaste koden igen i stedet for at kopiere den.

Koden vil se sådan ud:

void handleMessage (AdafruitIO_Data *data) {

hvis (data> 0) {servo.write (90); forsinkelse (1000); Serial.println ("Du har mail!"); for (int i = 0; i

Trin 13: Upload til din NodeMCU, og test den

Upload til din NodeMCU, og test den
Upload til din NodeMCU, og test den

Upload skitsen til din ESP8266. Du kan gøre dette ved at klikke på den højre pegepil ved siden af markeringen i øverste venstre hjørne.

Bagefter kan du prøve at sende dig selv en e -mail for at teste den og sikre, at den fungerer.

Trin 14: Finish Touch

Du er færdig med kodningsdelen. Føler du dig kreativ? Byg et postkassehus til det, du lige har lavet, og sæt et flag på servomotoren. Flaget vil gå op hver gang du modtager en e -mail!

Tak fordi du fulgte denne vejledning, og jeg håber, det hjalp.

Anbefalede: