lukbe

ESP web led control

Apr 6th, 2018
221
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.91 KB | None | 0 0
  1. #include <ESP8266WiFi.h>
  2.  
  3. const char* ssid = "ssid";
  4. const char* password = "heslo";
  5.  
  6. ; //
  7. WiFiServer server(80);
  8.  
  9. #define led1 16
  10. #define led2 4
  11. #define led3 2
  12. #define led4 15
  13.  
  14. void setup() {
  15. Serial.begin(115200);
  16. delay(10);
  17. pinMode(led1, OUTPUT);
  18. pinMode(led2, OUTPUT);
  19. pinMode(led3, OUTPUT);
  20. pinMode(led4, OUTPUT);
  21. digitalWrite(led1, LOW);
  22. digitalWrite(led2, LOW);
  23. digitalWrite(led3, LOW);
  24. digitalWrite(led4, LOW);
  25.  
  26. // Connect to WiFi network
  27. Serial.println();
  28. Serial.println();
  29. Serial.print("Connecting to ");
  30. Serial.println(ssid);
  31.  
  32. WiFi.begin(ssid, password);
  33.  
  34. while (WiFi.status() != WL_CONNECTED) {
  35. delay(500);
  36. Serial.print(".");
  37. }
  38. Serial.println("");
  39. Serial.println("WiFi connected");
  40.  
  41. // Start the server
  42. server.begin();
  43. Serial.println("Server started");
  44.  
  45. // Print the IP address
  46. Serial.print("Use this URL to connect: ");
  47. Serial.print("http://");
  48. Serial.print(WiFi.localIP());
  49. Serial.println("/");
  50.  
  51. }
  52.  
  53. void loop() {
  54. // Check if a client has connected
  55. WiFiClient client = server.available();
  56. if (!client) {
  57. return;
  58. }
  59.  
  60. // Wait until the client sends some data
  61. Serial.println("new client");
  62. while (!client.available()) {
  63. delay(1);
  64. }
  65.  
  66. // Read the first line of the request
  67. String request = client.readStringUntil('\r');
  68. Serial.println(request);
  69. client.flush();
  70.  
  71. // Match the request
  72. if (request.indexOf("/light1on") > 0) {
  73. digitalWrite(led1, HIGH);
  74. }
  75. if (request.indexOf("/light1off") > 0) {
  76. digitalWrite(led1, LOW);
  77. }
  78. if (request.indexOf("/light2on") > 0) {
  79. digitalWrite(led2, HIGH);
  80. }
  81. if (request.indexOf("/light2off") > 0) {
  82. digitalWrite(led2, LOW);
  83. }
  84. if (request.indexOf("/light3on") > 0) {
  85. digitalWrite(led3, HIGH);
  86. }
  87. if (request.indexOf("/light3off") > 0) {
  88. digitalWrite(led3, LOW);
  89. }
  90. if (request.indexOf("/light4on") > 0) {
  91. digitalWrite(led4, HIGH);
  92. }
  93. if (request.indexOf("/light4off") > 0) {
  94. digitalWrite(led4, LOW);
  95. }
  96. // Set ledPin according to the request
  97. //digitalWrite(ledPin, value);
  98.  
  99. // Return the response
  100. client.println("HTTP/1.1 200 OK");
  101. client.println("Content-Type: text/html");
  102. client.println(""); // do not forget this one
  103. client.println("<!DOCTYPE HTML>");
  104. client.println("<html>");
  105. client.println("<head>");
  106. client.println("<meta name='apple-mobile-web-app-capable' content='yes' />");
  107. client.println("<meta name='apple-mobile-web-app-status-bar-style' content='black-translucent' />");
  108. client.println("</head>");
  109. client.println("<body bgcolor = \"#f7e6ec\">");
  110. client.println("<hr/><hr>");
  111. client.println("<h4><center> Ovladani LED </center></h4>");
  112. client.println("<hr/><hr>");
  113. client.println("<br><br>");
  114. client.println("<br><br>");
  115.  
  116. client.println("<center>");
  117. client.println("Device 1");
  118. client.println("<a href=\"/light1on\"\"><button>Turn On </button></a>");
  119. client.println("<a href=\"/light1off\"\"><button>Turn Off </button></a><br />");
  120. client.println("</center>");
  121. client.println("<br><br>");
  122.  
  123. client.println("<center>");
  124. client.println("Device 2");
  125. client.println("<a href=\"/light2on\"\"><button>Turn On </button></a>");
  126. client.println("<a href=\"/light2off\"\"><button>Turn Off </button></a><br />");
  127. client.println("</center>");
  128. client.println("<br><br>");
  129.  
  130. client.println("<center>");
  131. client.println("Device 3");
  132. client.println("<a href=\"/light3on\"\"><button>Turn On </button></a>");
  133. client.println("<a href=\"/light3off\"\"><button>Turn Off </button></a><br />");
  134. client.println("</center>");
  135. client.println("<br><br>");
  136.  
  137. client.println("<center>");
  138. client.println("Device 4");
  139. client.println("<a href=\"/light4on\"\"><button>Turn On </button></a>");
  140. client.println("<a href=\"/light4off\"\"><button>Turn Off </button></a><br />");
  141. client.println("</center>");
  142. client.println("<br><br>");
  143.  
  144. client.println("<center>");
  145. client.println("<table border=\"5\">");
  146. client.println("<tr>");
  147. if (digitalRead(led1))
  148. {
  149. client.print("<td>Light 1 is ON</td>");
  150. }
  151. else
  152. {
  153. client.print("<td>Light 1 is OFF</td>");
  154. }
  155. client.println("<br />");
  156.  
  157. if (digitalRead(led2))
  158. {
  159. client.print("<td>Light 2 is ON</td>");
  160. }
  161. else
  162. {
  163. client.print("<td>Light 2 is OFF</td>");
  164. }
  165. client.println("</tr>");
  166. client.println("<tr>");
  167.  
  168. if (digitalRead(led3))
  169. {
  170. client.print("<td>Light 3 is ON</td>");
  171. }
  172. else
  173. {
  174. client.print("<td>Light 3 is OFF</td>");
  175. }
  176.  
  177. if (digitalRead(led4))
  178. {
  179. client.print("<td>Light 4 is ON</td>");
  180. }
  181. else
  182. {
  183. client.print("<td>Light 4 is OFF</td>");
  184. }
  185. client.println("</tr>");
  186. client.println("</table>");
  187. client.println("</center>");
  188. client.println("</html>");
  189. delay(1);
  190. Serial.println("Client disonnected");
  191. Serial.println("");
  192. }
Advertisement
Add Comment
Please, Sign In to add comment