mirror of
https://github.com/HendrikRauh/dmx-interface.git
synced 2025-05-21 13:41:19 +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 <LittleFS.h>
|
||||||
#include "routes/config.h"
|
#include "routes/config.h"
|
||||||
#include "routes/networks.h"
|
#include "routes/networks.h"
|
||||||
|
#include "routes/status.h"
|
||||||
|
|
||||||
DMXESPSerial dmx1;
|
DMXESPSerial dmx1;
|
||||||
DMXESPSerial dmx2;
|
DMXESPSerial dmx2;
|
||||||
|
@ -309,6 +310,9 @@ void setup()
|
||||||
server.on("/networks", HTTP_GET, [](AsyncWebServerRequest *request)
|
server.on("/networks", HTTP_GET, [](AsyncWebServerRequest *request)
|
||||||
{ onGetNetworks(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)
|
server.onRequestBody([](AsyncWebServerRequest *request, uint8_t *data, size_t len, size_t index, size_t total)
|
||||||
{
|
{
|
||||||
if (request->url() == "/config" && request->method() == HTTP_PUT) {
|
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