Web Sever Test Code
Web Sever Test Code
Rui Santos
*********/
#include "WiFi.h"
#include "ESPAsyncWebServer.h"
#include "SPIFFS.h"
#include <Tone32.h>
#define BUZZER_PIN 34
String ledState;
AsyncWebServer server(80);
int Speed;
// Motor A
// Motor B
int valueString;
const int resolution = 8; //resolution of pulse width mod 8bit = 0-255 that we can vary the value
int greenled = 4;
Serial.println(var);
if(var == "STATE"){
if(digitalRead(ledPin)){
ledState = "ON";
else{
ledState = "OFF";
Serial.print(ledState);
return ledState;
return String();
void setup(){
pinMode(greenled, OUTPUT);
pinMode(redled, OUTPUT);
pinMode(blueled, OUTPUT);
pinMode(yellowled, OUTPUT);
pinMode(motor1Pin1, OUTPUT);
pinMode(motor1Pin2, OUTPUT);
pinMode(enable1Pin, OUTPUT);
pinMode(motor2Pin1, OUTPUT);
pinMode(motor2Pin2, OUTPUT);
pinMode(enable2Pin, OUTPUT);
pinMode(enable3Pin, OUTPUT);
pinMode(enable4Pin, OUTPUT);
pinMode(enable5Pin, OUTPUT);
pinMode(enable6Pin, OUTPUT);
ledcAttachPin(enable1Pin, pwmChannel1);
ledcAttachPin(enable3Pin, pwmChannel3);
ledcAttachPin(enable5Pin, pwmChannel5);
Serial.begin(115200);
pinMode(ledPin, OUTPUT);
// Initialize SPIFFS
if(!SPIFFS.begin(true)){
return;
// Connect to Wi-Fi
WiFi.begin(ssid, password);
delay(1000);
Serial.println("Connecting to WiFi..");
Serial.println(WiFi.localIP());
});
});
digitalWrite(ledPin, HIGH);
MotorForward(Speed);
Redled(Speed);
});
digitalWrite(ledPin, HIGH);
MotorBackward(Speed);
Blueled(Speed);
});
digitalWrite(ledPin, HIGH);
MotorRight(Speed);
Yellowled(Speed);
});
digitalWrite(ledPin, HIGH);
Serial.println("Motor Left");
MotorLeft(Speed);
Greenled(Speed);
});
server.on("/HORN", HTTP_GET, [](AsyncWebServerRequest *request){
Serial.println("HORN");
});
digitalWrite(ledPin, LOW);
MotorStop();
Stopled();
});
if(request->hasParam("Speed")){
Speed = speedValue.toInt();
});
// Start server
server.begin();
void loop(){
}
ledcWrite(pwmChannel1, Speed);
ledcWrite(pwmChannel2, Speed);
Serial.println("Moving Forward");
Serial.println(Speed);
digitalWrite(motor1Pin1, LOW);
digitalWrite(motor1Pin2, HIGH);
digitalWrite(motor2Pin2, LOW);
delay(200);
ledcWrite(pwmChannel1, Speed);
ledcWrite(pwmChannel2, Speed);
Serial.println("Moving Backwards");
Serial.println(Speed);
digitalWrite(motor1Pin1, HIGH);
digitalWrite(motor1Pin2, LOW);
digitalWrite(motor2Pin1, LOW);
digitalWrite(motor2Pin2, HIGH);
delay(200);
}
ledcWrite(pwmChannel1, Speed);
ledcWrite(pwmChannel2, Speed);
Serial.println("Moving Left");
Serial.println(Speed);
digitalWrite(motor1Pin1,HIGH);
digitalWrite(motor1Pin2,LOW);
digitalWrite(motor2Pin1,LOW);
digitalWrite(motor2Pin2,LOW);
delay(200);
ledcWrite(pwmChannel1, Speed);
ledcWrite(pwmChannel2, Speed);
Serial.println("Moving Right");
Serial.println(Speed);
digitalWrite(motor1Pin1,LOW);
digitalWrite(motor1Pin2,LOW);
digitalWrite(motor2Pin1,HIGH);
digitalWrite(motor2Pin2,LOW);
delay(200);
void MotorStop()
{
ledcWrite(pwmChannel1, Speed);
ledcWrite(pwmChannel2, Speed);
Serial.println("Motor stopped");
Serial.println(Speed);
digitalWrite(motor1Pin1, LOW);
digitalWrite(motor1Pin2, LOW);
digitalWrite(motor2Pin1, LOW);
digitalWrite(motor2Pin2, LOW);
delay(200);
ledcWrite(pwmChannel3, Speed);
Serial.println(Speed);
digitalWrite(redled, HIGH);
digitalWrite(greenled, LOW);
digitalWrite(yellowled, LOW);
digitalWrite(blueled, LOW);
delay(200);
ledcWrite(pwmChannel4, Speed);
Serial.println(Speed);
digitalWrite(redled, LOW);
digitalWrite(greenled, HIGH);
digitalWrite(yellowled, LOW);
digitalWrite(blueled, LOW);
delay(200);
ledcWrite(pwmChannel5, Speed);
Serial.println(Speed);
digitalWrite(redled, LOW);
digitalWrite(greenled, LOW);
digitalWrite(yellowled, LOW);
digitalWrite(blueled, HIGH);
delay(200);
ledcWrite(pwmChannel6, Speed);
Serial.println(Speed);
digitalWrite(redled, LOW);
digitalWrite(greenled, LOW);
digitalWrite(yellowled, HIGH);
digitalWrite(blueled, LOW);
delay(200);
void Stopled()
{
ledcWrite(pwmChannel3, Speed);
ledcWrite(pwmChannel4, Speed);
ledcWrite(pwmChannel5, Speed);
ledcWrite(pwmChannel6, Speed);
Serial.println(Speed);
digitalWrite(redled, LOW);
digitalWrite(greenled, LOW);
digitalWrite(yellowled, LOW);
digitalWrite(blueled, LOW);
delay(200);
delay(200);