Cuprins:

Tiny ESP8266 Dash-Button (reconfigurabil): 15 pași
Tiny ESP8266 Dash-Button (reconfigurabil): 15 pași

Video: Tiny ESP8266 Dash-Button (reconfigurabil): 15 pași

Video: Tiny ESP8266 Dash-Button (reconfigurabil): 15 pași
Video: #101 Long lasting DIY "Amazon Dash Button" using an ESP8266 2024, Iulie
Anonim
Tiny ESP8266 Dash-Button (reconfigurabil)
Tiny ESP8266 Dash-Button (reconfigurabil)
Tiny ESP8266 Dash-Button (reconfigurabil)
Tiny ESP8266 Dash-Button (reconfigurabil)
Tiny ESP8266 Dash-Button (reconfigurabil)
Tiny ESP8266 Dash-Button (reconfigurabil)

Acesta este un mic buton de liniuță bazat pe ESP8266. Rămâne în somn profund, după ce apăsați butonul, efectuează o solicitare GET către adresa URL specificată și, dacă este configurat, trece și tensiunea de alimentare ca variabilă. Cea mai bună parte este că prin simpla punere în conexiune a doi pini îl puteți face să intre în modul de configurare. Vă permite să modificați toate setările fără a reprograma.

Pentru că urmărești acest instructabil, presupun că știi unele lucruri, cum ar fi; cum să lipiți, cum să urmați o schemă și cum să încărcați un program și date SPIFFS într-un ESP.

Pasul 1: Materiale și instrumente necesare

Materiale și instrumente necesare
Materiale și instrumente necesare
Materiale și instrumente necesare
Materiale și instrumente necesare
Materiale și instrumente necesare
Materiale și instrumente necesare

Pentru acest proiect veți avea nevoie de:

  • Un ESP-01 (Evident)
  • O baterie Li-Po de 50 mAh sau similară
  • Antet 2x1 pin feminin
  • Un LDO de 3,3V (Recomandăm HT-7333A, are un curent de așteptare excelent de 4uA și abandon de 170mV)
  • Un mic buton
  • Unele sârme subțiri (sârmă de ambalare a firului funcționează excelent)

De asemenea, veți avea nevoie de:

  • O placă de programare ESP
  • Un fier de lipit / lipit / flux
  • O pompă de dezlipire
  • Pensete și / sau decapanti de sârmă
  • Hârtie de șlefuit
  • Super-lipici

Pasul 2: Programare

Programare
Programare

Acest proiect este complet open source, dacă doriți să modificați codul, este pe GitHub. Dar nu este nevoie. Acest buton poate fi reconfigurat fără reprogramare.

Puteți descărca codul precompilat aici.

Conectați programatorul ESP și ESP8266 (nu uitați să vă conectați GPIO_02 la GND pentru a intra în modul de programare) și încărcați fișierul.bin și datele SPIFFS.

Este foarte important să încărcați folderul de date SPIFFS, fără acesta codul nu va porni. Și după îndepărtarea anteturilor pinului, trebuie să reveniți la reprogramare va fi foarte obositor.

Pasul 3: Cum funcționează codul (dacă sunteți interesat, altfel doar săriți)

Cum funcționează codul (dacă sunteți interesat, altfel doar săriți)
Cum funcționează codul (dacă sunteți interesat, altfel doar săriți)
Cum funcționează codul (dacă sunteți interesat, altfel doar săriți)
Cum funcționează codul (dacă sunteți interesat, altfel doar săriți)
Cum funcționează codul (dacă sunteți interesat, altfel doar săriți)
Cum funcționează codul (dacă sunteți interesat, altfel doar săriți)

Când ESP pornește, citește și analizează fișierul „config.jsn” din sistemul de fișiere SPIFFS utilizând biblioteca ArduinoJSON. Aceasta încarcă toate setările configurabile în variabile.

Apoi verifică dacă GPIO_03 [RX] este conectat la masă dacă intră în modul de configurare.

