Skip to main content

Security-Cam

A security camera system for the Raspberry Pi Zero 2 W that records when it matters and stays quiet when you're home.

The system automatically records video when a trigger sensor is activated (e.g. door opened, motion detected) and no tracked device is connected via Bluetooth or WiFi. Recording stops when the sensor resets. The trigger sensor is modular - swap between a magnetic reed switch, PIR motion sensor, vibration sensor, or any of the supported modules without changing any code.

Features​

Modular Trigger Sensors - 16 sensor types including magnetic reed switches, PIR motion, vibration/knock, tilt, touch, light gates, IR proximity, sound detection, and a software mock. Calibration sliders let you fine-tune sensitivity and thresholds.

Presence-Gated Recording - sensor triggers are gated by Bluetooth and WiFi presence detection. If a tracked device (e.g. your phone) is nearby, the trigger is suppressed. Manual recording is always allowed.

Auto-Delete Storage - automatically removes oldest recordings when disk usage exceeds a configurable threshold. Supports network storage (NFS/SMB).

Web Dashboard - live camera feed via WebRTC (HLS fallback), video archive, system health monitoring, event timeline, activity heatmap, and device management. Dark and light themes, 5 languages.

MediaMTX Streaming - hardware-accelerated H.264 camera streaming via WebRTC and RTSP.

WiFi & Bluetooth Detection - presence detection via WiFi Access Point and Bluetooth.

Real Time Clock - DS3231 RTC module keeps accurate time when the Pi is powered off.

Offline access

These docs are bundled with the dashboard. When your Pi is running, open http://<pi-ip>:3000/docs/intro - no internet required.

Getting started​

Step 1Set up your Pi

Wire the camera, sensors, and RTC module, then run the install script.

Setup guide →
Step 2Open the dashboard

Live feed, recordings, and system health at a glance.

Dashboard guide →
Step 3Configure sensors

Pick a trigger sensor and tune its sensitivity.

Sensors guide →

Contributing​

If you'd like to contribute to this project, please follow the guidelines in the CONTRIBUTING.md file.

License​

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).