Innholdsfortegnelse:

GmailBox med Zapier og Adafruit: 14 trinn
GmailBox med Zapier og Adafruit: 14 trinn

Video: GmailBox med Zapier og Adafruit: 14 trinn

Video: GmailBox med Zapier og Adafruit: 14 trinn
Video: JOHN PARK'S WORKSHOP LIVE 12/14/22 @adafruit @johnedgarpark #adafruit 2024, November
Anonim
GmailBox Med Zapier og Adafruit
GmailBox Med Zapier og Adafruit

I denne instruksen vil jeg forklare deg trinn for trinn hvordan du bygger en Gmail -varsler med ESP8266.

Hva trenger du:

- Gmail -konto

- Zapier -konto

- Adafruit -konto

- Arduino IDE

- NodeMCU ESP8266

- Servomotor (jeg bruker SG90)

- LED -lys (jeg bruker en Neopixel LED -stripe, andre lys fungerer også, men kan kreve et annet bibliotek)

Trinn 1: Konfigurere Zapier

Setter opp Zapier
Setter opp Zapier
Setter opp Zapier
Setter opp Zapier

Opprett en Zapier -konto og lag en ny Zap. Du trenger Zapier for å motta data fra Gmail, og deretter går de til Adafruit. Mer om dette senere.

Trinn 2: Opprette en utløser

Opprette en utløser
Opprette en utløser
Opprette en utløser
Opprette en utløser

Vi vil forsikre oss om at hvis du mottar en e -post i Gmail, vil noe annet skje, så du trenger Gmail -kontoen din. I din nye Zap velger du Gmail som applikasjonsutløser og logger på Gmail.

Trinn 3: Koble Zapier til Adafruit

Koble Zapier til Adafruit
Koble Zapier til Adafruit
Koble Zapier til Adafruit
Koble Zapier til Adafruit
Koble Zapier til Adafruit
Koble Zapier til Adafruit

Nå vil du sende dataene du mottok i Gmail til Adafruit. I "Gjør dette" -delen søker du etter Adafruit og får kontakt med din Adafruit -konto. Velg deretter "Opprett feeddata" som handlingshendelse.

Trinn 4: Konfigurere Adafruit

Setter opp Adafruit
Setter opp Adafruit
Setter opp Adafruit
Setter opp Adafruit
Setter opp Adafruit
Setter opp Adafruit

Gå nå til io.adafruit.com og opprett en konto hvis du ikke har en ennå. Gå til feedene dine og lag en ny feed. I dette tilfellet er navnet på feeden min "gmailbox", du trenger dette senere.

Hvis du ikke finner Adafruit Key, finner du den øverst til høyre.

Trinn 5: Feeddata fra Zapier

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

Gå tilbake til Zapier for å ordne feeddataseksjonen din. Velg "Bruk en egendefinert verdi" ved feednøkkel. "Custum Value For Feed Key" må være det samme som navnet fra feedet ditt i Adafruit, så vær forsiktig med store bokstaver.

Ved "Verdi" fyll ut wat du vil se som verdi i Adafruit. Den samme verdien vil være synlig senere i den serielle skjermen i Arduino.

Trinn 6: Testing med Zapier, Adafruit og Gmail

Testing med Zapier, Adafruit og Gmail
Testing med Zapier, Adafruit og Gmail
Testing med Zapier, Adafruit og Gmail
Testing med Zapier, Adafruit og Gmail

Nå kan du teste din Zap. Klikk på Test og fortsett (ikke glem å slå på Zap etterpå). Gå deretter tilbake til Adafruit til feeden din, og under grafen kan du se om dataene har kommet. Etter at du har slått på Zap, kan du også teste dette ved å sende deg en e -post.

Trinn 7: Konfigurere Arduino

Setter opp Arduino
Setter opp Arduino

Koble til ESP8266 og åpne Arduino. Lag en ny skisse og en ny fane som vist på bildet ovenfor. Gi den navnet "config.h" (du kan kalle den hva du vil). Lim inn koden nedenfor i "config" -fanen.

Med denne koden kan du koble til WiFi og Adafruit. Jeg fikk det fra et tidligere brukt prosjekt. Jeg bruker det fortsatt, og det fungerer bra for meg.

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

// besøk io.adafruit.com hvis du trenger å opprette en konto, // eller hvis du trenger Adafruit IO -nøkkelen. #define IO_USERNAME "ditt adafruit -brukernavn" #define IO_KEY "adafruit key" /****************************** WIFI ** ********************************* **** passord "#include" AdafruitIO_WiFi.h"

Trinn 8: Konfigurere NodeMCU

Konfigurere NodeMCU
Konfigurere NodeMCU

Koble servomotoren og LED -stripen til ESP8266.

Ledninger fra servomotoren (SG90): Brun går i G (bakken), Rød går i 3V, Orange går i D6 (eller en annen digital pinne). Jeg brukte også noen ekstra kabler for forlengelse.

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

Trinn 9: Konfigurere biblioteker og maskinvare

Gå nå til din Arduino -skisse du nettopp har opprettet. Først må du inkludere bibliotekene du trenger i skissen. Du trenger config.h du nettopp har opprettet, biblioteket for ESP8622 og Neopixel LED -stripen.

Du legger dette inn i koden slik:

#include "config.h"

#include #include

Deretter kommer du til å inkludere maskinvaren du bruker

#inkludere

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);

Legg til denne linjen for å koble denne skissen til feedet i Adafruit:

AdafruitIO_Feed *gmailbox = io.feed ("feednavnet ditt");

Trinn 10: Ugyldig oppsettskode

I "void setup" vil du koble til Adafruit, WiFi og sette servomotoren til den tildelte pin. Etter dette kan du sjekke i den serielle skjermen om det er gjort en tilkobling.

Jeg anbefaler deg å skrive inn koden på nytt i stedet for å lime den inn. Dette gjør det lettere å huske senere, og du begynner å lære det du skriver nøyaktig.

Koden vil se slik ut:

ugyldig oppsett () {

// legg oppsettskoden her for å kjøre en gang: // start den serielle tilkoblingen med seriell skjerm Serial.begin (115200) // vent på at seriell skjerm åpnes mens (! Serial); // koble til io.adafruit.com Serial.print ("Koble til Adafruit IO"); io.connect (); // konfigurer en meldingsbehandler for feeden "feednavnet ditt". // handleMessage -funksjonen (definert nedenfor) vil bli kalt når en melding // mottas fra Adafruit. // vent på tilkobling mens (io.status () get (); // pin på servomotor servo.attach (D6); servo.write (0); nameofyourfeed-> onMessage (handleMessage);}

Trinn 11: Void Loop Code

Deretter må du sørge for at Adafruit hele tiden kjører. Vi må sette dette i hulrommet slik at jeg kjører konstant.

Gjør dette som følger:

void loop () {

// legg hovedkoden her for å kjøre gjentatte ganger: io.run (); }

Trinn 12: Funksjonen for servomotoren og lysdioder som utgang

Nå skal vi sørge for at når du mottar en e -post, vil servomotoren og lysdiodene svare. Vi skal lage en funksjon som sikrer dette. Funksjonen vil få navnet "handleMessage" som vi brukte tidligere i koden. Vi vil bruke verdien vi ser Adafruit her.

Hvis du mottar en ny e -post, må servomotoren snu 90 grader og lysdiodene må lyse. For lysdiodene bruker vi rødt som farge, men du kan endre det i hva du vil. Du vil også sørge for at ikke bare den første lysdioden på stripen er på, så du må sette den i en sløyfe for å lyse hele stripen.

Og igjen, prøv å skrive inn koden på nytt i stedet for å kopiere og lime den inn.

Koden vil se slik ut:

void handleMessage (AdafruitIO_Data *data) {

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

Trinn 13: Last opp til NodeMCU og test den

Last opp til NodeMCU og test den
Last opp til NodeMCU og test den

Last opp skissen til ESP8266. Du kan gjøre dette ved å klikke på pilen til høyre ved siden av haken i øvre venstre hjørne.

Etterpå kan du prøve å sende deg en e -post for å teste den og sørge for at den fungerer.

Trinn 14: Finish Touch

Du er ferdig med kodingsdelen. Føler du deg kreativ? Bygg en postkasse for det du nettopp har laget, og sett et flagg på servomotoren. Flagget vil gå opp hver gang du mottar en e -post!

Takk for at du følger denne håndboken, og jeg håper den hjalp.

Anbefalt: