Wednesday, 1 June 2016

Testing Your Internet Speed using ESP8266 WiFi module



In this world of connected devices, all our appliances need a proper internet connection all the time. But their is always some fluctuations in the speed or connection of the internet due to some issues. Sometimes its okay but this problem of fluctuation annoys at time of payment gate way, or submitting your college fees. After filling the form, when you press enter button, the scenario is like this


so you need to fill that form again and repeat the procedure. But still this don't happens all the time but I faced this problem so I have tried to make a small solution of this.

           I will be constantly measuring my internet connection's speed so that I come to know
           that my connection is alive or not. Hence at time of pressing submit button after filling
          any form, I will check the status of my internet speed and if the speed is great at that time
          I will submit my form so that I need not to repeat the same procedure again.


Now lets see how can we make a internet speed-o-meter using ESP8266. ESP8266 a great great great module to start with IoT. Cheapest Smallest yet fastest module and again easy to be used. In the era of Internet Of Things, demand of this module has increased a lot. With this, number of projects has also increased using this module. We can do almost anything we can think of using this WiFi module. So I have also made one simple yet useful project using this module along with my Arduino MEGA board.

With the help of only single AT command, you can get your internet speed. Hence this project is really easy to make. The speed you will get is nothing but the response time in milliseconds taken by you internet connection. After that, we can manipulate or map the data into different categorizes like Fast , Normal , Slow.

First I will explain you this concept on your laptop only and than we will implement this logic on our ESP8266 board. On you windows PC, open Command Prompt. Or simply press Windows button and type CMD.

After opening that window just type following statement, and press the enter button

ping -t www.google.com

Result of this will be as follows,


So we are just pinging the server of Google and observing the response time in milliseconds. That's what we gonna do in our project, just pinging the server and mapping this time into suitable speed of our connection. Now lets move towards the hardware part.


Connections

Connection of this module is with Arduino MEGA board is shown below,




This is simple connection in which I have connected ESP8266 WiFi  Rx Tx pins to Serial 1 of my MEGA Board. If you have UNO board, you can go for Software Serial connections.An d I have connected 3 LEDs for indicating status of our internet speed. So this is all on the hardware side, now lets movie towards the code.



Code

As we know that we need to just ping google.com continuosly as to monitor its speed. Their is an AT command for pinging whose syntax is,

AT+PING="www.google.com" 

This command will ping google.com you can ping any other website also by just editing the name of the website in above AT command. So we will just send this AT command through our WiFi module and in response we will get the time in milliseconds which we will be converting into speed by simple calculations.

I have attached the link of the code below, so you can definitely download it from there.I have also made a video tutorial on this, so have a look if you haven't understood this yet.




I have also recorded this tutorial in Hindi so in case you are more familiar with Hindi have a look over this video.






Code :- https://github.com/techiesms/Internet-Speed-O-Meter/blob/master/Internet_Speed-o-meter.ino



#techiesms
explore | learn | share






2 comments:

  1. I got lots of information from this site.thanks

    fastest internet connections

    ReplyDelete
  2. hello , i have use one site. it gives appropriate|accurate
    web download and move speed in an one time.
    its to a great degree profitable website for checking our web acceleration
    i venerate this web site|this great site..
    http://www.speedtest.us.com/

    ReplyDelete