Dacă nu este, va încerca să se conecteze la WiFi și apoi la server. Finalizează o solicitare GET și intră în somn profund pentru a economisi energie.

În modul de configurare, puteți seta toate setările. (mai multe despre acest lucru la pasul 13)

Deoarece economisirea energiei este esențială aici, dacă ceva durează prea mult sau dacă conectarea la wifi / server nu reușește, va clipi pur și simplu de cinci ori mai repede și apoi va clipi lung pentru a indica o eroare și a reveni la somn profund.

Dacă totul merge bine, va face o clipire scurtă, apoi o clipire lungă. Pentru a-l arăta reușește. Apoi intră în somn profund.

Încă curios? aruncă o privire asupra GitHub-ului meu.

Pasul 4: Schematic

Schematic
Schematic

Acest lucru ar trebui să vă ajute să-l construiți în următorii pași.

Pasul 5: Desoldați antetul pinului

Desoldați antetul pinului
Desoldați antetul pinului

În primul rând, asigurați-vă 100% că ați programat corect ESP8266 și 100% asigurați-vă că ați încărcat datele SPIFFS.

Apoi, primul pas este desoldarea antetului 2x4 pin, acest lucru ne va permite să micșorăm butonul. Dar înseamnă, de asemenea, că nu puteți reprograma fără a o revinde. Asigurați-vă că programul și SPIFFS sunt clipite.

Veți putea în continuare să reconfigurați setările.

Acest lucru este mult mai ușor cu un vârf ascuțit de fier de lipit și o pompă de desudare. Strategia mea este să pun mai întâi toate cele opt știfturi cu lipit, apoi să le încălzim pe toate simultan și să tragem antetul cu niște pensete. Apoi, după îndepărtarea excesului de lipit, scobesc găurile din partea de sus cu fierul și sugeți lipirea cu pompa prin fund.

Pasul 6: lipiți comutatorul

Lipiți comutatorul
Lipiți comutatorul

Apoi, veți dori să lipiți comutatorul de apăsare între GND și RST. În cazul meu, știfturile butonului erau puțin prea groase, așa că a trebuit să le tăi puțin mai subțiri cu niște snips-uri. Asigurați-vă că butonul este la același nivel cu placa, altfel s-ar putea rupe în timp cu stresul de a fi împins.

Pasul 7: Conectați CH_PD la VCC

Conectați CH_PD la VCC
Conectați CH_PD la VCC

Pentru a permite ESP să ruleze codul, nu uitați să conectați CH_PD la VCC.

Pasul 8: Scoateți LED-ul de alimentare

Scoateți LED-ul de alimentare
Scoateți LED-ul de alimentare
Scoateți LED-ul de alimentare
Scoateți LED-ul de alimentare

Butonul trebuie să consume cât mai puțină energie. Și, deoarece este întotdeauna pornit, ledul de alimentare ar consuma întotdeauna ~ 4mA. Acest lucru ar reduce durata de viață a bateriei la douăsprezece ore. Deci desoldați-l sau rupeți-l.

Pasul 9: Comutator de configurare a lipirii

Comutator de configurare a lipirii
Comutator de configurare a lipirii

Pentru a intra în modul de configurare, GPIO_03 [RX] trebuie să fie conectat la GND. Pentru a face mai ușor acest lucru, am lipit o mică manetă care poate fi împinsă lateral pentru a face conexiunea.

Pasul 10: Adăugați sursa de alimentare, regulatorul și conectorul

Adăugați sursa de alimentare, regulatorul și conectorul
Adăugați sursa de alimentare, regulatorul și conectorul
Adăugați sursa de alimentare, regulatorul și conectorul
Adăugați sursa de alimentare, regulatorul și conectorul
Adăugați sursa de alimentare, regulatorul și conectorul
Adăugați sursa de alimentare, regulatorul și conectorul
Adăugați sursa de alimentare, regulatorul și conectorul
Adăugați sursa de alimentare, regulatorul și conectorul

