diff --git a/platformio.ini b/platformio.ini
index deb4c0b..10814fc 100644
--- a/platformio.ini
+++ b/platformio.ini
@@ -1,5 +1,5 @@
-[platformio]
-env_default = basic
+;[platformio]
+;env_default = basic
[common]
framework = arduino
@@ -26,4 +26,17 @@ board = ${common.board}
upload_speed = ${common.upload_speed}
monitor_baud = ${common.monitor_baud}
framework = ${common.framework}
-lib_deps = ${common.lib_deps}
\ No newline at end of file
+lib_deps = ${common.lib_deps}
+
+[env:basic_esp32]
+src_filter = +<*> - +
+platform = espressif32
+board = esp32dev
+upload_speed = ${common.upload_speed}
+monitor_baud = ${common.monitor_baud}
+framework = ${common.framework}
+build_flags = -std=c++14 -DESP32
+lib_deps = ${common.lib_deps}
+ AsyncWebServer
+ AsyncTCP
+ Update
\ No newline at end of file
diff --git a/src/WebApiPlugin.cpp b/src/WebApiPlugin.cpp
index 7f3195d..8f9c16a 100644
--- a/src/WebApiPlugin.cpp
+++ b/src/WebApiPlugin.cpp
@@ -3,7 +3,6 @@
WebApiPlugin::WebApiPlugin(AsyncWebServer *_server)
{
server = _server;
- Update.runAsync(true);
}
void WebApiPlugin::activate(Scheduler *_scheduler)
@@ -62,8 +61,13 @@ void WebApiPlugin::onFirmwareUpload(AsyncWebServerRequest *request, const String
if (!index)
{
PRINT_MSG(Serial, "OTA", "Update Start %s", filename.c_str());
+ #ifdef ESP8266
Update.runAsync(true);
- if (!Update.begin((ESP.getFreeSketchSpace() - 0x1000) & 0xFFFFF000))
+ uint32_t maxSketchSpace = (ESP.getFreeSketchSpace() - 0x1000) & 0xFFFFF000;
+ #elif defined(ESP32)
+ uint32_t maxSketchSpace = (1048576 - 0x1000) & 0xFFFFF000;
+ #endif
+ if (!Update.begin(maxSketchSpace))
{
Update.printError(Serial);
}
diff --git a/src/WebApiPlugin.h b/src/WebApiPlugin.h
index 6f92686..2024999 100644
--- a/src/WebApiPlugin.h
+++ b/src/WebApiPlugin.h
@@ -3,8 +3,11 @@
#include
#include
+#ifdef ESP32
+#include
+#elif defined(ESP8266)
#include
-
+#endif
#include "config.h"
#include "utils/print.h"
#include "WebUtils.h"
diff --git a/src/WebUtils.h b/src/WebUtils.h
index e54048f..ce08be1 100644
--- a/src/WebUtils.h
+++ b/src/WebUtils.h
@@ -4,7 +4,11 @@
#include
#include
#include
+#ifdef ESP32
+#include
+#elif defined(ESP8266)
#include
+#endif
class WebUtils
{