From 18aa9e9e96a34519f408c31000361ba2a2e2e2fc Mon Sep 17 00:00:00 2001 From: Niklas Jensen Date: Sat, 31 Jan 2026 21:14:10 +0100 Subject: [PATCH] Added mutex for ws sending to avoid concurrent send --- esp32/src/communication/webserver.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/esp32/src/communication/webserver.cpp b/esp32/src/communication/webserver.cpp index f5bd76b..37b3686 100644 --- a/esp32/src/communication/webserver.cpp +++ b/esp32/src/communication/webserver.cpp @@ -265,7 +265,10 @@ esp_err_t WebServer::wsSend(int sockfd, const uint8_t* data, size_t len) { .type = HTTPD_WS_TYPE_BINARY, .payload = const_cast(data), .len = len}; - return httpd_ws_send_frame_async(server_, sockfd, &frame); + xSemaphoreTake(wsMutex_, portMAX_DELAY); + esp_err_t ret = httpd_ws_send_frame_async(server_, sockfd, &frame); + xSemaphoreGive(wsMutex_); + return ret; } esp_err_t WebServer::wsSendAll(const uint8_t* data, size_t len) {