Sommario:

The WunderThing: una previsione meteo ESP8266 alimentata a batteria, magnetica, IoThing!: 6 passaggi
The WunderThing: una previsione meteo ESP8266 alimentata a batteria, magnetica, IoThing!: 6 passaggi

Video: The WunderThing: una previsione meteo ESP8266 alimentata a batteria, magnetica, IoThing!: 6 passaggi

Video: The WunderThing: una previsione meteo ESP8266 alimentata a batteria, magnetica, IoThing!: 6 passaggi
Video: Corso ESPHome per Home Assistant: partiamo dal D1 mini con Esp8266😱😍 2024, Novembre
Anonim
The WunderThing: un IoThing per le previsioni del tempo magnetico, ESP8266, alimentato a batteria!
The WunderThing: un IoThing per le previsioni del tempo magnetico, ESP8266, alimentato a batteria!
The WunderThing: un dispositivo di previsione del tempo ESP8266 alimentato a batteria, magnetico!
The WunderThing: un dispositivo di previsione del tempo ESP8266 alimentato a batteria, magnetico!
The WunderThing: un dispositivo di previsione del tempo ESP8266 alimentato a batteria, magnetico!
The WunderThing: un dispositivo di previsione del tempo ESP8266 alimentato a batteria, magnetico!
The WunderThing: un IoThing per le previsioni del tempo a batteria, magnetico, ESP8266!
The WunderThing: un IoThing per le previsioni del tempo a batteria, magnetico, ESP8266!

Ciao, Per la mia prima lezione lascia che ti parli di A Wunderful Thing. Questo era un progetto abbastanza recente in cui il mio obiettivo era costruire un magnete da frigorifero per le previsioni del tempo!

Il controller scelto per questo progetto era Sparkfun's Thing, un ESP8266 in bundle con tutti i tipi di chicche. Quando la cosa viene attivata dall'utente, viene inviata una richiesta di dati dalla cosa a Wunderground (tramite WiFi) utilizzando una chiave API e alcune informazioni sulla posizione. I dati di previsione richiesti vengono rimandati alla Cosa, che quindi preleva i pezzi desiderati e li memorizza. L'utente può esplorare questi dati premendo i pulsanti direzionali e visualizzando il display. L'utente può anche accedere a un menu delle impostazioni per modificare l'ID Wi-Fi, la password, il codice postale e la chiave API.

Comunque, questo progetto è stato molto divertente e ha incorporato alcuni elementi unici. Spero che tu ne costruisca uno tu stesso o qualcosa del genere usando ciò che impari da questo Instructable.

Godere:)

Passaggio 1: cablaggio di WunderThing

Cablaggio di WunderThing
Cablaggio di WunderThing
Cablaggio di WunderThing
Cablaggio di WunderThing
Cablaggio di WunderThing
Cablaggio di WunderThing
Cablaggio di WunderThing
Cablaggio di WunderThing

Quindi ecco come collegare questa cosa. Questa è stata anche la prima volta che ho usato Fritzing, piuttosto interessante.

La batteria LiPo da 3,7 V mostrata può essere di qualsiasi dimensione, ma consiglierei almeno 500 mAh (ESP8266 è affamato di energia). Il caricabatterie di bordo funziona molto bene, basta collegare una qualsiasi vecchia micro USB. NOTA: per caricare il codice, DEVI alimentare il Thing separatamente dall'FTDI (tramite una batteria o USB).

Mostrato collegato alla Thing è un adattatore FTDI-USB (qualsiasi FTDI da 3,3 V andrà bene), un display OLED e 4 pulsanti. Dovrai saldare ENTRAMBI i ponticelli chiusi sul retro dell'OLED. I pulsanti sono mostrati con resistori di pull up esterni (non mi fido dei pull up interni, ma in teoria non c'è niente di sbagliato nell'usarli).

SE VUOI FARE IL DEBUGGING SERIALE: Trova i due fori da 0,1 sopra i fori FTDI sulla Cosa. Taglia la traccia tra questi fori sul retro della Cosa. Aggiungi un'intestazione a quei due fori, tuttavia è più facile per te cambiare lo stato aperto/chiuso di quel circuito. Per caricare il codice, cortocircuitare il circuito. Per consentire il debug seriale, aprire il circuito. Sparkfun lo spiega per te nel tutorial di Thing. Perché Sparkfun è fantastico, così come Adafruit.

Passaggio 2: programmazione di WunderThing

Programmazione di WunderThing
Programmazione di WunderThing

Il codice per far funzionare WunderThing… è brutto.

Fornirò le istruzioni per farlo funzionare come la mia demo, ma se vuoi aggiungere/personalizzare/ecc non sarà una strada facile. L'ho esaminato e commentato, quindi spero che questo aiuti, ma non sono mai riuscito a ripulire davvero la struttura (che è finita abbastanza unita con alcuni pezzi di pasta copiati e altre soluzioni rapide vergognose).

Ecco le (un po') meravigliose istruzioni:

1. Aggiungi la cosa al Board Manager di Arduino. Non dimenticare di testarlo con i Blink.

2. Ottieni le seguenti librerie da Github: Adafruit_GFX, Adafruit_SSD1306, ArduinoJson (potrebbe essere già incluso)

3. Crea una chiave API Wunderground creando un account qui, segui i link per ottenere la chiave (GRATUITA per ciò di cui avrai bisogno)

3. Cambia le impostazioni di programmazione di arduino in: Sparkfun Thing, 115200, ArduinoTinyISP, Port #, ecc, ecc. CAMBIA IL CODICE (riga 139) per le tue informazioni wifi e zip.

4. Accendere la cosa (non dimenticare di collegare prima una batteria o USB), compilare e caricare il codice tramite FTDI. Lascia la cosa ACCESA.

5. CAMBIA DI NUOVO IL CODICE (riga 165), compila e carica di nuovo.

6. Se esegue il ping del tuo Wi-Fi due volte per i dati e li visualizza, puoi urlare e gridare in festa.

7. Se le cose non sono andate come previsto, prova a spegnerlo e poi riaccenderlo. Se non funziona, butta tutto via con rabbia e torna a progetti più semplici, altrimenti probabilmente dovrai sbattere la testa contro un muro fraintendendo ciò che ho fatto nel mio codice che non è d'accordo con ciò che desideri farne a meno…. ma sono sicuro che andrà tutto bene:)

Passaggio 3: utilizzo di WunderThing

Image
Image
Costruire la cosa meravigliosa
Costruire la cosa meravigliosa

Quindi… il modo in cui l'ho strutturato non è esattamente intuitivo, ma dovrebbero essere necessari solo pochi minuti per capire come navigare in questa cosa.

Pensalo come un foglio Excel in cui la cella corrente viene mostrata sul display. Usa l'immagine sopra come riferimento. L'unica palla strana è il menu Impostazioni, che non è completamente descritto dall'immagine. Il menu delle impostazioni dovrebbe essere autoesplicativo però. Se scegli "Cambia codice postale" o qualsiasi altra impostazione, usa semplicemente i pulsanti sinistra/destra per passare da un carattere all'altro nella stringa (posizione corrente mostrata con un indicatore di punto) e i pulsanti su/giù per scorrere i caratteri. The Thing salverà automaticamente la tua voce una volta che tornerai al menu delle impostazioni (usando la EEPROM interna).

Passaggio 4: costruire la cosa meravigliosa

Solo dopo aver eseguito il breadboard con successo su questa cosa, potresti considerare di trasformarla in un prodotto finito.

I miei orologi erano tutti montati su supporti stampati in 3D super semplici. Includerò il file della parte solidworks nel caso tu voglia provarlo.

Per mantenere tutto a posto, ho semplicemente incollato un piccolo pezzo di scheda prototipi rotta nell'angolo della pulsantiera, e questo sembrava funzionare abbastanza bene e consente una rimozione "facile" se necessario. Col senno di poi avrei sicuramente dovuto usare i fori disponibili dalla Thing e dall'OLED quando ho progettato il supporto… vabbè. La LiPo si adatta molto bene però. Ho usato quello mostrato in Tenegy, il che era fantastico tranne che IL CONNETTORE ERA SBAGLIATO. Niente di grave, ho appena acquistato alcuni connettori (JST-PH) da adafruit e ho sostituito quelli delle batterie.

Noterai un piccolo disegno sui miei orologi di paesaggi di montagna. Quello ero solo io che usavo un po' di spazio libero. Forse puoi trovare un uso migliore per questo. Noterai anche che tutti gli orologi erano colorati, solo alcuni strati di vernice acrilica.

Per renderlo un magnete da frigo, compra del nastro magnetico e applica un paio di strisce. Funziona bene.

Passaggio 5: andare oltre con WunderThing

Andare oltre con WunderThing
Andare oltre con WunderThing

Enorme potenziale per migliorare/modificare/creare il proprio.

Volevo davvero includere le icone meteorologiche, ma ho esaurito la memoria. Qualcosa mi dice che DOVREBBE essere stato possibile ridurre la memoria, ma quel business JSON è piuttosto complicato e non ho esperienza nell'usarlo (allocazione della memoria per i buffer e l'archiviazione, ecc.).

Consigliato: