Add wifi and ota

This commit is contained in:
2025-07-29 17:41:21 +02:00
parent ff442f5650
commit d80a58f72c
7 changed files with 197 additions and 11 deletions

34
lib/ota/ota.cpp Normal file
View File

@@ -0,0 +1,34 @@
#include <ArduinoOTA.h>
#include "ota.h"
OTAHandler::OTAHandler(std::string hostname) {
ArduinoOTA.setHostname(hostname.c_str());
ArduinoOTA.onStart([]() {
Serial.println("OTA Start");
});
ArduinoOTA.onEnd([]() {
Serial.println("OTA End");
});
ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) {
Serial.printf("OTA Progress: %u%%\n", (progress / (total / 100)));
});
ArduinoOTA.onError([](ota_error_t error) {
Serial.printf("OTA Error[%u]: ", error);
if (error == OTA_AUTH_ERROR) {
Serial.println("Auth Failed");
} else if (error == OTA_BEGIN_ERROR) {
Serial.println("Begin Failed");
} 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");
}
});
ArduinoOTA.begin();
}
void OTAHandler::poll() {
ArduinoOTA.handle();
}

9
lib/ota/ota.h Normal file
View File

@@ -0,0 +1,9 @@
#pragma once
#include <string>
class OTAHandler {
public:
OTAHandler(std::string hostname);
void poll();
};