Kiruso Kumar
Published © Apache-2.0

MQ-7 Carbon Monoxide Monitoring with ESP8266 and KiwisIoT

From Gas to Cloud” demonstrates how an MQ-7 sensor and NodeMCU ESP8266 can bring gas-sensing data to an IoT dashboard

IntermediateFull instructions provided1 hour11
MQ-7 Carbon Monoxide Monitoring with ESP8266 and KiwisIoT

Things used in this project

Hardware components

NodeMCU ESP8266 Breakout Board
NodeMCU ESP8266 Breakout Board
×1
Carbon Monoxide Sensor (MQ7)
DFRobot Carbon Monoxide Sensor (MQ7)
×1
USB-A to Mini-USB Cable
USB-A to Mini-USB Cable
×1
Jumper wires (generic)
Jumper wires (generic)
×1

Software apps and online services

Arduino IDE
Arduino IDE
KiwisIoT
Kiwistron KiwisIoT

Story

Read more

Code

MQ-7 gas sensor, NodeMCU ESP8266, and KiwisIoT

C/C++
#include <ESP8266WiFi.h>
#include <KiwisIoT.h>

const char* ssid = "YOUR_WIFI_NAME";
const char* pass = "YOUR_WIFI_PASSWORD";
const char* topic = "YOUR_KIWISIOT_TOPIC_ID";

#define MQ7_PIN A0

KiwisIoT kiwisiot(ssid, pass, topic);

unsigned long lastSend = 0;

void setup() {
  Serial.begin(115200);

  Serial.println("MQ-7 CO Monitoring");

  kiwisiot.begin();
}

void loop() {
  kiwisiot.run();

  if (millis() - lastSend >= 2000) {
    lastSend = millis();

    int sensorValue = analogRead(MQ7_PIN);

    Serial.print("MQ-7 Raw Value: ");
    Serial.println(sensorValue);

    // Send raw ADC reading to KiwisIoT Channel 0
    kiwisiot.send("0", String(sensorValue));
  }

  delay(1000);
}

Credits

Kiruso Kumar
18 projects • 1 follower

Comments