Advertisement
Guest User

Untitled

a guest
Oct 4th, 2018
236
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.12 KB | None | 0 0
  1. #include <ESP8266WiFi.h>
  2. #include <ESP8266WebServer.h>
  3. #include <Timers.h>
  4. #include <DNSServer.h>
  5.  
  6. const char *ssid = "DataJugling";
  7. const char *password = "jugle123";
  8. const char *url = "dataserver.local";
  9.  
  10. DNSServer dnsServer;
  11. ESP8266WebServer server(80);
  12.  
  13. Timer ledTimer, aliveTimer;
  14. bool ledState = LOW;
  15.  
  16. void setup() {
  17.   pinMode(LED_BUILTIN, OUTPUT);
  18.   digitalWrite(LED_BUILTIN, HIGH);
  19.   ledTimer.begin(SECS(1));
  20.   aliveTimer.begin(SECS(2.5));
  21.  
  22.   WiFi.mode(WIFI_AP);
  23.   WiFi.softAP(ssid, password);
  24.  
  25.   dnsServer.setTTL(300);
  26.   dnsServer.setErrorReplyCode(DNSReplyCode::ServerFailure);
  27.   dnsServer.start(53, url, WiFi.softAPIP());
  28.  
  29.   server.on("/", []() {
  30.     server.send(200, "text/html", String("{\"state\": ") + String(ledState) + String("}"));
  31.   });
  32.  
  33.   server.begin();
  34. }
  35.  
  36. void loop() {
  37.   dnsServer.processNextRequest();
  38.   server.handleClient();
  39.  
  40.   if (ledTimer.available()) {
  41.     ledState = !ledState;
  42.     ledTimer.restart();
  43.   }
  44.  
  45.   if (aliveTimer.available()) {
  46.     digitalWrite(LED_BUILTIN, LOW);
  47.     delay(100);
  48.     digitalWrite(LED_BUILTIN, HIGH);
  49.     aliveTimer.restart();
  50.   }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement