From db0d98d425d8cd8347531925175d0a08cc2bb6fe Mon Sep 17 00:00:00 2001 From: rjwats Date: Thu, 21 May 2020 22:52:07 +0100 Subject: [PATCH] Extend Status (#121) * Added Sdk Version and ~heap fragmentation to system page * Add flash chip speed to status page Co-authored-by: kasedy --- interface/src/system/SystemStatusForm.tsx | 13 +++++++++---- interface/src/system/types.ts | 3 +++ lib/framework/SystemStatus.cpp | 2 ++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/interface/src/system/SystemStatusForm.tsx b/interface/src/system/SystemStatusForm.tsx index b2ccd9c..7c3f431 100644 --- a/interface/src/system/SystemStatusForm.tsx +++ b/interface/src/system/SystemStatusForm.tsx @@ -34,6 +34,11 @@ class SystemStatusForm extends Component { + const { data: { max_alloc_heap, free_heap } } = this.props; + return 100 - Math.round((max_alloc_heap / free_heap) * 100); + } + createListItems() { const { data } = this.props return ( @@ -44,7 +49,7 @@ class SystemStatusForm extends Component - + @@ -62,7 +67,7 @@ class SystemStatusForm extends Component - + @@ -71,7 +76,7 @@ class SystemStatusForm extends Component - + @@ -80,7 +85,7 @@ class SystemStatusForm extends Component - + diff --git a/interface/src/system/types.ts b/interface/src/system/types.ts index 7159839..323f947 100644 --- a/interface/src/system/types.ts +++ b/interface/src/system/types.ts @@ -1,10 +1,13 @@ export interface SystemStatus { esp_platform: string; + max_alloc_heap: number; cpu_freq_mhz: number; free_heap: number; sketch_size: number; free_sketch_space: number; + sdk_version: string; flash_chip_size: number; + flash_chip_speed: number; } export interface OTASettings { diff --git a/lib/framework/SystemStatus.cpp b/lib/framework/SystemStatus.cpp index 6784489..cda53c9 100644 --- a/lib/framework/SystemStatus.cpp +++ b/lib/framework/SystemStatus.cpp @@ -12,8 +12,10 @@ void SystemStatus::systemStatus(AsyncWebServerRequest* request) { JsonObject root = response->getRoot(); #ifdef ESP32 root["esp_platform"] = "esp32"; + root["max_alloc_heap"] = ESP.getMaxAllocHeap(); #elif defined(ESP8266) root["esp_platform"] = "esp8266"; + root["max_alloc_heap"] = ESP.getMaxFreeBlockSize(); #endif root["cpu_freq_mhz"] = ESP.getCpuFreqMHz(); root["free_heap"] = ESP.getFreeHeap();