ESP32-S3, Firebase, Python 서버, Flutter 앱을 통합하여 제작한 스마트 화분 시스템입니다.
센서 데이터를 기반으로 자동 급수 및 실시간 모니터링 기능을 제공하며,
카메라 및 웹캠 제스처 인식을 통해 사용자와 상호작용하는 IoT 제품입니다.
[사용자 손동작] → [Python 서버 (MediaPipe)] → WebSocket
↓
[ESP32-S3 MCU]
├─ 센서 수집 (토양 수분, 조도, 수위)
├─ OLED 실시간 표시
├─ 물 펌프 제어 (수동/자동)
├─ CAM 스트리밍 (app_httpd)
└─ Firebase 연동
↓
[Flutter 앱: Firebase 모니터링]
- ✅ 토양 수분, 조도, 수위 센서 측정
- ✅ Firebase와 실시간 데이터 송수신
- ✅ 물 펌프 수동/자동 제어 기능
- ✅ OLED에 상태 실시간 출력
- ✅ ESP32-S3 CAM 스트리밍 + 웹서버
- ✅ MediaPipe 제스처 인식으로 손동작 명령 수신
- ✅ Flutter 기반 반응형 앱 UI (iOS, Android, Web)
📁 GooReumi/
├── ESP32_S3_camera.{cpp,h}
├── ESP32_S3_firebase_read_write.{cpp,h}
├── ESP32_S3_led_motor.{cpp,h}
├── ESP32_S3_oled.{cpp,h}
├── ESP32_S3_servo.{cpp,h}
├── GooReumi.ino ← main
├── app_httpd.cpp ← 영상 스트리밍 서버
├── camera_index.h, pins.h ← CAM 핀 및 스트리밍 페이지
└── image_index.h
📁 server/
├── hand_gesture_*.py ← 제스처 학습/추론/처리
├── ESP32_websocket.py ← ESP32와 통신
├── streaming_server.py, index.html
📁 app/embedded/
├── Flutter 앱 소스코드 전체 (Android/iOS/Web 대응)
| 분류 | 기술 |
|---|---|
| MCU | ESP32-S3, Arduino Framework |
| 센서 | 토양수분, 조도, 수위 |
| 액츄에이터 | 서보모터, 펌프 (PWM 제어) |
| 통신 | Wi-Fi, WebSocket, Firebase |
| 시각화 | OLED, Flutter 앱 |
| 서버 | Python, MediaPipe, Flask, OpenCV |
| 영상 | ESP32 CAM + app_httpd |
| 앱 | Flutter (Android/iOS/Web), Firebase Realtime DB |
| 디자인 | Fusion 360 기반 3D 모델링 |
- 2024 ICT 융합 프로젝트 공모전 장려상 수상
| 프로필 | 역할 | 담당 부분 | 기술 스택 |
|---|---|---|---|
강송구 |
팀장 | HW, SW 개발 | Arduino, Fusion 360, Firebase |
박정욱 |
팀원 | SW, 서버 개발 | Python, OpenCV, MediaPipe, Flask, Firebase |
최지민 |
팀원 | SW, UI 개발 | Flutter, Android, Firebase |
본 프로젝트는 단순한 스마트 화분을 넘어서
제스처 기반 인터랙션 + 앱 연동 + 클라우드 + 시각화 + 펌웨어 통합까지 아우르는
완성형 IoT 시스템 플랫폼으로,
사용자의 감성적 피드백과 실제 환경 제어가 자연스럽게 연결되도록 설계되었습니다.








