diff --git a/src/node/Fermenter/http.cpp b/src/node/Fermenter/http.cpp index 9cfed2a..4d081cd 100644 --- a/src/node/Fermenter/http.cpp +++ b/src/node/Fermenter/http.cpp @@ -5,6 +5,17 @@ #include "pid.h" #include "Program.h" +void httpHistory(AsyncWebServerRequest* request) { + AsyncResponseStream* stream = request->beginResponseStream("text/plain"); + constexpr int size = std::size(history); + const History* h = history; + for (int i = 0; i < size; i++) { + stream->printf("%d/%d/%d\n", h->target, h->temperature, h->heater); + h = (h - history + size - 1) % size + history; + } + request->send(stream); +} + void httpStatus(AsyncWebServerRequest* request) { JsonDocument json; json["pid"]["p"] = pid.p; @@ -130,22 +141,15 @@ void httpProgramResume(AsyncWebServerRequest* request) { } void httpSetup2() { + server.on("/history", httpHistory); server.on("/status", httpStatus); - server.on("/status/", httpStatus); server.on("/target/add", httpTargetAdd); - server.on("/target/add/", httpTargetAdd); server.on("/config/set", httpConfigSet); - server.on("/config/set/", httpConfigSet); server.on("/program/load", httpProgramLoad); - server.on("/program/load/", httpProgramLoad); server.on("/program/start", httpProgramStart); - server.on("/program/start/", httpProgramStart); server.on("/program/stop", httpProgramStop); - server.on("/program/stop/", httpProgramStop); server.on("/program/pause", httpProgramPause); - server.on("/program/pause/", httpProgramPause); server.on("/program/resume", httpProgramResume); - server.on("/program/resume/", httpProgramResume); } #endif diff --git a/src/node/Fermenter/pid.cpp b/src/node/Fermenter/pid.cpp index b8ae192..d9a34fa 100644 --- a/src/node/Fermenter/pid.cpp +++ b/src/node/Fermenter/pid.cpp @@ -1,19 +1,8 @@ -#include #ifdef NODE_FERMENTER #include "pid.h" #include "config.h" -struct History { - - int16_t target; - - int16_t temperature; - - uint8_t heater; - -}; - History history[3 * 60]; History* historyPtr = history; diff --git a/src/node/Fermenter/pid.h b/src/node/Fermenter/pid.h index 99ad453..2c8be2a 100644 --- a/src/node/Fermenter/pid.h +++ b/src/node/Fermenter/pid.h @@ -7,6 +7,20 @@ #define HEATER_POWER_W 30 +struct History { + + int16_t target; + + int16_t temperature; + + uint8_t heater; + +}; + +extern History history[3 * 60]; + +extern History* historyPtr; + extern DS18B20 ds18b20; extern DS18B20Sensor temperature;