In this tutorial we will explain you how to connect your Arduino to the IoT cloud through WiFi.
We will configure a setup composed from an Arduino and an ESP8266 WiFi module as an IoT Thing and make it ready to communicate with the AskSensors cloud.
Let's get started!
Step 1: AskSensors Setup
As the first step we have to setup an account on AskSensors IoT platform. AskSensors is an IoT platform providing communication between internet connected devices and the cloud. It offers a free trial account so you don’t even have to open your wallet to get started!
I recommend to follow this getting started guide. This will show you how to create and account and setup a new sensor to send data to.
Step 2: Prepare Hardware
In this demonstration we will need the following hardware:
- Arduino, I'm using an Arduino Uno
- ESP8266 WiFi Module, I'm using an ESP-01S
- Computer running Arduino IDE
- Arduino USB cable
- Wires and a breadboard
The photo above shows my prototype.
Step 3: Build the Hardware
The connection between Arduino and ESP8266 is as follows:
- ESP TX to Arduino pin 10
- ESP RX to Arduino pin 11
- ESP VCC to Arduino 3V3
- ESP CH_PD to Arduino 3V3
- ESP GND to Arduino GND
Step 4: Write the Code
Now let’s write the code to send a simple data from the Arduino to the AskSensors cloud through WiFi. The Arduino code communicates with the ESP8266 WiFi module using AT commands. Data will be sent to AskSensors over HTTP connection.
We will need to provide the 'Api Key In' that we got previously from AskSensors in order to send Data to the correct Sensor in the cloud.
Ready to Use code:
A ready to use code is provided in the AskSensors github page. Download the code and set the following variables to your setup (WiFi SSID, password and the 'Api Key In'):
String ssid = "............."; //Wifi SSID String password = "............."; //Wifi Password String apiKeyIn = "............."; // API Key
Step 5: Run the Code
Now it's time to connect your board.
- Connect the Arduino to your computer through USB cable.
- Open Arduino IDE and flash the code.
- Open a serial terminal. You should see you Arduino handles AT commands with the ESP8266 which performs the connection to WiFi networks and sending data to the AskSensors cloud over HTTP requests.
Step 6: Visualize Your Data
You can visualize your Data using graph. Go to your AskSensors dashboard and open the sensor that you are sending data to. AskSensors allows user to visualize your data in different type of graphs including Line, Gauge, scatter and Bar. The attached image show the case of Line graph.
You may need:
Others functionalities are available such as visualizing data in full graph Live stream, share your graph with external apps and users, export data in CSV files and more!
Step 7: Well Done!
I hope that this tutorial helped you!
Please refer to this list of tutorials if you need support about connecting hardware like Arduino, ESP8266, ESP32, Raspberry Pi to the cloud.