diff --git a/ESP8266/ESP8266.ino b/ESP8266/ESP8266.ino index 2d37426..3cde5bb 100644 --- a/ESP8266/ESP8266.ino +++ b/ESP8266/ESP8266.ino @@ -7,7 +7,7 @@ // ================================================================ // OTA CONFIG // ================================================================ -#define FW_VERSION 11 +#define FW_VERSION 12 #define GITEA_HOST "https://git.nacho.myds.me" #define GITEA_OWNER "Natxo" #define GITEA_REPO "Arduino-Car" @@ -64,11 +64,12 @@ static void checkOTA() { // ── Bloque de scope: libera el cliente BearSSL antes de la descarga ── // BearSSL ocupa ~20KB de heap. Si los dos clientes coexisten el heap // se agota y ESPhttpUpdate falla silenciosamente. + // Scope block: destruye el cliente BearSSL antes de crear el de descarga + // Libera ~20KB de heap (BearSSL con buffers por defecto) para la descarga int remoteVer = 0; { BearSSL::WiFiClientSecure client; client.setInsecure(); - client.setBufferSizes(512, 512); // buffers mínimos — suficiente para la respuesta HTTPClient http; http.begin(client, base + "version.txt" + token); http.setTimeout(10000); @@ -79,7 +80,7 @@ static void checkOTA() { remoteVer = body.toInt(); } http.end(); - } // ← client y http se destruyen aquí, ~20KB liberados + } // client destruido aquí — heap recuperado if (remoteVer > FW_VERSION) { // 4 pitidos = ESP8266 actualizando @@ -99,10 +100,6 @@ static void checkOTA() { BearSSL::WiFiClientSecure updateClient; updateClient.setInsecure(); - // 4096 bytes de entrada: necesario para records TLS de datos grandes. - // 512 bytes de salida: suficiente para peticiones HTTP. - // El scope block anterior liberó ~10KB del primer cliente — hay heap. - updateClient.setBufferSizes(4096, 512); ESPhttpUpdate.setFollowRedirects(HTTPC_STRICT_FOLLOW_REDIRECTS); ESPhttpUpdate.rebootOnUpdate(true); ESPhttpUpdate.update(updateClient, base + "firmware.bin" + token); diff --git a/Esp32Cam/Esp32Cam.ino b/Esp32Cam/Esp32Cam.ino index 588e836..4813714 100644 --- a/Esp32Cam/Esp32Cam.ino +++ b/Esp32Cam/Esp32Cam.ino @@ -10,7 +10,7 @@ // ================================================================ // OTA CONFIG // ================================================================ -#define FW_VERSION 11 +#define FW_VERSION 12 #define GITEA_HOST "https://git.nacho.myds.me" #define GITEA_OWNER "Natxo" #define GITEA_REPO "Arduino-Car" diff --git a/firmware/esp32cam/firmware.bin b/firmware/esp32cam/firmware.bin index fb07ea0..462c816 100644 Binary files a/firmware/esp32cam/firmware.bin and b/firmware/esp32cam/firmware.bin differ diff --git a/firmware/esp32cam/version.txt b/firmware/esp32cam/version.txt index 9d60796..3cacc0b 100644 --- a/firmware/esp32cam/version.txt +++ b/firmware/esp32cam/version.txt @@ -1 +1 @@ -11 \ No newline at end of file +12 \ No newline at end of file diff --git a/firmware/esp8266/firmware.bin b/firmware/esp8266/firmware.bin index 7b37df1..775b35c 100644 Binary files a/firmware/esp8266/firmware.bin and b/firmware/esp8266/firmware.bin differ diff --git a/firmware/esp8266/version.txt b/firmware/esp8266/version.txt index 9d60796..3cacc0b 100644 --- a/firmware/esp8266/version.txt +++ b/firmware/esp8266/version.txt @@ -1 +1 @@ -11 \ No newline at end of file +12 \ No newline at end of file