Motion Camera - Smart Doorbell & Motion-Triggered Camera System
timeline: 2026
tech stack: Python, Raspberry Pi, OpenCV, GPIO, SQLite, Flask
Overview
A smart doorbell and motion-triggered camera system built on Raspberry Pi. When motion is detected — whether someone approaching the door or wildlife passing through — the system captures high-resolution images, logs them to a local SQLite database with timestamps and motion metadata, and serves them through a lightweight web dashboard for browsing the capture history.
How It Works
The system uses OpenCV frame differencing to detect motion in real-time video streams. A PIR sensor provides hardware-level motion detection as a secondary trigger, reducing false positives. When motion exceeds a configurable threshold the camera captures a burst of images, which are stored on disk and indexed in a SQLite database alongside timestamp, motion intensity, and bounding-box coordinates. A Flask web server exposes a simple dashboard where you can browse, filter, and review the picture database — essentially a doorbell camera you fully own and control.

Results
The system runs 24/7 on a Raspberry Pi 4, reliably capturing and cataloguing motion events with configurable sensitivity. The picture database grows automatically and can be browsed from any device on the local network. Low power consumption and efficient storage management make it practical as a long-running doorbell camera or wildlife monitor.
