diff --git a/platformio.ini b/platformio.ini index 8b4c1c2..2109b59 100644 --- a/platformio.ini +++ b/platformio.ini @@ -14,6 +14,7 @@ board = esp32dev framework = arduino lib_deps = WebSockets +;board_build.f_cpu = 160000000L ;build_type = debug ; upload via OTA diff --git a/src/core/diagnostics_state.cpp b/src/core/diagnostics_state.cpp index 6310461..bed3b76 100644 --- a/src/core/diagnostics_state.cpp +++ b/src/core/diagnostics_state.cpp @@ -13,13 +13,6 @@ void DiagnosticsState::update() current.cpuFrequency = ESP.getCpuFreqMHz(); - //history[historyIndex] = current; - // - //historyIndex++; - //if(historyIndex >= DIAGNOSTIC_HISTORY_SIZE) - //{ - // historyIndex = 0; - //} Serial.print("#update: "); Serial.println(current.freeHeap); Serial.println("Calling current from update"); @@ -31,19 +24,14 @@ void DiagnosticsState::update() DiagnosticSample DiagnosticsState::getCurrent() { + DiagnosticSample sample; + sample.timestamp = current.timestamp; + sample.freeHeap = current.freeHeap; + sample.minimumFreeHeap = current.minimumFreeHeap; + sample.cpuFrequency = current.cpuFrequency; + Serial.print("#getCurrent: "); - Serial.println(current.freeHeap); - Serial.println(current.timestamp); - return current; + Serial.println(sample.freeHeap); + Serial.println(sample.timestamp); + return sample; } - - - -//DiagnosticSample DiagnosticsState::getHistory(uint8_t index) -//{ -// if(index >= DIAGNOSTIC_HISTORY_SIZE) -// { -// return current; -// } -// return history[index]; -//} diff --git a/src/core/diagnostics_state.h b/src/core/diagnostics_state.h index f808e42..8fe5b42 100644 --- a/src/core/diagnostics_state.h +++ b/src/core/diagnostics_state.h @@ -28,7 +28,7 @@ public: private: - DiagnosticSample current; + volatile DiagnosticSample current; //DiagnosticSample history[DIAGNOSTIC_HISTORY_SIZE]; //uint8_t historyIndex = 0; }; diff --git a/src/services/web_service.h b/src/services/web_service.h index 841751e..8182614 100644 --- a/src/services/web_service.h +++ b/src/services/web_service.h @@ -22,8 +22,8 @@ private: WebServer server; WebSocketsServer webSocket; - DashboardState dashboardState; - DiagnosticsState diagnosticsState; + DashboardState& dashboardState; + DiagnosticsState& diagnosticsState; void handleWebSocketMessage(uint8_t clientNum, uint8_t *payload, size_t length); void broadcastState();