프로젝트 소개
MiBeeCam은 LuatOS ESP32-S3-A10 보드(ESP32-S3 + OV2640 센서)용 오픈소스 펌웨어로, ESP-IDF v5.5.4를 기반으로 합니다. 단일 칩, PSRAM 없는 설계를 클라우드 의존성이나 구독 없이 LAN 전용 WiFi 감시 카메라로 바꿔줍니다.
README에 제시된 핵심 기능:
- 포트 81의 독립 TCP 서버를 통해 최대 15 FPS의 MJPEG 비디오 스트리밍을 제공하며, 최대 2개의 동시 클라이언트를 지원합니다. 해상도는 VGA(640×480)로 고정되어 있는데, 더 큰 크기는 DRAM 프레임 예산을 소진하기 때문입니다(PSRAM은 물리적으로 존재하지만 타이밍 문제로 비활성화됨).
- 구성 가능한 임계값과 쿨다운이 있는 프레임 차이 알고리즘을 사용한 모션 감지로, 재시도 로직과 함께 원격 엔드포인트로 자동 JPEG 업로드를 트리거합니다.
- SPIFFS에서 제공되는 내장 웹 UI로, 대시보드, 라이브 미리보기, 구성 페이지를 제공합니다.
- 시스템 상태, 구성(NVS에 영구 저장), WiFi 스캔, 재부팅, 단일 JPEG 캡처, ONVIF SOAP 장치/미디어 서비스를 위한 REST API.
- 최대 5개의 클라이언트에 9가지 이벤트 유형을 푸시하여 실시간 UI 업데이트를 제공하는 WebSocket 엔드포인트.
- 이벤트를 JSON 페이로드로 외부 HTTP 엔드포인트에 비동기적으로 전달하는 웹훅 클라이언트.
- WS-Discovery 및 SOAP 장치/미디어 서비스를 통한 ONVIF Profile S 검색(기본적으로 비활성화됨).
- 60초 수집 간격으로 상태 모니터링(힙, 태스크)을 위한 Prometheus 호환 /metrics 엔드포인트.
- http://mibee.local에서의 mDNS 접속, 구성 가능한 POSIX 시간대를 사용한 NTP 시간 동기화, 3회 재시도 후 백업 SSID 자동 폴백.
- WiFi 구성, 시스템 정보, 카메라 제어를 위한 20개 명령이 있는 UART0 AT 명령 인터페이스 — 헤드리스 설정을 가능하게 합니다.
- AP 모드 최초 부팅 설정 핫스팟(MiBeeCam) 및 BOOT 버튼을 5초간 눌러 공장 초기화.
펌웨어는 카메라 초기화가 I2C 버스 충돌을 피하기 위해 WiFi보다 먼저 수행되는 15단계 부팅 시퀀스를 따릅니다. 구성은 NVS에 저장되며 v1→v2 자동 마이그레이션을 지원합니다. GPIO 10의 상태 LED는 시작, WiFi 연결 중, 실행 중, 오류 또는 AP 모드를 나타냅니다.
알려진 격차: 하드웨어 지원(WiFi + 16 MB 플래시)에도 불구하고 OTA 업그레이드는 아직 구현되지 않았으며, 현재 업그레이드는 esptool을 통한 유선 플래싱이 필요합니다. 이 프로젝트는 GPL-3.0-or-later 라이선스입니다.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.