Sommario:

Piccolo pulsante Dash ESP8266 (riconfigurabile): 15 passaggi
Piccolo pulsante Dash ESP8266 (riconfigurabile): 15 passaggi

Video: Piccolo pulsante Dash ESP8266 (riconfigurabile): 15 passaggi

Video: Piccolo pulsante Dash ESP8266 (riconfigurabile): 15 passaggi
Video: ESP8STP-02 Степпер с ESP8266 D1 Mini NodeMCU через WiFi под любым углом 2024, Luglio
Anonim
Piccolo pulsante Dash ESP8266 (riconfigurabile)
Piccolo pulsante Dash ESP8266 (riconfigurabile)
Piccolo pulsante Dash ESP8266 (riconfigurabile)
Piccolo pulsante Dash ESP8266 (riconfigurabile)
Piccolo pulsante Dash ESP8266 (riconfigurabile)
Piccolo pulsante Dash ESP8266 (riconfigurabile)

Questo è un minuscolo pulsante dash basato su ESP8266. Rimane in deep sleep, una volta premuto il pulsante esegue una richiesta GET all'URL specificato e se configurato passa anche la tensione di alimentazione come variabile. La parte migliore è che semplicemente collegando due pin puoi farlo entrare in modalità di configurazione. Consentendo di modificare tutte le impostazioni senza riprogrammare.

Per seguire questo istruibile presumo che tu sappia alcune cose, come; come saldare, come seguire uno schema e come caricare un programma e i dati SPIFFS su un ESP.

Passaggio 1: materiali e strumenti necessari

Materiali e strumenti necessari
Materiali e strumenti necessari
Materiali e strumenti necessari
Materiali e strumenti necessari
Materiali e strumenti necessari
Materiali e strumenti necessari

Per questo progetto avrai bisogno di:

  • Un ESP-01 (ovviamente)
  • Una batteria Li-Po da 50 mAh o simile
  • Intestazione pin femmina 2x1
  • Un LDO da 3,3 V (consiglio vivamente l'HT-7333A, ha un'eccellente corrente di standby di 4uA e un dropout di 170 mV)
  • Un piccolo pulsante
  • Un po' di filo sottile (il filo di avvolgimento del filo funziona alla grande)

Avrai anche bisogno di:

  • Una scheda di programmazione ESP
  • Un saldatore / saldatura / flusso
  • Una pompa dissaldante
  • Pinzette e/o spellafili
  • Carta vetrata
  • Super colla

Passaggio 2: programmazione

Programmazione
Programmazione

Questo progetto è completamente open source, se vuoi modificare il codice è sul mio GitHub. Ma non è necessario. Questo pulsante può essere riconfigurato senza riprogrammare.

Puoi scaricare il codice precompilato qui.

Basta collegare il tuo programmatore ESP e il tuo ESP8266 (ricorda di connettere GPIO_02 a GND per accedere alla modalità di programmazione) e caricare il file.bin e i dati SPIFFS.

È molto importante caricare la cartella dati SPIFFS, senza di essa il codice non si avvierà. E dopo aver rimosso le intestazioni dei pin, dover tornare a riprogrammare sarà molto noioso.

Passaggio 3: come funziona il codice (se sei interessato, altrimenti salta)

Come funziona il codice (se sei interessato, altrimenti salta)
Come funziona il codice (se sei interessato, altrimenti salta)
Come funziona il codice (se sei interessato, altrimenti salta)
Come funziona il codice (se sei interessato, altrimenti salta)
Come funziona il codice (se sei interessato, altrimenti salta)
Come funziona il codice (se sei interessato, altrimenti salta)

Quando l'ESP si avvia, legge e analizza il file 'config.jsn' dal file system SPIFFS utilizzando la libreria ArduinoJSON. Questo carica tutte le impostazioni configurabili in variabili.

