//Libraries #include //https://github.com/espressif/arduino-esp32/blob/master/libraries/WiFi/src/WiFi.h //Constants //#define LED 4 #define GREEN X #define RED X #define BLUE X //Parameters String request ; char* ssid = "XXX"; char* password = "XXX"; String nom = "ESP32"; unsigned int counter = 0; //Objects WiFiServer server(80); WiFiClient client; void setup() { //Init Serial USB Serial.begin(9600); Serial.println(F("Initialize System")); //Init ESP32Wifi Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); // Connect to Wifi network. while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print(F(".")); } server.begin(); Serial.println(); Serial.println(F("ESP32Wifi initialized")); Serial.print(F("IP Address: ")); Serial.println(WiFi.localIP()); //pinMode(LED, OUTPUT); pinMode(GREEN, OUTPUT); pinMode(RED, OUTPUT); pinMode(BLUE, OUTPUT); pinMode(0, INPUT); } void loop() { WiFiClient client = server.available(); if (client) { while (client.connected()) { Serial.print("Client connected :"); Serial.println(client.remoteIP()); counter++; if (client.available()) { String request = client.readStringUntil('\r'); Serial.println(request); handleRequest(request); } webpage(client);//Return webpage break; } client.stop(); } } void handleRequest(String request) { /* function handleRequest */ ////Handle web client request String pwmCmd; //Digital Ouputs if (request.indexOf("/dig0on") > 0) { Serial.println("Set LED pin HIGH"); //digitalWrite(LED, HIGH); digitalWrite(GREEN, HIGH); digitalWrite(RED, HIGH); digitalWrite(BLUE, HIGH); } if (request.indexOf("/dig0off") > 0) { Serial.println("Set LED pin LOW"); //digitalWrite(LED, LOW); digitalWrite(GREEN, LOW); digitalWrite(RED, LOW); digitalWrite(BLUE, LOW); } } void webpage(WiFiClient client) { /* function webpage */ ////Send webpage to client client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println(""); client.println(""); client.println(""); client.println(""); client.println(" AranaCorp "); client.println(""); client.println(""); client.println(""); client.println(""); client.println(""); client.println(" "); client.println("

"); client.println("

AranaCorp - " + nom + " Web Controller

"); client.println("

"); client.println("

"); client.println("

Analog Inputs/Ouputs

"); client.println("
Pin G0"); client.println("
"); client.println("
Counter"); client.println("
"); client.println("

Digital Pin states

"); client.println(" LED Pin"); client.println(" "); client.println(" "); client.println("
"); client.println("
"); client.println(""); client.println(""); if (digitalRead(LED)) { client.println(" "); } else { client.println(" "); } client.println(""); client.println("
LED pin is HIGHLED pin is LOW
"); client.println(); }