- Mikä on OTA-ohjelmointi?
- ESP8266 SolmuMCU
- Tarvittavat komponentit
- Valmistellaan NodeMCU: ta vastaanottamaan OTA-päivitys langattomasti
- ESP8266 Vilkkuva LED-ohjelma OTA-siirtoa varten
- ESP8266: n LED vilkkuu OTA-päivityksen kautta
Mikä on OTA-ohjelmointi?
OTA-ohjelmointi (Over the Air) on prosessi, jonka avulla laitteet voivat päivittää laiteohjelmistonsa tai ohjelmistonsa langattomasti ilman fyysistä pääsyä. Se käyttää langatonta tekniikkaa, kuten Wi-Fi, Bluetooth, GPRS tai 4G / 3G, langallisen sarjaliikenteen sijaan. OTA käytetään ohjelmoida laitteita, kuten mikro, kännyköiden, tietokoneiden, digisovitin jne OTA päivitykset ovat yleensä lähetetään ohjelmiston päivittämiseksi, ratkaista vikoja, lisäämällä joitakin ominaisuuksia jne käytön lisääntyessä esineiden internetin laitteiden OTA siirretään käyttämällä taajuuskaistat, joiden tiedonsiirtonopeus on pieni (868 MHz, 900 MHz, 2400 MHz).
Tässä opetusohjelmassa lähetämme OTA-päivityksen ESP8266 NodeMCU: lle LED-merkkivalon vilkkumiseksi.
ESP8266 SolmuMCU
NodeMCU on avoimen lähdekoodin IoT-alusta. Se sisältää laiteohjelmiston, joka toimii Espressif Systems -yhtiön edullisella Wi-Fi-yhteensopivalla ESP8266 Wi-Fi SoC -palvelimella, ja laitteiston, joka perustuu ESP-12-moduuliin. Siinä on GPIO-, SPI-, I2C-, ADC-, PWM- ja UART-nastat. Se voidaan ohjelmoida Arduino IDE: llä. Aluksella NodeMCU: ssa on CP2102 IC, joka tarjoaa USB-TTL-toiminnot. Jos haluat lisätietoja ESP8266: sta, tarkista muut ESP8266-pohjaiset projektit.
Tarvittavat komponentit
- SolmuMCU ESP8266
- Mikro-USB-kaapeli
- Arduino IDE
Valmistellaan NodeMCU: ta vastaanottamaan OTA-päivitys langattomasti
Liitä ensin NodeMCU ESP8266 tietokoneeseen mikro-USB-kaapelilla. Sitten, jotta voit ladata laiteohjelmiston OTA: n avulla, meidän on lähetettävä luonnos sarjaan käyttämällä mikro-USB: tä ESP: n IP-osoitteen luomiseksi. Tämä on välttämätön vaihe laiteohjelmiston lataamiseksi langattomasti seuraavalla kerralla. Valitse sarjaportti, johon kaapeli on liitetty, valitsemalla Työkalut -> Portti .
ESP8266 sisältää kirjastot ja esimerkkejä, joihin pääsee suoraan Arduino IDE: stä. Avaa Arduino IDE ja avaa sitten BasicOTA-esimerkki.
Muokkaa luonnosta korvaamalla "sinun-ssid" ja "salasanasi" Wi-Fi SSID: llä ja salasanalla ja lataa sitten luonnos
Avaa sarjamonitori ohjelman onnistuneen lataamisen jälkeen. Aseta siirtonopeus 115200 Serial Monitoriin ja paina NodeMCU ESP8266: n nollauspainiketta. NodeMCU ESP8266: n yhdistäminen Wi-Fi-verkkoon vie jonkin aikaa, kun se tarkistaa Wi-Fi-kirjautumistiedot. Jos SSID ja salasana ovat oikein, NodeMCU ESP8266 yhdistetään Wi-Fi-verkkoon ja ESP: n IP-osoite näkyy sarjamoduulissa.
ESP8266 Vilkkuva LED-ohjelma OTA-siirtoa varten
Täydellinen koodi vilkkuvan LED-ohjelman siirtämiseen OTA: n kautta annetaan lopussa, tässä selitämme koodin tärkeän osan.
Vaadittavien kirjastojen tuominen on ensimmäinen vaihe koodin kirjoittamisessa. ESP8266WiFi.h- kirjasto tarjoaa ESP8266-spesifisiä Wi-Fi-rutiineja, joita tarvitaan verkkoyhteyden muodostamiseen. Se tarjoaa myös menetelmiä ja ominaisuuksia ESP8266: n käyttämiseksi asematilassa tai pehmeän tukiaseman tilassa. ESP8266mDNS.h antaa luonnoksen vastata multicast-DNS-kyselyihin.
#sisältää
Määritä muuttujat sen Wi-Fi-verkon SSID: lle ja salasanalle, johon ESP liitetään. Meidän on liitettävä tietokoneemme ja ESP samaan Wi-Fi-verkkoon.
#ifndef STASSID #define STASSID "sinun-ssid" #define STAPSK "salasanasi" #endif const char * ssid = STASSID; const char * salasana = STAPSK;
ESP8266 on asetettu asemamoodiksi ja Wi-Fi-yhteys muodostetaan antamalla tunnistetiedot. ESP-yhteyden muodostaminen Wi-Fi-moduuliin kestää jonkin aikaa. Jos SSID ja salasana ovat oikein, se yhdistetään Wi-Fi-verkkoon ja jos SSID ja salasana eivät ole oikein, se käynnistetään uudelleen 1 sekunnin välein.
Sarjan alku (115200); // Aseta siirtonopeudeksi 115200 Serial.println ("Käynnistys"); // Vaihe yhteyden muodostamiseksi ESP: n kanssa Wi-Fi WiFi.mode (WIFI_STA); // Aseta ESP asematilaksi WiFi.begin (ssid, salasana); // Wi-Fi- kirjautumistiedot kun (WiFi.waitForConnectResult ()! = WL_CONNECTED) // ESP: n yhdistäminen wi-fi-verkkoon vie jonkin aikaa, joten odota, kunnes se yhdistetään { Serial.println ("Yhteys epäonnistui! Uudelleenkäynnistys…"); viive (1000); ESP. Uudelleenkäynnistys (); }
ESP: n IP-osoite tulostetaan sarjakuvaruutuun yhdistettynä Wi-Fi-moduuliin. WiFi.localIP () antaa ESP: n IP-osoitteen.
Kun koodi on ladattu, avaa sarjamonitori onnistuneesti 115200 tiedonsiirtonopeudella. Paina nollauspainiketta ja muutaman sekunnin kuluttua näet ESP: n IP-osoitteen Serial Monitorissa. Nyt voit ladata laiteohjelmiston langattomasti.
ESP8266: n LED vilkkuu OTA-päivityksen kautta
Ennen seuraavan luonnoksen lataamista siirry kohtaan Työkalut ja vaihda PORT-asetukseksi ESP IP-osoite, jotta laiteohjelmisto ladataan langattomasti NodeMCU: han.
Lataa nyt alla oleva luonnos vilkkuvasta LED-valosta NodeMCU: ssa langattomasti Arduino IDE: n avulla ja varmista, että tietokoneesi ja ESP ovat yhteydessä samaan Wi-Fi-verkkoon ja että ESP: n virtalähde on jokin virtalähde.
Kun koodi on ladattu onnistuneesti, NodeMCU ESP8266: n LED-valo alkaa vilkkua sekunnin välein. Voit myös asettaa isäntänimen ja salasanan luonnoksessa turvallisuuden varmistamiseksi samalla, kun lataat laiteohjelmistoa ESP: hen.