Anxiety about project complexity. Is my self-taught IoT Air Quality Mitigation System deep enough for college capstone compared to pure software projects?
Hey everyone. I'm an Information Technology student currently working on my final Capstone project, and I'm having major imposter syndrome. My project feels like it lacks the "software depth" compared to my peers who are building massive full-stack web apps or management software.
To make matters worse, my college's IT syllabus is notoriously outdated. I essentially had to teach myself modern IoT architecture, C++, and cloud integration from scratch to build this, which makes me feel deeply inadequate about my actual "pure coding" skills.
I am building an IoT-based automated indoor air quality monitoring and mitigation system. It doesn't just read data; it is a multi-node cyber-physical system that actively triggers 220V household appliances (like exhaust fans or air purifiers) when safety thresholds are breached. Here is my current tech stack and architecture:
- Hardware: ESP32 microcontroller acting as the main hub.
- Sensors (Industrial Grade): Sensirion SCD41 (CO2, Temp, Humidity), SGP40 (VOCs), and SPS30 (PM1.0 to PM10 mass concentration).
- Cloud-Synchronized Actuation: A distributed wireless smart plug node equipped with a mechanical relay to safely switch 220V AC wall power. I engineered it to use Google Firebase Realtime Database as a centralized "Source of Truth." The main hub evaluates the logic and pushes trigger states to the cloud, which instantly routes the command to the smart plug.
- Software/Firmware: Asynchronous C++ loops so the sensors, local 2.4" TFT display, and WiFi stack don't block each other.
- Cloud & Dashboard: Full Firebase integration. I built a custom Web Dashboard where users can view historical telemetry logs and dynamically adjust the trigger thresholds via sliders (e.g., set the relay to turn on only when CO2 hits 1000ppm).
- Failover Resilience: If the Wi-Fi drops, the system doesn't crash. The main node intelligently shifts into a passive monitor state—continuing to read sensors, update the local TFT display, and sound physical alarms. It automatically re-establishes the Firebase session to resume cloud logging and relay automation seamlessly the moment the network returns.
My Anxiety/Question: Because my project relies heavily on systems integration, cloud routing, and edge hardware, my actual web codebase isn't as massive as a standard CRUD web dev project. My defense panel consists of strict, traditional IT professors, and I want to make sure I satisfy the "Information Technology" domain requirements.
- What software-focused features can I add to make this absolutely bulletproof for an IT defense?
- Are there specific data analytics, database optimizations, or web dashboard features I should integrate to show higher-level programming skills?
- Has anyone here defended a cyber-physical/IoT project to a purely software/IT panel? How did you justify the complexity when the codebase is smaller?
- Any advice for a self-taught IoT student dealing with imposter syndrome over their coding skills?
I specifically avoided "scope creep" traps like adding GIS mapping or complex Machine Learning since it runs on an ESP32, but I want to make sure the software architecture is impressive enough. Any advice, roasts, or suggestions are highly appreciated!