Last active
May 20, 2018 17:15
-
-
Save idreamsi/363c6297fc7974f65e5816d105979789 to your computer and use it in GitHub Desktop.
Control ESP8266 Builtin LED via HTTP
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Control ESP8266 Builtin LED via HTTP | |
#include <Arduino.h> | |
#include <ESP8266WiFi.h> | |
#include <ESP8266WiFiMulti.h> | |
#include <ESP8266HTTPClient.h> | |
#define USE_SERIAL Serial | |
ESP8266WiFiMulti WiFiMulti; | |
void setup() { | |
pinMode(BUILTIN_LED, 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("YOUR_SSID", "YOUR_PASSWORD"); | |
} | |
void loop() { | |
// wait for WiFi connection | |
if((WiFiMulti.run() == WL_CONNECTED)) { | |
HTTPClient http; | |
USE_SERIAL.print("[HTTP] begin...\n"); | |
// configure traged server and url | |
//http.begin("https://192.168.1.12/test.html", "7a 9c f4 db 40 d3 62 5a 6e 21 bc 5c cc 66 c8 3e a1 45 59 38"); //HTTPS | |
http.begin("http://www.Your_website_Address.com/relay-status.txt"); //HTTP | |
USE_SERIAL.print("[HTTP] GET...\n"); | |
// start connection and send HTTP header | |
int httpCode = http.GET(); | |
// 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) { | |
String payload = http.getString(); | |
USE_SERIAL.println(payload); | |
if (payload=="1"){digitalWrite(BUILTIN_LED, LOW);} | |
if (payload=="0"){digitalWrite(BUILTIN_LED, HIGH);} | |
} | |
} else { | |
USE_SERIAL.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str()); | |
} | |
http.end(); | |
} | |
delay(2500);//2.5 seconds | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment