Things
All checks were successful
Test compiling project / test (push) Successful in 1m41s

This commit is contained in:
2024-12-19 23:03:40 +01:00
parent 97b78e5b64
commit 7fe0eda3ba
7 changed files with 105 additions and 66 deletions

View File

@@ -0,0 +1,44 @@
#include "json_builder.h"
extern WaterData water_data;
extern DeviceTelemetry telemetry;
extern NetworkData wifi_data;
extern NetworkData ethernet_data;
extern SensorData shunt_data;
StaticJsonDocument<128> build_shunt_data_json(SensorData data) {
StaticJsonDocument<128> doc;
doc["bus_voltage"] = data.bus_voltage;
doc["shunt_voltage"] = data.shunt_voltage;
doc["current"] = data.shunt_current;
return doc;
}
StaticJsonDocument<128> build_water_data_json(WaterData data) {
StaticJsonDocument<128> doc;
doc["percentage"] = data.percentage;
doc["water_height"] = data.level;
doc["liters"] = data.liters;
return doc;
}
StaticJsonDocument<128> build_telemetry_json(DeviceTelemetry data) {
StaticJsonDocument<128> doc;
doc["uptime_seconds"] = data.uptime_seconds;
doc["heap_percent"] = data.heap_used_percent;
return doc;
}
StaticJsonDocument<128> build_network_json(NetworkData wired, NetworkData wireless) {
StaticJsonDocument<256> doc;
doc["wifi"]["ip"] = wireless.ip_address;
doc["wifi"]["rssi"] = wireless.rssi;
doc["wifi"]["link"] = wireless.link;
doc["wifi"]["ssid"] = wireless.network_name;
doc["ethernet"]["ip"] = wired.ip_address;
doc["ethernet"]["rssi"] = wired.rssi;
doc["ethernet"]["link"] = wired.link;
return doc;
}