Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //SERVER
- #include <ESP8266WiFi.h>
- #include <SoftwareSerial.h>
- WiFiServer server(80); // server
- IPAddress ip(192, 168, 1, 80); // IP
- IPAddress gateway(192,168,1,1); // WiFi router
- IPAddress subnet(255,255,255,0);
- char ssid[] = "************"; //SSID
- char pass[] = "************"; //Pass
- String readString;
- unsigned long clientTimer = 0;
- void setup() {
- Serial.begin(9600);
- server_start(0);
- delay(2000);
- Serial.println();
- }
- void loop() {
- String request;
- WiFiClient client = server.available();
- if (client) {
- if (client.connected()) {
- request = client.readStringUntil('\r'); // Legge il messaggio dal client
- Serial.println(request); // stampa in seriale
- if (request == "65 0 2 1 ff ff ff"){ // se il dato ricevuto
- for (int A = 0; A < 2; A++){ // allora :
- delay(400); //
- Serial.println("3"); // invia il dato alla APP Android
- }
- client.flush();
- }
- }
- //client.stop(); // disconnette
- clientTimer = millis();
- }
- while (Serial.available()) { // legge il dato in arrivo dalla APP Android
- delay(3);
- char c = Serial.read(); // Il dato ricevuto serve alla APP per
- readString += c; // svolgere un compito
- Serial.println(readString); // alla fine del compito rimanda la conferma del compito
- client.println(String(readString)); // invia il dato al Client
- readString = ""; // azzera la stringa
- }
- if (millis() - clientTimer > 30000) { // ferma e fa ripartire il server dopo 30 secondi
- WiFi.disconnect();
- delay(500);
- server_start(1);
- }
- }
- void server_start(byte restart) {
- WiFi.config(ip, gateway, subnet);
- WiFi.begin(ssid, pass);
- while (WiFi.status() != WL_CONNECTED) {
- delay(500);
- }
- server.begin();
- delay(500);
- clientTimer = millis();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement