Hi guys, I am making an rpm encoder and having trouble refreshing the web page automatically. I tried using <meta http-equiv="refresh" content="5">
but it does not do anything at all. Here's my code, any help would be greatly appreciated.
#include "WiFi.h"
#include "AsyncTCP.h"
#include "ESPAsyncWebServer.h"
int Sensor = 21; // Declaration of the sensor input pin
unsigned int pulseCount;
bool lastState;
unsigned int lastTime;
float rpm;
String rpm_string;
const char* ssid = "ssidtest";
const char* password = "12345678";
AsyncWebServer server(81);
void setup(){
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi..");
}
Serial.println(WiFi.localIP());
server.on("/machine1", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(200, "text/plain",rpm_string);
});
server.begin();
}
void loop()
{
bool curState = digitalRead(Sensor);
if (curState != lastState)
{
++pulseCount;
lastState = curState;
}
if ((unsigned long)millis() - lastTime >= 2000)
{
rpm = (pulseCount * (60000.f / ((unsigned long)millis() - lastTime)))/4;
pulseCount = 0;
lastTime = (unsigned long)millis();
}
Serial.print("RPM: ");
Serial.println(rpm);
rpm_string = String(rpm,2) ;
}