Cunoaștere foarte scurtă cu modulul wifi esp8266 esp-03

Cunoaștere foarte scurtă cu modulul wifi esp8266 esp-03
Cunoașterea a ieșit într-adevăr foarte scurtă - la doar câteva ore după începerea sa, am trimis în mod eronat 5 volți la modulul de la sol, de ce a murit imediat și irevocabil.







Cu toate acestea, primele rezultate sunt foarte încurajatoare.

În primul rând, puteți citi despre acest modul. aici. Aici, bine, aici.

Documentație puțin, din cuvânt, deloc. Dar este ceva.

2) Prețul. Mai ales înainte de criză. În regiunea de 3 (trei!) De dolari. Au fost 100 de ruble. La naiba. Acum este de 200 de ruble pe eBay, dar este mai ieftin Arduino, este mai ieftin Ethernet Shield (aproximativ 500 de ruble) nu este mult mai scump decât un module foarte bizare bazate pe ENC28J60 sau „popular» NRF24L01 (care costă jumătate la fel de mult, dar ele trebuie să fie de cel puțin două !).

3) a declarat un consum redus de energie record, inclusiv posibilitatea de a utiliza modulul în dispozitivele alimentate de baterii.

4) Dacă înțeleg corect, acest modul nu oferă doar conexiune WiFi, este un microcontroler programabil care poate efectua unele acțiuni simple pentru a interacționa cu lumea exterioară. Și acesta este din nou prețul.

Asta este, potențial, toate acestea sunt foarte interesante.

1) Dacă înțeleg corect, aceasta este dezvoltarea originală chineză. Fie că este bine sau nu este greu de spus, dar cum un dezvoltator puțin cunoscut a fost capabil să creeze un produs superior dezvoltării de mărci venerabile - nu înțeleg.
Deși totul se întâmplă pentru prima dată.

2) Scăderea deja menționată a documentației și lipsa unei fișe tehnice false.

3) Unele non-imobilitate a dispozitivului.

În orice caz, sa decis să încercați.

Modulul a fost achiziționat pe ebay. În total, există mai multe variante de module pe baza aceluiași chip, care diferă în ceea ce privește numărul picioarelor excavate, prezența sau absența unei antene încorporate etc. Pentru mai multe informații, faceți clic aici.

Opțiunea a căzut asupra opțiunii ESP-03 din următoarele motive:
1) Există o antena ceramică încorporată. Antena este exact ceea ce nu sunt pregătit să mă conectez.
2) Cel mai mare număr de picioare este retras. Va fi o ocazie să încercați aceste picioare cu ceva de corectat.
3) Prețul scăzut.

Cunoaștere foarte scurtă cu modulul wifi esp8266 esp-03
Din minus - pentru acest modul, pasul dintre plăcuțe nu este de 2,5 mm, dar de 2,0. Prin urmare, inițial am intenționat să fac tranziția. Acest lucru nu este foarte tensionat, adaptorul este necesar în orice caz, deoarece modul funcționează practic de la 3,3 V, chiar și intrările UART nu sunt tolerante la 5 V.

Prin urmare, sa decis să echipeze regulatorul de adaptor liniar bazat pe XC6206 meu preferat (toate tăiați - două condensatoare ceramice) și nivelurile de conjugare pe cele două linii de tranzistori cu efect de câmp (a se vedea interfața de legătură cu seria tranzistor MOSFET.).

În plus, în principiu, toate contactele modulului pe un pieptene standard unghiular de-a lungul marginii adaptorului. Lasă-l să fie. După cum sa dovedit mai târziu - nu în zadar.

De obicei, cunoscând tendința mea de a lipi firele în direcția greșită, am pus protecția "perfectă diodă" pe mașina automată peste tot și am uitat să o pun în adaptor. Pentru asta și am obosit în final :-(

Al doilea jamb cu adaptorul a fost descoperit după o încercare de a renunța la victima experimentului, cu speranța că nu ea a suferit, ci adaptorul în sine. Din păcate, s-a dovedit imposibil de făcut, fără a detașa toate contactele din modul. Adevărul uscătorului de lipit încă nu am și încălzirea cu un arzător de gaz nu a ajutat.

Și nu asta mă așteptam. Apoi m-am gandit sa experimentez cu acest modul in adaptor si apoi sa il reasoci intr-un articol folositor manual.

Aparent, la următoarea încercare adaptorul va fi radical modernizat.
Voi bea o grămadă de fire pe plăcile adaptorului de pe partea de jos a plăcii și am lipit ESP8266 de aceste picioare de sus. astfel încât contactele modulului să nu rămână la adaptor. Apoi, puteți lipi calm picioarele de pe site-urile adaptorului, scoateți modulul împreună cu picioarele și apoi lipiți calm picioarele unul câte unul.

Acum experiența reală de utilizare.

Am conectat modulul la computer printr-un adaptor USB-UART realizat pe baza cp2102. Puterea la modulul (5 volți) a fost luată de la adaptor - aceasta este de fapt alimentată de portul USB al computerului.

Cunoaștere foarte scurtă cu modulul wifi esp8266 esp-03

Din moment ce piciorul CH_PD - Chip enable ar trebui să fie conectat la 3.3 V pentru funcționare, am conectat-o ​​pur și simplu cu un fir cu piciorul 3.3.
În principiu, am anticipat în adaptor posibilitatea de a lipi un jumper permanent între CH_PD și 3V3, dar nu l-am lipit.

Inițial, modulul sa comportat ciudat.
Întrucât vânzătorul din descriere a indicat că modulul lucrează la UART la o viteză de 115200/8 / N / 1, am pus terminalul 115200 și am luat gunoi.
Prin aprinderea LED-urilor de pe liniile UART și terminalul a fost clar că în momentul conectării picioarelor CH_PD și 3V3 modulul oferă câteva informații. Cu toate acestea, nici la viteza 115200, nici la niciun alt set standard nu a fost citit și modulul nu a reacționat la alte comenzi.

Cu toate acestea, Google a sugerat aici soluția - pentru a porni modulul, piciorul GPIO15 trebuie tras la sol. Tocmai l-am conectat cu un fir cu un picior de pământ în mod continuu.

Modulul a început cu viteza ... 96000.

Bine, deja este mai ușor.

Apoi, am făcut cea mai mare parte a lucrărilor la acest post.

Notă: comanda "AT" este insensibilă pentru litere mici (puteți scrie cu litere mici), toate celelalte sunt sensibile.

Modificată viteza UART: AT + CIOBAUD = 115200
Cu succes.

Setați modul WiFi: AT + CWMODE = 1

Priviți lista punctelor de acces WiFi disponibile: AT + CWLAP

L-am văzut. Am oftat cu ușurință - există o conexiune wireless.

Conectat la ruterul meu: AT + CWJAP = """"

Sunt în apartament două puncte de acces WiFi - unul lângă ușa din față (Ethernet-Router + WiFi), iar al doilea - la biroul meu (acesta anterior ADSL-modem, el joacă rolul unui fir de servicii hub și acces WiFi hotspot).

Cel mai important lucru rămas este să trageți o adresă URL și să primiți un răspuns.
În practică, aceasta va însemna capacitatea de a transfera informații de la dispozitiv către lumea exterioară.

Aceasta este de fapt o solicitare HTTP obișnuită GET.

Ca răspuns, modulul aruncă o bucată incompletă din codul web al paginii Google, după care începe să se comporte ciudat. Dacă modulul este buggy din abundența datelor sau din terminal, nu am înțeles, dar am trecut la lucrul cu propriul server, ceea ce a generat un răspuns mult mai scurt.







Pentru a aduce modulul în sine, a fost suficient să reporniți pentru scurt timp prin eliminarea a 3.3 volți de la baza piciorului CH_PD.

Când lucrez cu propriul server web, am făcut cu succes mai multe cereri GET.

Curentul consumat a fost măsurat. Tocmai nu a putut măsura, deoarece atunci când sa conectat prin banda mA a multimetrului, modulul nu a vrut să funcționeze - a început să emită din nou gunoi.

Ceea ce a fost, nu am înțeles.
Poate că, la momentul începerii, modulul a distrus protecția multimetrului prin curent. A fost necesar să se conecteze prin banda A, s-a dovedit a fi de ordinul a 0,2-0,3 A, i. E. 200-300 mA, fără precizie de înțeles.

Cu toate acestea, în orice caz, pentru XC6206 aceasta este deja la limită. Nu ar trebui să dea mai mult de 200 mA.

Apoi am încercat să conectez modulul la Arduin.
Și, din moment ce „de fier» UART Arduino este utilizat pentru a conecta la calculator, l-am atârnat pe un soft-ESP8266 UART (biblioteca SoftwareSerial), pe 10 și 11 pini Arduino.

Și aici este dacă un soft-UART nu a putut face față cu viteza de 115200, sau nu ar trebui să aibă puterea de a conecta prin Arduino, dar în mod normal asociată cu modulul prin intermediul Arduino am reușit deja - să trimită tot timpul pentru a trage în jos moloz.

Și apoi trebuie să verifice și să schimbe viteza de ESP8266, a început să-l comuta între adaptor și Arduino USB-UART, apoi înapoi din nou, aducând mâncare și ESP8266 pereplyusoval ars ...

Buna ziua tuturor!
Ei bine, și voi adăuga, de asemenea, nu a putut trece de aceste module.
Am 07 și 12 și deja (deși lent) câteva săptămâni le alegem.
Aici a scris despre asta. Nu voi copia aici, pentru a nu produce aceleași vechi. Dacă sunteți interesat, citiți-l acolo, vă rog.

În principiu, pot respinge ceva sau confirma (pe care mi-am verificat-o).
În primul rând, modulele sunt destul de capricioase în multe feluri, astfel încât acestea ar trebui să fie conectate exact așa cum, de exemplu, am descris link-ul de mai sus.
Asta nu înseamnă să părăsești aerul, nici un picior, să tragi toți. Și nu este necesar să conectați nici piciorul direct la pământ, nici la mâncare, tk. picioarele sunt în diferite variante și versiuni diferite de firmware pentru a funcționa în diferite moduri, același GPIO15 poate începe să ieși, și dacă aveți pe teren bine atârnate, pur și simplu arde.
În principiu, am module care încep cu cea mai simplă conexiune: trageți GPIO15 la masă, CH_PD la 3.3 și RX | TX la adaptorul de pe PC. Dar în acest mod funcționează bine, nu este stabilă deloc, dar funcționează dacă nu atingeți și nu respirați :)

Consumul, de fapt, poate depăși chiar și revendicat în documentația mA. Am sărit până la aproximativ 270 mA. Nu voi spune exact - nu-mi amintesc. În medie, modulul a mâncat, de obicei, aproximativ 80 mA. Din nou din memorie. Eu serios nu deranjez cu ea, doar a încercat pe - în comparație cu LH și uspokoilsya.V conta în mod ideal la 300 sau mai bine, cu o marjă de 350 mA - în cazul în care puterea de proiectare / alege stabilizator pentru el.

Apoi, modul de downgrade în modul este. De fapt, chiar și mai multe opțiuni sunt disponibile.
Dar în firmware-ul AT este prezent doar 1 cel mai simplu: un mod de somn profund.
În el, modulul trece când o anumită comandă este dată timpului specificat în această comandă. Și în acest moment se trezește prin GPIO16, dacă îl conectați cu piciorul rezetului.
De fapt, el însuși se revarsă într-o anumită perioadă de timp. Și dacă nu conectați GPIO16 la reset, nu se va trezi :)

Despre munca prin arduino: seria de software pe arduino nu este suficientă pentru o muncă normală cu ESP, prea multă viteză și puține resurse. Operarea normală în acest mod nu este posibilă.
Cei care au sânge din nas ar trebui să fie în Arduino 1 hardvarnogo UART utilizarea ESP și conectarea la PC-ul, nu invers: ESP hvardvarnomu conectat la port și la un PC Arduino deja softvarnomu atârnă.
De asemenea, este recomandat să verificați care tampoane pe UART sunt instalate în bibliotecile Arduino pentru recepție / transmisie și, eventual, pentru a le mări.
Eu folosesc mega pentru teste, are 4 hardware UART, deci nu sunt probleme, și o conduc la 3.3 volți, deci nu este nimic de reconciliat :)

În ceea ce privește firmware-ul, în momentul de față există astfel de frecvente:
- fabrică bazată pe comenzi AT
- NodeMCU - firmware. Vă permite să conduceți și să folosiți scripturi ESP în limbajul lua
- Ei bine, ca o opțiune - oamenii scrie propria lor firmware-ul de pe C / C ++ - pentru că toate condițiile sunt, la fel ca în acest caz, este posibil pentru a scăpa de (parțial) de la codul de buggy modulul Espressif și se poate transforma într-adevăr într-un artist independent de încredere. De exemplu, vă puteți uita la acest ansamblu.
Și oamenii chiar își fac propriul UDK. pentru dezvoltare. De asemenea, are sens să se uite.

Pe scurt: firmware-ul. bazate în întregime pe codul de la Espressif au o mulțime de bug-uri (de la el la fel). Și să vă bazați pe ele 100% ca un dispozitiv independent - nu puteți. Numai dacă pentru meserii interne.
Există două opțiuni:
1) să utilizați suplimentar un alt MK împreună cu ESP și pur și simplu să direcționați acest ESP dintr-un MK extern (cel puțin, cel puțin să-i urmăriți suspendarea și să îl reporniți dacă acesta se blochează)
2) scrieți firmware-ul dvs., după ce ați dat seama de complexitatea lucrării și ați refuzat, dacă este posibil, SDK Espressif
Eu însumi în timp ce am oprit la 1 opțiune. Adică, folosesc ESP doar ca un pod WiFi transparent pentru AVR, prin care comunică cu unitatea centrală.

Și da, dacă cineva interesat în opinia mea cu privire la modulele: ele nu sunt fără defecte, dar pentru mine personal este foarte plăcut, mai ales în ceea ce privește prețul (chiar și la cursul de schimb actual). Așadar, intenționez să le folosesc în meșteșugurile mele de casă și multe altele.

PS: Nu mă prefac că sunt cunoscător, tocmai am recitit din ceea ce a fost, foarte mult. Deci, dacă cineva are întrebări, întrebați, voi încerca să răspund la ce pot, sau cel puțin voi trimite o legătură potrivită.

Vă sfătuiesc cu tărie să vă familiarizați cu această documentație aici:
ESP8266_Module Application Design Guide.pdf
ESP8266_Beginners_Guide_V0.4.1.pdf
ESP8266_Specifications_v4.1.pdf
Pentru a lucra cu firmware-ul AT:
4A-AT-Espressif instrucțiunea AT Set_v0.21.pdf
Exemple de comandă 4B-AT-Espressif AT_v0.3.pdf
Pentru a afla SDK-ul:
2C-SDK-Espressif IoT Ghidul de programare SDK_v0.9.5.pdf
E tot acolo.
Nu este mult, dar în general o înțelegere poate fi pliat și nu se produce pe o grebla, cum ar fi: „Pentru un motiv sau altul, atunci când se încearcă să se măsoare tensiunea integrată ADC este mai mare de 1 volt modulul reporniri / ingheata. "- dar pentru că are o astfel de limitare: de la 0 la 1 volt, și în specificațiile este indicat :)
Deși sunt 100% siguri că nu ar trebui, bineînțeles. În special, consumul maxim este indicat în specificațiile 215 mA, dar modulul poate consuma mai mult.

Offtopic dar sfaturi bune. Cunoștințele trebuie să fie duplicate. Vă sfătuiesc să nu fiți leneși și să scrieți pe ambele resurse. Prea multe site-uri cu informații utile au dispărut pur și simplu în ultimii ani. Dacă administratorul sa îmbătat sau sa căsătorit, tramvaiul administratorului sa mutat, centrul de date a fost ars, ... o mulțime de circumstanțe se întâmplă. Un site ca acesta depinde de o persoană, de exemplu. Dumnezeu interzice că se va întâmpla cu el, nici baza nu poate fi descărcată, nici domeniul nu poate fi reînnoit sau găzduirea nu poate fi plătită.

Da, Doamne ferește ...

Am ambele ESP-07 și ESP-12 pe mai multe bucăți. Nu am verificat totul, pentru că am venit în saci sigilați, așa că am ales una și una. A luat pe ali. La vânzători diferiți, imperiali. Din ESP-01 ceva a decis imediat să refuze nafigul, să citească forumul și Internetul :)

07 lipit de aspectul însuși, tk. nu era nicio eșarfă pentru a dezvălui. Sa dovedit fiabil și se potrivește bine pentru aspect.
12 au plătit deja pentru batistele ieftine galbene care au intrat, ele sunt mai rău pentru aspect, deoarece acestea sunt mai confortabile. pe lățimea pe care o acoperă totul, dar este clar că este mai rapid să se lipi mai repede. Ei bine, acestea sunt mici lucruri.

Conexiune utilizând standardul:
- 3.3 volți de la stabilizator la 1117 pe VCC și GND
- în plus, electrolit și ceramică pentru nutriție
- ADC prin intermediul a 4.7 kΩ la sol
- GPIO15 până la 10kΩ la sol
- GPIO2, 0, 5, 4, 13, 12, 14 până la 10k ohmi la +3,3
- GPIO16 până la 10k ohmi la +3,3 și prin 470ohms la REST
- CH_PD prin 470Ohm la +3,3
- RX, TX direct la arduino sau USB-TTL (ambele functioneaza in modul de 3.3 volti, deci fara acord, bine, pamantul este inca obisnuit)
(cu un intermitent: opriți / GPIO0 arunc la sol / porniți / flush / deconectați / reveniți GPIO0 la +3.3 / porniți pe profit)
O parte din Vechiul a luat acest lucru aici, și alte sisteme de pe Internet, în parte să se gândească în sine raportate aici pe forum (cum ar fi de la SW. Pvvx) și logic :) Pe scurt, este necesar pentru a strânge toate și în mod necesar, prin rezistențe pentru a evita să fie GPIO consumate . Direct numai alimentele în sine. Da RX | TX deoarece nivelurile sunt consecvente. Puterea trebuie furnizată netedă / stabilă și cu o rezervă de curent.

Apropo, modulele mele încă nu-mi plac să intre în circuitul oricărei bucăți de cablu fără fir.
Adică, circuitul funcționează, să ia o postare (deși aceeași breadboard) și blocat-l într-o linie de alimentare de pe teren - ESP, în același timp, de multe ori repornește.

Așa arată un fel de cuțit.

Modulele 07 au venit noi, adică aveau cablaj ca și cel de-al 12-lea (au întâlnit informații care înainte ca cablajul să fie un pic diferit).

Total: ambele 07 și 12 de lucru, acestea sunt cusute. Comunicarea cu PC-ul, fie prin intermediul USB-TTL (pe CP-shke ca) și prin software-ul Arduino în modul de pod (în sensul că pe Arduino utilizează două porturi UART și script-redirecționează prin intermediul lor informații transparente).
Am testat pentru moment firmware-ul AT (la 07 am încărcat ultima versiune beta).

Pentru mine a scris încă un programmulinu Delfi 7 (groază, am înțeles, dar este atât de), care este folosit pentru a testa stabilitatea transmisiei în modul transparent: acesta trimite o cantitate diferită de date primite și le compară. Se pare că așa ceva. Dacă cineva are nevoie de un astfel de produs - scrie, aruncă undeva.

În principiu, stabilitatea lucrului pentru nevoile mele este suficientă (o să folosesc ESP doar ca un pod WiFi-UART). Cu o dimensiune mare a pachetului, sau dacă pachetele sunt un fir mare, ESP se restabilește cu siguranță, se întâmplă. Dar dacă aveți un master MK pentru control, care va da întotdeauna ESP un corn, dacă este nebun, iar acesta din urmă este folosit doar ca un modul de comunicare, atunci normele. Da, și voi trimite pachete octeți 16-32. Ei bine, vor fi 128 de octeți, pentru că Vreau să pun în aplicare firmware-ul setului cu cască (AVR-ki) prin WiFi.
Cumva.

ESP-07 este acum obținut cu ieșirea ADC? Unde este să găsească o amprentă?







Trimiteți-le prietenilor: