Complete IoT System for Environmental and Agricultural Monitoring

Academic project developed as a team using Agile methodologies (Scrum), implementing a full IoT system: from hardware sensors to cross-platform mobile app, including a REST API and database.

The Challenge

Farmers and environmental managers need real-time data about terrain conditions (temperature, humidity, luminosity, air quality) to make informed decisions. Existing commercial solutions are expensive and proprietary. The challenge was to build an accessible, complete IoT system covering all layers: hardware, backend, frontend, and mobile.

My Role

As Full Stack IoT Developer, I contributed across all three system layers:

  • Programmed Arduino/ESP32 microcontrollers for sensor data capture and transmission
  • Designed and implemented the RESTful API in Node.js with Express
  • Developed the cross-platform application in Ionic with TypeScript
  • Configured the MySQL database for historical data storage
  • Implemented real-time communication via WebSockets

Multi-platform Architecture

The system is divided into three independent repositories:

Technical Approach

Hardware layer:

  • Arduino / ESP32 microcontrollers
  • Environmental sensors: temperature, humidity, luminosity, air quality
  • WiFi / Bluetooth connectivity for data transmission

Backend layer:

  • Node.js with Express.js as REST API
  • MySQL for historical measurement storage
  • WebSockets for bidirectional real-time communication

Frontend layer:

  • Ionic (Angular) for cross-platform app (Web, iOS, Android)
  • Customizable dashboards with historical charts and trends
  • Automatic alerts based on configurable thresholds
  • Offline synchronization and push notifications

Development Methodology

  • Scrum with documented sprints
  • Team of 3 developers collaborating
  • Git with branch workflow (develop, feature branches)
  • Technical documentation with UML diagrams

Outcome

Functional IoT system demonstrating the viability of accessible solutions for real-time environmental monitoring, data-driven decision making, and agricultural resource optimization.