Sensor

Sensor by Metriful | Indoor environment monitoring | Documentation and code samples

Internet of Things (IoT)PythonMIT

Abstract

Sensor is an open-source Internet of Things (IoT) project. Sensor by Metriful | Indoor environment monitoring | Documentation and code samples. The Metriful MS430 is a low power, high accuracy, smart sensor cluster for indoor environment monitoring. It operates via a simple I2C-compatible interface and measures eighteen variables including air quality, light and sound levels. It is built using Python, Arduino, Raspberry Pi. The complete source code is publicly available on GitHub under the MIT License, making it a useful reference for students building an Internet of Things (IoT) mini project or final-year project.

1. Introduction

The Metriful MS430 is a low power, high accuracy, smart sensor cluster for indoor environment monitoring. It operates via a simple I2C-compatible interface and measures eighteen variables including air quality, light and sound levels.

This repository provides instructions and software examples for running the MS430 with Raspberry Pi (0/2/3/4/Pico), Arduino, ESP8266 and ESP32 host systems.

Code examples include interfaces to IFTTT, Home Assistant, ESPHome and IoT cloud platforms, as well as real-time graph software, web servers and interrupt detection.

2. Objective

Sensor by Metriful | Indoor environment monitoring | Documentation and code samples

This project demonstrates how Python, Arduino, Raspberry Pi can be applied to a real-world Internet of Things (IoT) problem.

4. Technology Stack

PythonArduinoRaspberry Pi
  • Handling precautions
  • Arduino Nano 33 IoT, MKR WiFi 1010, Uno, Nano
  • Raspberry Pi 0/2/3/4
  • Raspberry Pi Pico
  • Particle sensor

5. System Requirements

General requirements for this technology stack — check the README for exact versions.

  • Python 3.8 or later
  • pip / virtualenv for dependencies
  • VS Code, PyCharm or Jupyter Notebook
  • Git (to clone the repository)

6. Installation & Setup

git clone https://github.com/metriful/sensor.git
cd sensor
  1. Handling precautions
  2. Arduino Nano 33 IoT, MKR WiFi 1010, Uno, Nano
  3. Raspberry Pi 0/2/3/4
  4. Raspberry Pi Pico
  5. Particle sensor
  6. IoT cloud setup
  7. Graph web server
  8. IFTTT example
sudo apt-get update
	sudo apt install i2c-tools python3-smbus python3-rpi.gpio
	pip3 install jinja2 psutil pyserial requests
sudo apt remove python3-rpi.gpio
	sudo apt update
	sudo apt install python3-rpi-lgpio
sudo raspi-config
sudo i2cdetect -y 1

Full setup instructions are in the project README.

7. Future Enhancements

Suggested extensions you can add to make this your own project.

  • Add a mobile dashboard using Blynk or Firebase
  • Store readings in a cloud database for history charts
  • Add alerts via SMS / Telegram when thresholds are crossed

8. Viva / Review Questions

Common questions examiners ask for projects in this domain.

  1. Which microcontroller / board and sensors are used and why?
  2. How does the device send data (Wi-Fi, MQTT, HTTP, Bluetooth)?
  3. Where is the sensor data stored and visualised?
  4. How is power consumption managed?
  5. How would you secure the device and its communication?

9. Source Code & License

This project is developed by metriful and published on GitHub under the MIT License. Please follow the license terms and credit the original author when you use or modify this code.

Want to build this as your internship project?

Work on an Internet of Things (IoT) project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.

Apply for Internet of Things (IoT) Internship