Aceasta este cea mai lungă parte a construcției. Va trebui să lipiți bateria, regulatorul de tensiune și conectorul de încărcare conform schemei.

Pentru ca totul să se potrivească în spațiul mic de sub ESP-01, a trebuit să șlefuiesc pachetul TO92 al regulatorului de tensiune. Asigurați-vă că vă planificați aspectul înainte de lipire, acesta va fi foarte strâns, dar ar trebui să fie încă posibil.

Dacă bateria este prea mare, ați putea alege să omiteți regulatorul de tensiune. Acest lucru va funcționa, dar va risca să deterioreze ESP8266. Este evaluat doar să crească până la maxim 3,6 V, dar o LiPo complet încărcată scoate 4,2 V. Continuați pe propriul risc.

Pasul 11: Superglue It Toghether

Superglue It Toghether
Superglue It Toghether
Superglue It Toghether
Superglue It Toghether
Superglue It Toghether
Superglue It Toghether

Ultimul pas pentru a menține totul la locul său este să lipiți totul la loc.

Pasul 12: Încărcare

Încărcare
Încărcare

Pentru a vă încărca butonul, veți avea nevoie de un fel de încărcător LiPo, folosesc pur și simplu o placă de încărcare generică USB Li-Po conectată la buton prin conectorul de încărcare. Aveți grijă să nu schimbați polaritatea.

Pasul 13: Configurați

Configurați
Configurați

Ești aproape gata să folosești butonul pentru prima dată.

Pentru a intra în modul de configurare, trebuie să conectați GPIO_03 [RX] la GND, acest lucru va fi mai ușor dacă ați lipit o pârghie ca la pasul 9. Apoi, apăsând butonul pentru a reseta ESP, acesta ar trebui să intre în modul de configurare. Acum puteți deconecta pârghia.

Apoi puteți pur și simplu:

  1. Conectați-vă la punctul de acces WiFi „ESP_Button”, cu parola „wifibutton”
  2. Accesați https://192.168.4.1 pentru a deschide pagina de configurare.
  3. După setarea valorilor, faceți clic pe butonul „Salvați”, apoi pe „Reporniți”
  4. Butonul dvs. va reporni, va efectua cererea și va intra în somn profund.

Asigurați-vă că tastați doar numele gazdei în câmpul gazdă, nu https:// sau https:// și separați restul adresei URL în câmpurile URI.

Pasul 14: Încercați

Image
Image

Ar trebui să fiți bine să plecați, apăsând butonul vă va face solicitarea GET.

Videoclipul de mai sus este butonul meu de conectare la site-ul meu și IFTTT, postând un tweet generat personalizat.

Configurarea cererii GET nu intră în sfera acestei instrucțiuni, dar ar trebui să le puteți conecta cu ușurință la IFTTT sau la orice alt serviciu. Dacă sunteți dispus să scrieți un cod PHP personalizat și să-l găzduiți pe propriul dvs. site web, așa cum am făcut, s-ar putea chiar să monitorizați bateria.

Dacă aveți probleme sau aveți nevoie de ajutor pentru remedierea problemelor, vă rugăm să lăsați un comentariu mai jos.

Oricine este binevenit să ofere idei despre cum să îmbunătățim acest lucru, ca și cum ar fi un caz? xD

Lasă un comentariu dacă ești fan Doctor Who.

Noroc!

Pasul 15: Actualizare: carcasă imprimată 3D

Actualizare: Carcasă imprimată 3D
Actualizare: Carcasă imprimată 3D
Actualizare: Carcasă imprimată 3D
Actualizare: Carcasă imprimată 3D
Actualizare: Carcasă imprimată 3D
Actualizare: Carcasă imprimată 3D

După o perioadă de timp folosind butonul de liniuță, am decis să fac un caz pentru el. Fișiere STL și Fusion 360 atașate.

Recomandat: