ESP8266 Tutorial - How To Control Anything From The Internet! - DIY Hacking
ESP8266 Tutorial - How To Control Anything From The Internet! - DIY Hacking
| DIY Hacking
In this ESP8266 tutorial, we are using anESP-01 module to control an LED over the internet.The ESP8266 is a very cheap yet really e ective
platform for communicating over the internet. It is also easy to use with an Arduino. After going through this ESP8266 tutorial, you will
have the know-how to control any electrical device through the internet from anywhere in the world!
Here,we will be using an USB to TTL converter to program the Esp8266 ESP-01module.And well be using theArduino IDE to develop the
web server to control an LED remotely. If you just bought your module, you can also refer my previous ESP8266 tutorial to see how to get
started with the ESP-01 Wi-Fi module. It also shows how you can con gure it and verify that there is communication established between
the ESP8266 and another device without using a USB to TTL converter.
Bill of Materials
1. Arduino board or USB to TTL converter
2. LED
3. ESP8266
4. Breadboard
5. Female to male and male to male jumpers
6. Lm117 3.3 voltage regulator
https://diyhacking.com/esp8266-tutorial/ 1/8
8/28/2017 ESP8266 Tutorial: How to Control Anything From the Internet! | DIY Hacking
https://diyhacking.com/esp8266-tutorial/ 2/8
8/28/2017 ESP8266 Tutorial: How to Control Anything From the Internet! | DIY Hacking
To connect the USB TO TTL converter without the DTR pin we have to use manual ashing. For this, we use two push buttons. Refer the
following diagram:
While uploading the code, press the ash button. Keep the ash button pressed while you click once on reset. You may now release the
ash button. The ESP8266 is now in ash mode! You will beable to upload the sketch now.
https://diyhacking.com/esp8266-tutorial/ 3/8
8/28/2017 ESP8266 Tutorial: How to Control Anything From the Internet! | DIY Hacking
Note: If you havent installed the ESP8266 boardsetup for Arduino, do that by following STEP 2 of this tutorial. And then continue with this
ESP8266 tutorial.
https://diyhacking.com/esp8266-tutorial/ 4/8
8/28/2017 ESP8266 Tutorial: How to Control Anything From the Internet! | DIY Hacking
Now copy thecode given below to the Arduino IDE and press theupload button. Change SSIDinto your wi access point, and change the
passwordto your wi password and compile.
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
void loop() {
// Check if a client has connected
WiFiClient client = server.available();
if (!client) {
Open the serial monitor and open the URL shown in your serial monitor through your web browser. Connect GPIO 2 of the ESP8266 to the
longer lead of the LED (+ve terminal). Now you can control the LED remotely throughthe internet!
https://diyhacking.com/esp8266-tutorial/ 5/8
8/28/2017 ESP8266 Tutorial: How to Control Anything From the Internet! | DIY Hacking
Click on the respective hyperlinks in your browser to toggle the LED ON and OFF.
https://diyhacking.com/esp8266-tutorial/ 6/8
8/28/2017 ESP8266 Tutorial: How to Control Anything From the Internet! | DIY Hacking
To do this, nd the IP address of your system either by using the ifcon g command on your terminal or go
to:http://www.whatsmyip.org/. Copy down your IP address. Now open your router setting and goto the Forwarding settings. Enter the
details for the Service Port and IP Address. The service port is the port number from your Arduino code (Service port: 80):
And the IP address is the one you noted down before. Leave the other settings as default. Now go to your browser and enter the address:
xxx.xxx.xx.xx:80. This should open up the page for controlling the LED. For a detailed tutorial on port forwarding, check this: tutorial.
Check out the demo video for this ESP8266 tutorial:
Esp8266 as Webserver
Thanks for reading this ESP8266 tutorial. Comments and Questions are welcome!
https://diyhacking.com/esp8266-tutorial/ 7/8
8/28/2017 ESP8266 Tutorial: How to Control Anything From the Internet! | DIY Hacking
https://diyhacking.com/esp8266-tutorial/ 8/8