NodeMCU Data Logger to save Temperature and Pressure on Thinger.io Cloud Platform

NodeMCU ESP8266 Data Logger on Thinger.io Cloud Platform

We previously used NodeMCU to log temperature data in the Google sheet. Now here we are going to send data to Thinger.io IoT cloud and display it in an attractive graphical format. A BMP180 sensor is interfaced with NodeMCU ESP8266 to collect the temperature, humidity, and altitude data, which will be sent to the Thinger.io platform. In this tutorial, we will learn how to manage different features of the thinger.io platform, like devices, endpoints, data buckets, or access tokens.

Components Required

  • NodeMCU ESP8266
  • BMP180 Pressure sensor
  • Jumper Wires
  • Breadboard

Circuit Diagram

Circuit Diagram for this ESP8266 data logger is very straightforward, here only the BMP180 sensor is interfaced with NodeMCU.

ESP8266 Data Logger Circuit Diagram

The BMP180 sensor uses the I2C communication protocol. So you need to connect the SCL and SDA pins of BMP180 to SCL and SDA pins (D1 and D2) of NodeMCU. Also, connect the VIN and GND pin of BMP180 to 3.3V and GND of NodeMCU. Do not connect the Sensor directly to 5V because it can damage the Sensor permanently.

ESP8266 Data Logger Setup

To learn more about NodeMCU, check various IoT projects based on NodeMCU ESP8266.

Thinger.io Setup for ESP8266 Temperature Logger

Thinger.io is an Open-Source Platform for the Internet of Things. It provides every needed tool to prototype, scale, and manage connected products in a very simple way. Thinger.io provides three essential tools i.e. Data Bucks, Dashboard, and Endpoint to work with devices data; these tools can be used to visualize the device data and extend the interoperability of the devices.

Data Bucks: Data Bucks tool can be used to store device data in a scalable way, programming different sampling intervals or recording events raised by devices.

Dashboard: Dashboard tool has some Panels with customizable widgets that can be created within minutes using drag and drop technology to visualize the real-time and stored data.

Endpoints: Endpoints can be used to integrate the platform with other services like IFTTT, custom Web Services, emails, or call other devices.

In this ESP8266 logging, we are going to explore these tools.

To send data to Thinger.io, you need to create a free account on the Thinger.io platform and follow the below steps to connect your device.

Step 1: The first step is to create a new device. To create a new device, click on Devices in the menu tab and then click on the Add Device button.

Thinger io

Then fill the form with the device ID, description, and Credentials or generate random credentials for your device and click on ‘Add Device.’

Thinger.io Device Setup

That’s all; your device is ready to connect. In the next step, we will program the NodeMCU to send the data to the Thinger.io platform.

IFTTT Setup for NodeMCU Data Logger

Here we are using IFTTT to send Email warnings when the temperature goes beyond a limit. IFTTT (If This Then That) is a web-based service by which we can create chains of conditional statements, called applets. Using these applets, we can send Emails, Twitter, Facebook notifications.

To use the IFTTT, login to the IFTTT account if you already have one or create an account.

Now search for ‘Webhooks’ and click on the Webhooks in Services section.

IFTTT Setup

Then, in the Webhooks window, click on ‘Documentation’ in the upper right corner to get the private key. Copy this key, this key will be used while creating Endpoint in Thinger.io.

IFTTT Webhooks

After that, create an applet using Webhooks and Email services. To create an applet, click on your profile and then click on ‘Create.

Now in the next window, click on the ‘This’ icon. Now search for Webhooks in the search section and click on ‘Webhooks.’