New OTA Bigroom

This commit is contained in:
2022-03-14 14:20:50 +03:00
parent f87f56292f
commit 48d41e38ab
3 changed files with 40 additions and 25 deletions

View File

@@ -2,7 +2,7 @@
#define __MAIN__
#include <Arduino.h>
#include <ArduinoOTA.h>
//#include <ArduinoOTA.h>
#include <Ticker.h>
#include <WiFi.h>
extern "C" {
@@ -17,6 +17,9 @@ extern "C" {
#include <RunningMedian.h>
#include <Adafruit_HTU21DF.h>
#include <EEPROM.h>
#include <AsyncTCP.h>
#include <ESPAsyncWebServer.h>
#include <AsyncElegantOTA.h>
#define BAUDRATE 9600
@@ -47,4 +50,6 @@ float temp, hum;
bool bLamp, wLamp;
uint8_t statLamp;
AsyncWebServer server(80);
#endif // __MAIN__

View File

@@ -23,6 +23,8 @@ lib_deps =
wifwaf/MH-Z19 @ ^1.5.3
plerup/EspSoftwareSerial @ ^6.15.2
ottowinter/AsyncMqttClient-esphome @ ^0.8.6
ottowinter/ESPAsyncWebServer-esphome @ ^2.1.0
ayushsharma82/AsyncElegantOTA @ ^2.2.6
;upload_protocol = espota
;upload_port = 192.168.1.31

View File

@@ -30,30 +30,30 @@ void setup() {
Serial.println("Booting"); // "Загрузка"
WiFi.mode(WIFI_STA);
WiFi.hostname("BigRoom");
ArduinoOTA.onStart([]() {
// Serial.println("Start"); // "Начало OTA-апдейта"
});
ArduinoOTA.onEnd([]() {
// Serial.println("\nEnd"); // "Завершение OTA-апдейта"
});
ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) {
// Serial.printf("Progress: %u%%\r", (progress / (total / 100)));
});
ArduinoOTA.onError([](ota_error_t error) {
// Serial.printf("Error[%u]: ", error);
// if (error == OTA_AUTH_ERROR) Serial.println("Auth Failed");
// // "Ошибка при аутентификации"
// else if (error == OTA_BEGIN_ERROR) Serial.println("Begin Failed");
// // "Ошибка при начале OTA-апдейта"
// else if (error == OTA_CONNECT_ERROR) Serial.println("Connect Failed");
// // "Ошибка при подключении"
// else if (error == OTA_RECEIVE_ERROR) Serial.println("Receive Failed");
// // "Ошибка при получении данных"
// else if (error == OTA_END_ERROR) Serial.println("End Failed");
// // "Ошибка при завершении OTA-апдейта"
});
// ArduinoOTA.onStart([]() {
// // Serial.println("Start"); // "Начало OTA-апдейта"
// });
// ArduinoOTA.onEnd([]() {
// // Serial.println("\nEnd"); // "Завершение OTA-апдейта"
// });
// ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) {
// // Serial.printf("Progress: %u%%\r", (progress / (total / 100)));
// });
// ArduinoOTA.onError([](ota_error_t error) {
// // Serial.printf("Error[%u]: ", error);
// // if (error == OTA_AUTH_ERROR) Serial.println("Auth Failed");
// // // "Ошибка при аутентификации"
// // else if (error == OTA_BEGIN_ERROR) Serial.println("Begin Failed");
// // // "Ошибка при начале OTA-апдейта"
// // else if (error == OTA_CONNECT_ERROR) Serial.println("Connect Failed");
// // // "Ошибка при подключении"
// // else if (error == OTA_RECEIVE_ERROR) Serial.println("Receive Failed");
// // // "Ошибка при получении данных"
// // else if (error == OTA_END_ERROR) Serial.println("End Failed");
// // // "Ошибка при завершении OTA-апдейта"
// });
ArduinoOTA.begin();
// ArduinoOTA.begin();
mqttReconnectTimer = xTimerCreate("mqttTimer", pdMS_TO_TICKS(2000), pdFALSE, (void*)0, reinterpret_cast<TimerCallbackFunction_t>(connectToMqtt));
wifiReconnectTimer = xTimerCreate("wifiTimer", pdMS_TO_TICKS(2000), pdFALSE, (void*)0, reinterpret_cast<TimerCallbackFunction_t>(connectToWifi));
@@ -166,6 +166,14 @@ void setup() {
wLamp = bLamp = false;
statLamp = 0;
server.on("/", HTTP_GET, [](AsyncWebServerRequest *request) {
request->send(200, "text/plain", "Hi! I am ESP32.");
});
AsyncElegantOTA.begin(&server); // Start ElegantOTA
server.begin();
Serial.println("HTTP server started");
connectToWifi();
}
@@ -174,7 +182,7 @@ void loop() {
static uint8_t sec = 0;
char s[7];
ArduinoOTA.handle();
//ArduinoOTA.handle();
bled.tick();
if(digitalRead(MOVE_SENS) > 0){
if(curDelay == -1){