Skip to content

Project Overview

thra6614 edited this page May 2, 2024 · 13 revisions

Overview

The IoT Sensor Data Monitoring and Visualization System project is a comprehensive solution designed to collect, manage, and visualize data from IoT sensors, particularly focusing on the Raspberry Pi platform. It encompasses several key components, including the establishment of communication protocols with sensors such as BME280, implementation of error handling, and creation of a database schema for storing sensor data efficiently. Additionally, the project involves setting up socket communication for real-time data exchange, integrating with Buildroot for streamlined deployment and compatibility, and developing a user-friendly interface for data visualization on a local host machine. Bidirectional socket communication is established to facilitate commands or configuration changes between the Raspberry Pi and the host. The system will enable users to analyze real-time and historical data trends through graphs. Overall, the project aims to offer a robust solution for various IoT applications, ranging from environmental monitoring to industrial automation, with a focus on reliability, scalability, and ease of use.

Motivation:

This project addresses the increasing need for a comprehensive IoT sensor data monitoring and visualization system tailored for the Raspberry Pi platform. By providing efficient data collection, management, and visualization capabilities, the project aims to empower users across various sectors to make informed decisions based on accurate real-time and historical data insights.

Goals:

  1. Streamlined Data Collection: Implement efficient communication protocols and error handling mechanisms to streamline data collection from IoT sensors on the Raspberry Pi platform.

  2. Real-time Visualization: Develop a user-friendly interface for real-time visualization of sensor data trends, facilitating quick insights and informed decision-making.

  3. Scalability and Adaptability: Design the system to be scalable and adaptable, accommodating various IoT applications while ensuring reliability and ease of use.

Stretch goal: Incorporate inter-board communication capabilities to enable collaboration and data exchange between multiple Raspberry Pi units or other IoT devices within the network. This enhancement will enhance system flexibility and scalability, allowing for more extensive data collection and analysis across distributed sensor networks.

Block Diagram:

block diagram

Target Build System

Buildroot

Hardware Platform

Raspberry Pi 3B+: 1 Borrowed, 1 Personally Sourced
BME 280: 1 Borrowed from a different final project, 1 Personally Sourced

Open Source Projects Used

I2C driver buildroot setup: link
I2C bme280 info: link
I2C driver code: link

Previously Discussed Content

AESDSocket from Assignment 5
Buildroot from Assignment 4

New Content

Databases
Data Gathering with I2C

Shared Material

Leveraging RPI Database Setup Instructions learned from ECEN 5783's Project 3

Source Code Organization

Buildroot and database Repository will be hosted in: KANIN'S REPO

Sensor Application code will be hosted in: TOMMY'S REPO

Group Overview

Team project members:

Kanin McGuire - Buildroot and UI/Desktop Support
Thomas Ramirez - Sensor Integration, Database I/O Setup

Schedule Page

Schedule

Final Project Demo Video Page

Kanin McGuire
Tommy Ramirez