Cuprins:

Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) utilizând Arduino UNO: 7 pași
Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) utilizând Arduino UNO: 7 pași

Video: Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) utilizând Arduino UNO: 7 pași

Video: Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) utilizând Arduino UNO: 7 pași
Video: CARTABLET KINGCHANGE configurazioni per Nissan Qashqai e X-Trail 💪 2024, Iulie
Anonim
Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) folosind Arduino UNO
Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) folosind Arduino UNO
Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) folosind Arduino UNO
Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) folosind Arduino UNO
Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) folosind Arduino UNO
Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) folosind Arduino UNO
Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) folosind Arduino UNO
Restabiliți sau actualizați firmware-ul pe modulul ESP8266 (ESP-01) folosind Arduino UNO

Modulul ESP-01 pe care l-am folosit inițial a venit cu un firmware mai vechi AI Thinker, care îi limitează capacitățile, deoarece multe comenzi AT utile nu sunt acceptate.

În general, este o idee bună să actualizați firmware-ul pentru remedierea erorilor și, de asemenea, în funcție de funcționalitățile necesare din modulul ESP, ar putea fi necesar un set mai complet de comenzi AT acceptate. Acest tutorial explică, de asemenea, cum să restaurați sau să blocați firmware-ul Espressif original dacă vi se întâmplă să vă deranjați firmware-ul ESP, de exemplu, prin intermediul unor comenzi AT greșite. Așa s-a întâmplat când am încercat să schimb rata de transmisie implicită de la 115200 la 9600. Am folosit următoarea comandă (bazată pe o căutare rapidă pe Google):

AT + IPR = 9600

Acest lucru a blocat modulul ESP-01. Nu au mai funcționat comenzi AT, ceea ce m-a determinat să fac mai multe cercetări și, după multe ore, am găsit în cele din urmă o modalitate de a-mi restaura ESP-01 și de a instala cel mai recent firmware compatibil. Deci, am decis că merită să împărtășesc întregul proces.

Atenție: Pe baza experienței mele, aș sfătui cu tărie să nu folosesc comanda AT + IPR pentru a vă schimba rata de transmisie, deoarece cel mai probabil va necesita să vă repetați firmware-ul. Cu toate acestea, există multe variante diferite ale modulului ESP-01 cu dimensiuni diferite de bliț și versiune de firmware din fabrică, astfel încât experiența dvs. poate varia.

Modulul ESP-01 nu este compatibil cu 5 V și necesită 3,3 V pentru a-l alimenta, dar și pentru a funcționa corect la nivel logic. Pentru a comunica cu computerul, modulul are nevoie de un convertor USB în serie. Deci, în loc să folosesc un convertor de tensiune și un adaptor USB la serial, am decis să optez pentru o soluție mai simplă. Deoarece am deja un Arduino UNO, l-am folosit pe acesta din urmă pentru a alimenta modulul ESP-01 și pentru a stabili comunicația între ESP-01 și computer, funcționând efectiv ca o punte de serie.

Provizii

  1. Modulul ESP-01
  2. Arduino UNO (cu cablu USB)
  3. Sârmă jumper DuPont
  4. Pană de pâine

Pasul 1: Conexiuni prin cablu

Conexiuni cu fir
Conexiuni cu fir
Conexiuni cu fir
Conexiuni cu fir
Conexiuni cu fir
Conexiuni cu fir

Conexiunile prin cablu cu modulul Arduino UNO și ESP-01 pot fi realizate cu ușurință utilizând cabluri jumper și o placă de măsurare. Conexiunile dintre placa de dezvoltare Arduino și modulul ESP sunt descrise în tabel. Conexiunile RX și TX nu sunt inversate în acest caz, deoarece comunicarea nu se întâmplă între modulul Arduino și ESP, ci între ESP și computer. Deci, în acest caz, placa Arduino UNO este utilizată ca o punte serială prin intermediul convertorului său USB la serie.

