#include #include #include #include #define USE_SERIAL Serial ESP8266WiFiMulti WiFiMulti; int sent; void setup() { // Init LED pinMode(LED_BUILTIN, OUTPUT); USE_SERIAL.begin(115200); // USE_SERIAL.setDebugOutput(true); USE_SERIAL.println(); USE_SERIAL.println(); USE_SERIAL.println(); for(uint8_t t = 4; t > 0; t--) { USE_SERIAL.printf("[SETUP] WAIT %d...\n", t); USE_SERIAL.flush(); delay(1000); } WiFi.mode(WIFI_STA); WiFiMulti.addAP("WLAN", "WLANPASS"); } void loop() { // wait for WiFi connection int wifistatus = WiFiMulti.run() ; if(wifistatus != WL_CONNECTED) { // Not connected USE_SERIAL.printf("Wifi not connected\n"); USE_SERIAL.printf("Setting sent=0\n"); sent = 0; digitalWrite(LED_BUILTIN, LOW); delay(20); digitalWrite(LED_BUILTIN, HIGH); delay(1000); } else if (wifistatus == WL_CONNECTED && sent == 0) { // Connected but not sent yet digitalWrite(LED_BUILTIN, LOW); HTTPClient http; USE_SERIAL.print("[HTTP] begin...\n"); // configure traged server and url http.begin("http://lxluser:lxlpass@192.168.0.78/dev/sps/io/ESP_Motorrad/Pulse"); USE_SERIAL.print("[HTTP] GET...\n"); // start connection and send HTTP header int httpCode = http.GET(); // Flashing to indicate that request was sent digitalWrite(LED_BUILTIN, LOW); delay(20); digitalWrite(LED_BUILTIN, HIGH); delay(20); digitalWrite(LED_BUILTIN, LOW); delay(20); digitalWrite(LED_BUILTIN, HIGH); delay(20); digitalWrite(LED_BUILTIN, LOW); delay(20); digitalWrite(LED_BUILTIN, HIGH); delay(20); digitalWrite(LED_BUILTIN, LOW); // httpCode will be negative on error if(httpCode > 0) { // HTTP header has been send and Server response header has been handled USE_SERIAL.printf("[HTTP] GET... code: %d\n", httpCode); // file found at server if(httpCode == HTTP_CODE_OK) { USE_SERIAL.printf("Setting sent=1\n"); sent = 1; String payload = http.getString(); USE_SERIAL.println(payload); } } else { USE_SERIAL.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str()); } http.end(); delay(10000); } else { // Connected and already sent digitalWrite(LED_BUILTIN, LOW); } }