Quindi controlla se GPIO_03[RX] è collegato a terra se lo è entrerà in modalità di configurazione.

In caso contrario, tenterà di connettersi al WiFi e quindi al server. Completa una richiesta GET ed entra in modalità di sospensione profonda per risparmiare energia.

In modalità di configurazione, è possibile impostare tutte le impostazioni. (più su questo al punto 13)

Poiché il risparmio energetico è essenziale qui, se qualcosa impiega troppo tempo o se la connessione al wifi/server fallisce, lampeggerà semplicemente cinque volte velocemente e poi un lungo lampeggio per indicare un errore e tornare alla modalità di sospensione profonda.

Se tutto va bene, lampeggerà un breve lampeggio poi un lungo lampeggio. Per dimostrarlo avere successo. Quindi entra nel sonno profondo.

Ancora curioso? dai un'occhiata al mio GitHub.

Passaggio 4: Schema

Schema
Schema

Questo dovrebbe aiutarti a costruirlo, durante i prossimi passaggi.

Passaggio 5: dissaldare l'intestazione del pin

Dissaldare l'intestazione del pin
Dissaldare l'intestazione del pin

Innanzitutto, assicurati al 100% di aver programmato correttamente ESP8266 e di aver caricato i dati SPIFFS al 100%.

Quindi il primo passo è dissaldare l'intestazione del pin 2x4, questo ci consentirà di ridurre le dimensioni del nostro pulsante. Ma significa anche che non puoi riprogrammare senza risaldarlo. Assicurati che il programma e SPIFFS siano flashati.

Sarai comunque in grado di riconfigurare le impostazioni.

Questo è molto più facile con una punta del saldatore a punta e una pompa dissaldante. La mia strategia è prima collegare tutti gli otto pin con la saldatura, quindi riscaldarli tutti in una volta e tirare fuori l'intestazione con delle pinzette. Quindi, dopo aver rimosso la saldatura in eccesso, ho praticato i fori dall'alto con il ferro e ho succhiato la saldatura con la mia pompa attraverso il fondo.

Passaggio 6: saldare l'interruttore

Saldare l'interruttore
Saldare l'interruttore

Successivamente, vorrai saldare il tuo interruttore a pressione tra GND e RST. Nel mio caso i perni dei bottoni erano solo un po' troppo spessi, quindi ho dovuto tagliarli un po' più sottili con delle cesoie. Assicurati che il bottone sia a filo con il board, altrimenti potrebbe rompersi nel tempo con lo stress di essere spinto.

Passaggio 7: collegare CH_PD a VCC

Connetti CH_PD a VCC
Connetti CH_PD a VCC

Per consentire all'ESP di eseguire il codice, non dimenticare di connettere CH_PD a VCC.

Passaggio 8: rimuovere il LED di alimentazione

Rimuovere il LED di alimentazione
Rimuovere il LED di alimentazione
Rimuovere il LED di alimentazione
Rimuovere il LED di alimentazione

Il pulsante deve consumare meno energia possibile. E poiché è sempre acceso, il led di alimentazione consumerebbe sempre ~4mA. Ciò ridurrebbe la durata della batteria a dodici ore. Quindi dissaldalo o staccalo.

Passaggio 9: interruttore di configurazione della saldatura

Interruttore di configurazione della saldatura
Interruttore di configurazione della saldatura

Per accedere alla modalità di configurazione, GPIO_03[RX] deve essere connesso a GND. Per facilitare l'operazione ho saldato una levetta che può essere spostata lateralmente per effettuare il collegamento.

Passaggio 10: aggiungere l'alimentatore, il regolatore e il connettore

Aggiungi l'alimentatore, il regolatore e il connettore
Aggiungi l'alimentatore, il regolatore e il connettore
Aggiungi l'alimentatore, il regolatore e il connettore
Aggiungi l'alimentatore, il regolatore e il connettore
Aggiungi l'alimentatore, il regolatore e il connettore
Aggiungi l'alimentatore, il regolatore e il connettore
Aggiungi l'alimentatore, il regolatore e il connettore
Aggiungi l'alimentatore, il regolatore e il connettore