Conexiunea pinilor RX între placa Arduino și modulul ESP trebuie făcută printr-un divizor de tensiune, deoarece ESP-01 funcționează pe un nivel logic de 3,3 V și primirea unui nivel logic de 5 V de la Arduino UNO ar putea deteriora modulul ESP. Puteți construi un divizor simplu de tensiune de 3,3 V folosind doar 2 rezistențe așa cum se arată în figură. Opțional, puteți utiliza un convertor de nivel logic.

Atenție: pentru configurarea mea, tocmai am conectat pinii RX direct (nu este recomandabil!) Și totul a funcționat, dar dacă decideți să renunțați la conversia nivelului logic, continuați pe propriul risc!

Pentru a stabili o conexiune de masă comună, pinul de masă Arduino UNO este conectat la pinul de masă al modulului ESP.

Arduino UNO este utilizat pentru a furniza o putere de 3,3 V direct la pinul VCC al modulului ESP. Conectați pinul de 3,3 V la placa folosind un fir jumper, deoarece 3,3 V va fi utilizat nu numai pentru pinul VCC al ESP, ci și pentru pinul CH_PD al ESP pentru a activa cipul ESP.

Pinul RESET de pe Arduino UNO este conectat la masă pentru a ocoli orice cod încărcat prin Arduino, astfel încât codul să fie trimis de la computer la ESP-01.

Figura din tabel prezintă setul complet de conexiuni pentru firmware intermitent, dar în acest stadiu, nu conectați resetarea ESP și pinii GPIO_0, deoarece vom citi informațiile despre firmware doar în pasul următor.

Pasul 2: Verificați versiunea firmware-ului

Verificați versiunea firmware
Verificați versiunea firmware

Pentru a găsi versiunea de firmware ESP-01, în Arduino IDE Serial Monitor, tastați:

AT + GMR

Notă: Toate comenzile AT trebuie să fie tastate cu majuscule fără spații.

Iată ieșirea serială pentru ESP-01 (modulul dvs. ESP ar putea să nu afișeze exact aceleași informații, deoarece depinde de modelul specific și data de lansare):

AT + GMR

Versiune AT: 0.25.0.0 (5 iunie 2015 16:27:16) Versiune SDK: 1.1.1 Ai-Thinker Technology Co. Ltd. 23 iunie 2015 23:23:50 OK

Acum, pentru a face upgrade la cel mai recent firmware oficial Espressif ESP8266EX, accesați secțiunea de resurse a site-ului său web:

Notă: Este posibil ca lista firmware-ului disponibil să nu fie compatibilă cu modelul dvs. ESP-01. Consultați secțiunea Depanare la sfârșitul acestui tutorial pentru mai multe informații.

Pasul 3: Pregătirea instalării: Înainte ca firmware-ul să clipească

Pregătirea instalării: Înainte de a clipi firmware-ul
Pregătirea instalării: Înainte de a clipi firmware-ul

Acum, vom pregăti Arduino UNO pentru procedura de intermitent firmware ESP-01.

Asigurați-vă că firul RESET Arduino este deconectat de la masă. De asemenea, firele TX și RX de la Arduino UNO trebuie deconectate de la modulul ESP-01.

Deschideți Arduino IDE și din meniul de sus, accesați Fișier> Exemple> 01. Bază> BareMinimum. Încărcați schița pe Arduino UNO. Această schiță necompletată va asigura că nu intervine nicio interferență de comunicare cu modulul ESP.

Reconectați cablurile RX și TX între UNO și ESP-01. De asemenea, conectați pinul RESET al UNO la masă.

PIN-ul CH_PD sau CH_EN înseamnă „Chip Power-Down” sau „Chip Enable” și trebuie tras la HIGH sau conectat la 3,3 V pentru a activa cipul ESP.

Sunt necesare două cabluri jumper suplimentare pentru următorii pini ESP: GPIO_0 și RESET.

GPIO_2 nu este utilizat și este lăsat deconectat.

