From c1d1f8c8f2912ec3898db50b57682735821b06be2a77db0b806a761b37da8f55 Mon Sep 17 00:00:00 2001 From: Sebastian Mariano Flores Date: Fri, 22 May 2026 12:53:21 -0600 Subject: [PATCH] v1-RC-1 --- include/WebSocketHandler.h | 1 + src/WebSocketHandler.cpp | 5 +++++ src/main.cpp | 8 +++++++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/include/WebSocketHandler.h b/include/WebSocketHandler.h index 0a6d6ff..94f91ee 100644 --- a/include/WebSocketHandler.h +++ b/include/WebSocketHandler.h @@ -3,4 +3,5 @@ #include "Arduino.h" #include +extern volatile bool websocket_connected; void webSocketEvent( uint8_t num, WStype_t type, uint8_t * payload, size_t length ); diff --git a/src/WebSocketHandler.cpp b/src/WebSocketHandler.cpp index 3da5639..f8daf2b 100644 --- a/src/WebSocketHandler.cpp +++ b/src/WebSocketHandler.cpp @@ -1,12 +1,17 @@ #include "WebSocketHandler.h" +extern volatile bool websocket_connected; + void webSocketEvent(uint8_t num, WStype_t type, uint8_t * payload, size_t length) { switch(type) { + case WStype_CONNECTED: + websocket_connected = true; Serial.printf("[%u] Cliente conectado\n", num); break; case WStype_DISCONNECTED: + websocket_connected = false; Serial.printf("[%u] Cliente desconectado\n", num); break; diff --git a/src/main.cpp b/src/main.cpp index 016cab5..279d258 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -30,6 +30,7 @@ IPAddress dns2(1,1,1,1); wifi_conf sta_esp32; WebSocketsServer webSocket(81); +volatile bool websocket_connected = false; // FreeRTOS TaskHandle_t ADCTaskHandle = NULL; @@ -65,7 +66,12 @@ void loop(){ void ADCTask(void *parameter){ for(;;) { - uint32_t count = adc1_3.read(samples_buffer); + + if (!websocket_connected) { + vTaskDelay(pdMS_TO_TICKS(100)); + continue; + } + const uint32_t count = adc1_3.read(samples_buffer); if (count > 0) { if (xRingbufferSend(bufferHandle, samples_buffer, count * sizeof(uint16_t), pdMS_TO_TICKS(1000)) != pdTRUE) { Serial.println("Failed to send message to ring buffer!");