mirror of
https://github.com/HendrikRauh/dmx-interface.git
synced 2025-05-18 21:55:34 +00:00
Merge branch 'HendrikRauh/issue33' into merge-MAIN-statusUI
This commit is contained in:
commit
b56a106c94
3 changed files with 54 additions and 0 deletions
|
@ -17,6 +17,7 @@
|
|||
#include <LittleFS.h>
|
||||
#include "routes/config.h"
|
||||
#include "routes/networks.h"
|
||||
#include "routes/status.h"
|
||||
|
||||
DMXESPSerial dmx1;
|
||||
DMXESPSerial dmx2;
|
||||
|
@ -309,6 +310,9 @@ void setup()
|
|||
server.on("/networks", HTTP_GET, [](AsyncWebServerRequest *request)
|
||||
{ onGetNetworks(request); });
|
||||
|
||||
server.on("/status", HTTP_GET, [](AsyncWebServerRequest *request)
|
||||
{ onGetStatus(request); });
|
||||
|
||||
server.onRequestBody([](AsyncWebServerRequest *request, uint8_t *data, size_t len, size_t index, size_t total)
|
||||
{
|
||||
if (request->url() == "/config" && request->method() == HTTP_PUT) {
|
||||
|
|
45
src/routes/status.cpp
Normal file
45
src/routes/status.cpp
Normal file
|
@ -0,0 +1,45 @@
|
|||
#include "status.h"
|
||||
|
||||
float getTemperature()
|
||||
{
|
||||
float tempC = -1.0f;
|
||||
temp_sensor_read_celsius(&tempC);
|
||||
return tempC;
|
||||
}
|
||||
|
||||
int8_t getWiFiStrength()
|
||||
{
|
||||
try
|
||||
{
|
||||
return WiFi.RSSI();
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
void onGetStatus(AsyncWebServerRequest *request)
|
||||
{
|
||||
JsonDocument doc;
|
||||
|
||||
doc["uptime"] = millis();
|
||||
doc["chip"]["model"] = ESP.getChipModel();
|
||||
doc["chip"]["mac"] = ESP.getEfuseMac();
|
||||
doc["chip"]["revision"] = ESP.getChipRevision();
|
||||
doc["chip"]["cpuFreqMHz"] = ESP.getCpuFreqMHz();
|
||||
doc["chip"]["cycleCount"] = ESP.getCycleCount();
|
||||
doc["chip"]["tempC"] = getTemperature();
|
||||
doc["sdkVersion"] = ESP.getSdkVersion();
|
||||
doc["sketch"]["size"] = ESP.getSketchSize();
|
||||
doc["sketch"]["md5"] = ESP.getSketchMD5();
|
||||
doc["heap"]["free"] = ESP.getFreeHeap();
|
||||
doc["heap"]["total"] = ESP.getHeapSize();
|
||||
doc["psram"]["free"] = ESP.getFreePsram();
|
||||
doc["psram"]["total"] = ESP.getPsramSize();
|
||||
doc["connection"]["signalStrength"] = getWiFiStrength();
|
||||
|
||||
String jsonString;
|
||||
serializeJson(doc, jsonString);
|
||||
request->send(200, "application/json", jsonString);
|
||||
}
|
5
src/routes/status.h
Normal file
5
src/routes/status.h
Normal file
|
@ -0,0 +1,5 @@
|
|||
#include <AsyncWebServer_ESP32_W5500.h>
|
||||
#include <ArduinoJson.h>
|
||||
#include <driver/temp_sensor.h>
|
||||
|
||||
void onGetStatus(AsyncWebServerRequest *request);
|
Loading…
Add table
Reference in a new issue