From 22e3ca387551a24d70732009046f910c069f0c55 Mon Sep 17 00:00:00 2001 From: Thomas Hooge Date: Tue, 26 Aug 2025 17:17:48 +0200 Subject: [PATCH] Switch to current webserver version and some small fixes --- lib/gwupdate/GwUpdate.cpp | 4 ++-- lib/gwwebserver/GwWebServer.cpp | 2 +- lib/obp60task/LedSpiTask.cpp | 2 +- lib/obp60task/OBP60Extensions.cpp | 2 +- lib/obp60task/OBP60Formatter.h | 2 ++ lib/obp60task/OBPKeyboardTask.cpp | 7 ++++++- lib/obp60task/hbuffer.cpp | 1 + lib/obp60task/platformio.ini | 6 ------ platformio.ini | 4 ++-- 9 files changed, 16 insertions(+), 14 deletions(-) diff --git a/lib/gwupdate/GwUpdate.cpp b/lib/gwupdate/GwUpdate.cpp index 9b2f11e..8bb5dd9 100644 --- a/lib/gwupdate/GwUpdate.cpp +++ b/lib/gwupdate/GwUpdate.cpp @@ -79,7 +79,7 @@ GwUpdate::GwUpdate(GwLog *log, GwWebServer *webserver, PasswordChecker ckr) } if (!param->hasError()) { - AsyncWebParameter *hash=request->getParam("_hash"); + const AsyncWebParameter *hash=request->getParam("_hash"); if (! hash){ hash=request->getParam("_hash",true); } @@ -141,4 +141,4 @@ GwUpdate::GwUpdate(GwLog *log, GwWebServer *webserver, PasswordChecker ckr) } } }); -} \ No newline at end of file +} diff --git a/lib/gwwebserver/GwWebServer.cpp b/lib/gwwebserver/GwWebServer.cpp index 67df54f..18a808e 100644 --- a/lib/gwwebserver/GwWebServer.cpp +++ b/lib/gwwebserver/GwWebServer.cpp @@ -27,7 +27,7 @@ void sendEmbeddedFile(String name,String contentType,AsyncWebServerRequest *requ std::map::iterator it=embeddedFiles.find(name); if (it != embeddedFiles.end()){ EmbeddedFile* found=it->second; - AsyncWebServerResponse *response=request->beginResponse_P(200,contentType,found->start,found->len); + AsyncWebServerResponse *response=request->beginResponse(200, contentType, found->start, found->len); response->addHeader(F("Content-Encoding"), F("gzip")); request->send(response); } diff --git a/lib/obp60task/LedSpiTask.cpp b/lib/obp60task/LedSpiTask.cpp index c0e6f02..ece26a2 100644 --- a/lib/obp60task/LedSpiTask.cpp +++ b/lib/obp60task/LedSpiTask.cpp @@ -254,7 +254,7 @@ void handleSpiLeds(void *param){ void createSpiLedTask(LedTaskData *param) { TaskHandle_t xHandle = NULL; - GwLog *logger = shared->api->getLogger(); + GwLog *logger = param->api->getLogger(); esp_err_t err = xTaskCreate(handleSpiLeds, "handleLeds", configMINIMAL_STACK_SIZE + 2048, param, 3, &xHandle); if (err != pdPASS) { logger->logDebug(GwLog::ERROR, "Failed to create spiled task! (err=%d)", err); diff --git a/lib/obp60task/OBP60Extensions.cpp b/lib/obp60task/OBP60Extensions.cpp index 4ac5dd0..346e820 100644 --- a/lib/obp60task/OBP60Extensions.cpp +++ b/lib/obp60task/OBP60Extensions.cpp @@ -922,7 +922,7 @@ void doImageRequest(GwApi *api, int *pageno, const PageStruct pages[MAX_PAGE_NUM createPBM(fb, &imageBuffer, GxEPD_WIDTH, GxEPD_HEIGHT); } - AsyncWebServerResponse *response = request->beginResponse_P(200, mimetype, (const uint8_t*)imageBuffer.data(), imageBuffer.size()); + AsyncWebServerResponse *response = request->beginResponse(200, mimetype, (const uint8_t*)imageBuffer.data(), imageBuffer.size()); response->addHeader("Content-Disposition", "inline; filename=" + filename); request->send(response); diff --git a/lib/obp60task/OBP60Formatter.h b/lib/obp60task/OBP60Formatter.h index cc7c14f..79cdeac 100644 --- a/lib/obp60task/OBP60Formatter.h +++ b/lib/obp60task/OBP60Formatter.h @@ -2,6 +2,8 @@ #ifndef _OBP60FORMATTER_H #define _OBP60FORMATTER_H +#include "GwApi.h" +#include "Pagedata.h" #include /* diff --git a/lib/obp60task/OBPKeyboardTask.cpp b/lib/obp60task/OBPKeyboardTask.cpp index 7e8b93f..7ffb0db 100644 --- a/lib/obp60task/OBPKeyboardTask.cpp +++ b/lib/obp60task/OBPKeyboardTask.cpp @@ -2,6 +2,7 @@ #if defined BOARD_OBP60S3 || defined BOARD_OBP40S3 #include #include "OBP60Hardware.h" +#include "OBP60Extensions.h" // for buzzer #include "OBPKeyboardTask.h" // Global vars @@ -60,7 +61,7 @@ void initKeys(CommonData &commonData) { #ifdef HARDWARE_V21 // Keypad functions for original OBP60 hardware -int readKeypad(GwLog* logger, uint thSensitivity, bool use_syspage) { +int readKeypad(GwLog* logger, uint thSensitivity) { // Touch sensor values // 35000 - Not touched @@ -315,7 +316,11 @@ void keyboardTask(void *param) { data->logger->logDebug(GwLog::LOG, "Start keyboard task"); while (true) { +#ifdef BOARD_OBP40S3 keycode = readKeypad(data->logger, data->sensitivity, data->use_syspage); +#else + keycode = readKeypad(data->logger, data->sensitivity); +#endif //send a key event if (keycode != 0) { xQueueSend(data->queue, &keycode, 0); diff --git a/lib/obp60task/hbuffer.cpp b/lib/obp60task/hbuffer.cpp index 2c3cb3b..27e0215 100644 --- a/lib/obp60task/hbuffer.cpp +++ b/lib/obp60task/hbuffer.cpp @@ -83,5 +83,6 @@ public: ~History() { } void *addSeries() { + return nullptr; } }; diff --git a/lib/obp60task/platformio.ini b/lib/obp60task/platformio.ini index 4fa442f..6af4c95 100644 --- a/lib/obp60task/platformio.ini +++ b/lib/obp60task/platformio.ini @@ -22,14 +22,11 @@ lib_deps = Wire SPI ESP32time - esphome/AsyncTCP-esphome@2.0.1 robtillaart/PCF8574@0.3.9 adafruit/Adafruit Unified Sensor @ 1.1.13 blemasle/MCP23017@2.0.0 adafruit/Adafruit BusIO@1.5.0 adafruit/Adafruit GFX Library@1.11.9 - #zinggjm/GxEPD2@1.5.8 - #https://github.com/ZinggJM/GxEPD2 https://github.com/thooge/GxEPD2 sstaub/Ticker@4.4.0 adafruit/Adafruit BMP280 Library@2.6.2 @@ -73,14 +70,11 @@ lib_deps = Wire SPI ESP32time - esphome/AsyncTCP-esphome@2.0.1 robtillaart/PCF8574@0.3.9 adafruit/Adafruit Unified Sensor @ 1.1.13 blemasle/MCP23017@2.0.0 adafruit/Adafruit BusIO@1.5.0 adafruit/Adafruit GFX Library@1.11.9 - #zinggjm/GxEPD2@1.5.8 - #https://github.com/ZinggJM/GxEPD2 https://github.com/thooge/GxEPD2 sstaub/Ticker@4.4.0 adafruit/Adafruit BMP280 Library@2.6.2 diff --git a/platformio.ini b/platformio.ini index 32b9902..2be68e0 100644 --- a/platformio.ini +++ b/platformio.ini @@ -21,8 +21,8 @@ lib_deps = ttlappalainen/NMEA2000-library @ 4.22.0 ttlappalainen/NMEA0183 @ 1.10.1 ArduinoJson @ 6.18.5 - AsyncTCP-esphome @ 2.0.1 - ottowinter/ESPAsyncWebServer-esphome@2.0.1 + ESP32Async/AsyncTCP @ 3.4.7 + ESP32Async/ESPAsyncWebServer @ 3.8.0 FS Preferences ESPmDNS