ESP-01 trebuie setat în modul de programare, astfel încât codul să poată fi încărcat pe acesta. Dar ESP-01 nu are hardware-ul suplimentar necesar la bord pentru a realiza acest lucru direct, așa că trebuie conectat separat. Pentru propria mea utilizare, nu m-am deranjat să folosesc comutatoare, ci în schimb am folosit pur și simplu două cabluri jumper-mascul conectate la pinii GPIO_0 și RESET ai modulului ESP-01 și i-am conectat la pinii de masă comuni ai panoului de masă de la masa Arduino UNO.

Înainte de a începe procedura intermitentă, GPIO_0 este conectat la masă pentru întreaga procedură intermitentă pentru a activa modul de programare.

Pinul RESET este conectat la masă pentru o secundă și apoi eliminat. Acest lucru permite încărcarea noului firmware.

Pasul 4: Descărcați Flashing Tool și Firmware

Descărcați Flashing Tool și Firmware
Descărcați Flashing Tool și Firmware

Firmware-ul folosit este de la Espressif, care este producătorul original al cipului ESP8266.

Accesați: https://www.espressif.com/en/products/hardware/esp8266ex/resources pentru a accesa instrumentele oficiale și fișierele de firmware AT.

Sub fila „Instrumente”, descărcați Instrumente de descărcare Flash (ESP8266 și ESP32), în prezent cel mai recent fiind V3.6.8.

Sub fila „AT”, descărcați cel mai recent firmware AT compatibil, care este ESP8266 AT Bin V1.6.2 pentru modelul meu ESP-01. Depinde de modelul ESP-01, deoarece poate avea dimensiuni diferite de memorie flash. Veți găsi mai multe informații despre acest lucru în secțiunea INFORMAȚII DETECTATE a programului Instrumente de descărcare Flash după ce faceți clic pe START pentru a începe procedura de intermitent. Deci, dacă nu sunteți sigur cu privire la dimensiunea blițului sau la ce fișiere de firmware să selectați, rulați doar programul pentru a obține informațiile corecte despre modulul dvs. ESP.

După ce clipiți, puteți utiliza comenzile AT pentru a testa și lucra cu ESP-01. Descărcați setul oficial de instrucțiuni ESP8266 AT:

Pasul 5: Procedură intermitentă

Procedură intermitentă
Procedură intermitentă
Procedură intermitentă
Procedură intermitentă
Procedură intermitentă
Procedură intermitentă
Procedură intermitentă
Procedură intermitentă

Extrageți fișierul zip Instrumente de descărcare Flash și deschideți fișierul exe. Asigurați-vă că îl rulați ca administrator dacă utilizați Windows. Mai întâi se va deschide o fereastră DOS, urmată de o fereastră pop-up. Selectați instrumentul de descărcare ESP8266. Aceasta va deschide o fereastră cu mai multe opțiuni configurabile.

În acest stadiu, consultați captura de ecran pentru a vedea exact ce opțiuni să selectați și ce să tastați în casetele de cod hexagonal de lângă fiecare dintre fișierele firmware selectate.

Notă: Selectați fișierele firmware în aceeași ordine, deoarece procedura flash se face secvențial. Fișierul blank.bin trebuie selectat de trei ori așa cum se arată în captura de ecran a setului de instrucțiuni AT.

Pentru a găsi codurile hexagonale sau adresele corecte, verificați documentul oficial al setului de instrucțiuni AT. Am atașat o captură de ecran a tabelului pe care am folosit-o pentru intermitentul modulului meu ESP.

Apoi, doar apăsați butonul START și urmăriți cum se întâmplă magia. Textul butonului va afișa SYNC și secțiunea INFORMAȚII DETECTATE va afișa specificațiile modulului ESP. Apoi, textul va afișa DOWNLOAD și bara de progres se va activa pe măsură ce fișierele firmware sunt încărcate în memoria flash ESP. După terminarea procedurii de intermitent firmware, veți vedea: FINISH.

Închideți programul Instrumente de descărcare Flash. Acest lucru este necesar pentru a elibera portul serial pentru a permite monitorului serial Arduino IDE să preia controlul.

Deconectați pinul GPIO_0 ESP de la conexiunea la masă. Aceasta va dezactiva modul de programare.

Conectați RESET la masă timp de 1 secundă și apoi deconectați-vă. Aceasta va reseta modulul.

Deschideți Arduino IDE. Din meniul de sus, selectați Instrumente> Port> selectați portul COM corect. Deschideți Serial Monitor și alegeți „Ambele NL și CR” și selectați rata de transmisie de 115200, care este cea implicită.

Tip:

LA

Dacă procedura intermitentă a decurs corect, răspunsul va fi:

Bine

Pentru a verifica noul firmware, tastați:

AT + GMR

Iată ieșirea Serial Monitor pentru ESP-01:

AT + GMR

Versiune AT: 1.6.2.0 (13 aprilie 2018 11:10:59) Versiune SDK: 2.2.1 (6ab97e9) timp de compilare: 7 iunie 2018 19:34:26 Versiune coș (Wroom 02): 1.6.2 OK

Pasul 6: Schimbați rata Baud permanent

Schimbați rata Baud permanent
Schimbați rata Baud permanent

Această parte este opțională. Rata de transmisie implicită este 115200, dar dacă doriți să o modificați la o altă viteză de transmisie, puteți pur și simplu să tastați următoarea comandă în Arduino Serial Monitor.

De exemplu, dacă doriți să treceți la 9600 baud rate / 8 biți de date / 1 biți de oprire / fără bit de paritate / fără control al debitului.

Introduceți:

AT + UART_DEF = 9600, 8, 1, 0, 0

Răspunsul ar trebui să fie:

Bine

Comanda de mai sus modifică rata de transmisie permanent la 9600, dar puteți alege oricare dintre viteza de transmisie standard.

Pasul 7: Depanare

Depanare
Depanare
Depanare
Depanare

Dacă există anomalii după intermitentul cu succes al firmware-ului, de exemplu, în monitorul serial, după ce selectați rata de transmisie implicită de 115200 și tastați: AT, dar nu vedeți niciun răspuns sau dacă tastați AT + GMR și primiți altele alte informații decât informațiile despre versiunea firmware-ului, atunci este posibil să fi afișat firmware-ul greșit. În acest caz, în programul Instrumente de descărcare Flash, după ce apăsați butonul START pentru a începe procedura de intermitent firmware, butonul verde de stare citește SYNC și este etapa în care informațiile modulului ESP sunt extrase și puse la dispoziție sub INFORMAȚII DETECTATE. Aceste informații sunt esențiale pentru a determina firmware-ul corect și fișierele corecte pentru flash.

Următorul este pentru modulul meu ESP-01:

furnizor flash:

E0h: N / A flash devID: 4014h QUAD; 8Mbit cristal: 26 Mhz

INFORMAȚIA DETECTATĂ va depinde de modelul ESP-01. Dar acest lucru vă va permite să deduceți dimensiunea corectă a blițului. În ESP-ul meu, acesta este de 8Mbit, care este echivalent cu 1 MB. Deci, acest lucru înseamnă că ar trebui să aleg 512 KB + 512 KB din fișierele firmware. Și acest lucru înseamnă, de asemenea, că firmware-ul 1.7.0 sau 1.7.1 nu va funcționa corect pentru modulul meu ESP, ceea ce am confirmat și prin intermiterea acestor firmware și testare. De asemenea, în descrierea firmware-urilor 1.7.0 și 1.7.1 de pe site-ul oficial al resursei Espressif, sunt listate următoarele informații: „Limitat de dimensiunea fișierului AT, numai„ 1024 + 1024 flash map”este acceptat de Mod implicit. 1024 + 1024 înseamnă că este pentru un modul ESP cu o dimensiune totală a blițului de 2048 KB sau 2 MB.

Notă: În cazul în care vă întrebați, puteți face downgrade sau actualiza între diferite versiuni de firmware fără restricții. Dacă ceva nu merge bine, puteți să clipiți din nou cu parametri diferiți sau să încercați un alt firmware.

Recomandat: