- Що таке програмування OTA?
- ESP8266 NodeMCU
- Потрібні компоненти
- Підготовка NodeMCU до бездротового отримання оновлення OTA
- ESP8266 Блимає світлодіодна програма для передачі OTA
- Блимає світлодіод на ESP8266 через оновлення OTA
Що таке програмування OTA?
Програмування OTA (по повітрю) - це процес, який дозволяє пристроям бездротово оновлювати своє програмне забезпечення або програмне забезпечення без будь-якого фізичного доступу. Він використовує бездротові технології, такі як Wi-Fi, Bluetooth, GPRS або 4G / 3G, а не дротовий послідовний зв’язок. OTA використовується для перепрограмування таких пристроїв, як мікроконтролери, мобільні телефони, комп’ютери, приставка тощо. Оновлення OTA зазвичай надсилаються для оновлення програмного забезпечення, усунення помилок, додавання деяких функцій тощо. смуги частот з низькою швидкістю передачі даних (868 МГц, 900 МГц, 2400 МГц).
У цьому посібнику ми надішлемо оновлення OTA на ESP8266 NodeMCU, щоб блимати світлодіодом.
ESP8266 NodeMCU
NodeMCU - це платформа IoT з відкритим кодом. Він включає мікропрограму, яка працює на недорогій Wi-Fi ESP8266 Wi-Fi SoC від Espressif Systems, та апаратне забезпечення, яке базується на модулі ESP-12. Він має виводи GPIO, SPI, I2C, ADC, ШІМ та UART. Його можна запрограмувати за допомогою Arduino IDE. На борту NodeMCU є мікросхема CP2102, яка забезпечує функціональність від USB до TTL. Щоб дізнатись більше про ESP8266, перегляньте інші проекти на основі ESP8266.
Потрібні компоненти
- NodeMCU ESP8266
- Кабель Micro USB
- IDE Arduino
Підготовка NodeMCU до бездротового отримання оновлення OTA
Спочатку підключіть NodeMCU ESP8266 до ПК за допомогою кабелю micro USB. Потім, щоб завантажити прошивку за допомогою OTA, нам потрібно завантажити ескіз послідовно, використовуючи мікро-USB для створення IP-адреси ESP. Це необхідний крок для наступного завантаження програмного забезпечення бездротовим способом. Виберіть послідовний порт, до якого підключений кабель, у меню Інструменти -> Порт .
ESP8266 постачається з бібліотеками та прикладами, до яких можна безпосередньо отримати доступ з IDE Arduino. Відкрийте Arduino IDE, а потім відкрийте приклад BasicOTA.
Відредагуйте ескіз, замінивши “your-ssid” та “your-password” на ваш SSID і пароль Wi-Fi, а потім завантажте ескіз
Відкрийте послідовний монітор після успішного завантаження програми. Встановіть швидкість передачі 115200 на послідовному моніторі та натисніть кнопку скидання на NodeMCU ESP8266. Підключення NodeMCU ESP8266 до Wi-Fi займає певний час, оскільки перевіряє облікові дані Wi-Fi. Якщо SSID і пароль правильні, тоді NodeMCU ESP8266 підключиться до Wi-Fi, а IP-адреса ESP відобразиться на послідовному моніторі.
ESP8266 Блимає світлодіодна програма для передачі OTA
Повний код для передачі блимаючої світлодіодної програми через OTA наведено в кінці, тут ми пояснюємо деякі важливі частини коду.
Імпорт необхідних бібліотек - це перший крок у написанні коду. Бібліотека ESP8266WiFi.h забезпечує специфічні для ESP8266 підпрограми Wi-Fi, необхідні для підключення до мережі. Також він надає методи та властивості для роботи ESP8266 в режимі станції або режимі м'якої точки доступу. ESP8266mDNS.h дозволяє ескізу відповідати на багатоадресні запити DNS.
#включати
Визначте змінні для SSID та пароля мережі Wi-Fi, до якої слід підключити ESP. Ми повинні підключити наш ПК та ESP до однієї мережі Wi-Fi.
#ifndef STASSID #define STASSID "your-ssid" #define STAPSK "your-password" #endif const char * ssid = STASSID; const char * пароль = STAPSK;
ESP8266 встановлено як станційний режим, а з'єднання Wi-Fi ініціюється шляхом надання облікових даних. Для підключення ESP до модуля Wi-Fi потрібен певний час. Якщо SSID і пароль правильні, він підключається до Wi-Fi, а якщо SSID і пароль неправильні, він перезавантажиться кожні 1 секунду.
Serial.begin (115200); // Встановіть швидкість передачі даних у бік 115200 Serial.println ("Завантаження"); // Крок для підключення ESP до режиму Wi-Fi WiFi.mode (WIFI_STA); // Встановити ESP як режим станції WiFi.begin (ssid, пароль); // Повноваження Wi-Fi під час (WiFi.waitForConnectResult ()! = WL_CONNECTED) // Підключення ESP до wi-fi займає деякий час, тому почекайте, поки він підключиться { Serial.println ("Помилка підключення! Перезавантаження…"); затримка (1000); ESP.restart (); }
IP-адреса ESP друкується на послідовному моніторі як підключення до модуля Wi-Fi. WiFi.localIP () дає IP-адресу ESP.
Після завантаження коду успішно відкрийте послідовний монітор зі швидкістю 115200 бод. Натисніть кнопку скидання, і через кілька секунд ви зможете побачити IP-адресу ESP на послідовному моніторі. Тепер ви зможете завантажити прошивку бездротовим способом.
Блимає світлодіод на ESP8266 через оновлення OTA
Перш ніж завантажувати наступний ескіз, перейдіть до Інструменти та змініть ПОРТ на IP-адресу ESP для бездротового завантаження мікропрограми на NodeMCU.
Тепер завантажте наведений нижче ескіз блимаючого світлодіода на NodeMCU бездротовим способом за допомогою Arduino IDE та переконайтеся, що ваш ПК та ESP підключені до однієї мережі Wi-Fi, а ESP живиться від якогось джерела живлення.
Після успішного завантаження коду світлодіод на NodeMCU ESP8266 почне блимати кожні 1 секунду. Ви також можете встановити ім'я та пароль хосту в ескізі для забезпечення безпеки під час завантаження програмного забезпечення на ESP.