Questa è la parte più lunga della costruzione. Dovrai saldare la batteria, il regolatore di tensione e il connettore di ricarica secondo lo schema.

Per far entrare tutto nel piccolo spazio sotto l'ESP-01 ho dovuto carteggiare il pacchetto TO92 del regolatore di tensione. Assicurati di pianificare il layout prima di saldare, sarà molto stretto ma dovrebbe essere ancora fattibile.

Se la tua batteria è troppo grande, potresti scegliere di omettere il regolatore di tensione. Funzionerà ma rischierà di danneggiare l'ESP8266. È valutato solo per raggiungere un massimo di 3,6 V, ma un LiPo completamente carico emette 4,2 V. Procedete a vostro rischio.

Passaggio 11: supercolla insieme

Supercollalo insieme
Supercollalo insieme
Supercollalo insieme
Supercollalo insieme
Supercollalo insieme
Supercollalo insieme

L'ultimo passo per mantenere tutto a posto è incollare tutto a posto.

Passaggio 12: ricarica

In carica
In carica

Per caricare il tuo pulsante avrai bisogno di una sorta di caricabatterie LiPo, io uso semplicemente una generica scheda caricabatterie USB Li-Po collegata al pulsante tramite il connettore di ricarica. Fare attenzione a non invertire la polarità.

Passaggio 13: configurazione

Configura
Configura

Sei quasi pronto per utilizzare il pulsante per la prima volta.

Per accedere alla modalità di configurazione è necessario collegare GPIO_03[RX] a GND, questo sarà più semplice se si salda una leva come nel passaggio 9. Quindi, premendo il pulsante per ripristinare l'ESP, dovrebbe entrare in modalità di configurazione. Ora puoi scollegare la leva.

Quindi puoi semplicemente:

  1. Connettiti all'Access Point WiFi 'ESP_Button', con la password 'wifibutton'
  2. Visita https://192.168.4.1 per aprire la pagina di configurazione.
  3. Dopo aver impostato i valori, fai clic sul pulsante "Salva" e poi su "Riavvia".
  4. Il pulsante si riavvierà, eseguirà la richiesta ed entrerà in modalità di sospensione profonda.

Assicurati di digitare solo il nome host nel campo host, senza https:// o https:// e separa il resto dell'URL nei campi URI.

Passaggio 14: provalo

Image
Image

Dovresti essere tutto a posto, premendo il pulsante verrà effettuata la tua richiesta GET.

Il video sopra è il mio pulsante che si collega al mio sito Web e IFTTT, pubblicando un tweet generato su misura.

L'impostazione della richiesta GET non rientra nell'ambito di questa istruzione, ma dovresti essere facilmente in grado di collegarla a IFTTT o a qualsiasi altro servizio. Se sei disposto a scrivere del codice PHP personalizzato e ospitarlo sul tuo sito web come ho fatto io, potresti persino essere in grado di monitorare la batteria.

Se hai problemi o hai bisogno di aiuto per la risoluzione dei problemi, lascia un commento in basso.

Chiunque è benvenuto dare idee su come migliorare questo, come forse un caso? xD

Lascia un commento se sei un fan di Doctor Who.

Saluti!

Passaggio 15: aggiornamento: custodia stampata in 3D

Aggiornamento: custodia stampata in 3D
Aggiornamento: custodia stampata in 3D
Aggiornamento: custodia stampata in 3D
Aggiornamento: custodia stampata in 3D
Aggiornamento: custodia stampata in 3D
Aggiornamento: custodia stampata in 3D

Dopo un po' di tempo utilizzando il pulsante del trattino, ho deciso di creare un caso per questo. File STL e Fusion 360 allegati.

Consigliato: