All Projects
Academic
Completed

FaceCheckIn

An IoT attendance and affect-logging system using Raspberry Pi for edge inference, Django for cloud backend and analytics, and a Flutter mobile app for user-facing visualization. Top-rated project (full marks) in the Fundamentals of IoT course.

Overview

An IoT attendance and affect-logging system using Raspberry Pi for edge inference, Django for cloud backend and analytics, and a Flutter mobile app for user-facing visualization. Top-rated project (full marks) in the Fundamentals of IoT course.

PythonDjangoDjango REST FrameworkRedisCeleryCelery BeatJWTPyTorchOpenCVPostgreSQLDockerDocker ComposeRaspberry PiReact.jsReact NativeTypeScriptTailwindCSS

Problem

Traditional attendance systems are manual and error-prone. The project aimed to build an automated, intelligent system that records presence and anonymously captures emotional state for longitudinal analysis — using constrained edge hardware.

Solution

Raspberry Pi captures 6 images per user on check-in. A primary frame identifies the person via facial recognition; all 6 frames feed an emotion recognition model. Results are sent to the Django backend via authenticated REST APIs and stored in PostgreSQL for analytics and dashboard visualization.

Architecture

Edge-to-cloud: Raspberry Pi (image capture + inference request) → REST API (JWT auth) → Django backend → PostgreSQL (identity, check-in, emotion analytics). Identity recognition: single primary frame. Emotion recognition: 6-frame inference set. Docker containerizes the backend for reproducible execution. Mobile app (Flutter) shows real-time check-in status for users. Admin web dashboard for attendance reports.

Challenges

  • Achieving acceptable end-to-end latency on constrained hardware: ~1s identity recognition, ~2–4s emotion inference in the prototype.

  • Designing a clean edge-to-cloud data contract that the Raspberry Pi could reliably execute without server-side failures.

  • Coordinating across 4 team members (backend, mobile/frontend, hardware, AI) with explicit interface contracts.

Outcomes

  • Top-rated project (full marks) in the Fundamentals of IoT course at Quchan University.

  • Demonstrated automated check-in with real-time edge inference and cloud-side analytics.

  • Fully containerized, reproducible system ready for integration testing across all four components.

Lessons Learned

  • Measure edge inference latency early — model complexity and hardware constraints interact in non-obvious ways.

  • Clean API contracts between hardware, AI, and backend engineers prevent integration failures at demo time.

  • IoT systems need graceful degradation — when edge is slow, the cloud must wait without surfacing failures to users.

Academic
Backend & Integration Lead
Team of 4
September 2023 — January 2024