All Projects → TinkerTurtle → Sentry-Picam

TinkerTurtle / Sentry-Picam

Licence: MIT license
A simple wildlife camera for Raspberry Pis.

Programming Languages

javascript
184084 projects - #8 most used programming language
go
31211 projects - #10 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to Sentry-Picam

goicy
AAC and MPEG (MP1, MP2, MP3) Icecast/Shoutcast source client written in Go
Stars: ✭ 58 (-52.07%)
Mutual labels:  golang-application
rasp vusb
This repo explains how to turn your Raspberry Pi Zero into USB Keyboard and Mouse. Also provides sample code and binaries to control them.
Stars: ✭ 85 (-29.75%)
Mutual labels:  raspberry-pi-zero-w
mikrotik-fwban
Use your Mikrotik firewall to do fail2ban like blocking of unwanted IPs. Written in Go
Stars: ✭ 22 (-81.82%)
Mutual labels:  golang-application
sheret
A tiny, simple static file web server.
Stars: ✭ 45 (-62.81%)
Mutual labels:  golang-application
insta
Instagram power tool
Stars: ✭ 56 (-53.72%)
Mutual labels:  golang-application
trustydns
DNS Over HTTPS proxy, server and query programs
Stars: ✭ 22 (-81.82%)
Mutual labels:  golang-application
mail2most
watch emails and send them to mattermost
Stars: ✭ 54 (-55.37%)
Mutual labels:  golang-application
kx
A more stream lined way to move around k8s contexts and namespaces
Stars: ✭ 21 (-82.64%)
Mutual labels:  golang-application
turengo
Translate text using tureng.com from your terminal.
Stars: ✭ 57 (-52.89%)
Mutual labels:  golang-application
ecsview
Browse your AWS ECS Clusters in the Terminal
Stars: ✭ 100 (-17.36%)
Mutual labels:  golang-application
teslausb
Steps and scripts for turning a Raspberry Pi into a useful USB drive for a Tesla
Stars: ✭ 1,426 (+1078.51%)
Mutual labels:  raspberry-pi-zero-w
eventsourcing-go
Event Sourcing + CQRS using Golang Tutorial
Stars: ✭ 75 (-38.02%)
Mutual labels:  golang-application
whatsapp-jpeg-repair
A handy tool to fix jpeg files downloaded from WhatsApp and prevent errors upon opening these files in Adobe Photoshop.
Stars: ✭ 30 (-75.21%)
Mutual labels:  golang-application
creeper
Makeshift Raspberry Pi Security Camera System
Stars: ✭ 29 (-76.03%)
Mutual labels:  motion-detection
n3dr
Nexus3 Disaster Recovery (N3DR) is a tool that is capable of downloading all artifacts from a Nexus3 server and to migrate them to another Nexus3 server. Note that some repository formats are not supported at the moment.
Stars: ✭ 110 (-9.09%)
Mutual labels:  golang-application
shortlink
High-Performance Shortlink ( Short URL ) app creator in Golang. For privacy reasons, you may prefer to host your own short URL app and this is the one to use.
Stars: ✭ 130 (+7.44%)
Mutual labels:  golang-application
PiBeacon
Low-cost iBeacon using Raspberry Pi
Stars: ✭ 41 (-66.12%)
Mutual labels:  raspberry-pi-zero-w
k8s-canary
Walkthrough of Canary deployment on Kubernetes
Stars: ✭ 18 (-85.12%)
Mutual labels:  golang-application
roomba flamethrower
Raspberry Pi Zero W powered Roomba Flamethrower controlled by an Xbox One Controller.
Stars: ✭ 14 (-88.43%)
Mutual labels:  raspberry-pi-zero-w
Golang-Files-Preview
Golang 文件预览支持 office\pdf\cad\achieve\txt\image\video files
Stars: ✭ 53 (-56.2%)
Mutual labels:  golang-application

Sentry-Picam

Mosaic of a 3d printed sentry turret, bird, and screenshot of a bar graph

Sentry-Picam is a simple wildlife / security camera solution for the Raspberry Pi Zero W, providing 1080p/30fps motion activated H.264 video capture. The built in web interface makes it easy to review video clips and identify the busiest times of day.

Recordings will be kept as long as there's enough available space. 1 GiB of free space will be maintained by default.

Motion detection in Sentry-Picam uses vectors provided by RaspiVid's video pipeline, enabling performant and effective supression of video noise.

Thanks to Broadway and RaspiVid, the Pi Zero W hardware can also stream live video to multiple devices with a ~300ms delay over Wifi.

Minimum Hardware Requirements

  • Raspberry Pi Zero
  • Raspberry Pi Camera Module v2

Prerequisite Software

  • raspivid - Required for motion vector data
  • ffmpeg - Used for custom triggers and video conversion/thumbnails

Quick Setup

  • Ensure camera is enabled in raspi-config
wget https://github.com/TinkerTurtle/Sentry-Picam/releases/latest/download/sentry-picam
./sentry-picam

Navigate to http://IP_address_of_your_RPi:8080

Tips

  1. The default video settings strike a good balance between video quality and resource usage. To View options:

    ./sentry-picam -help
    
  2. For higher quality on Camera Module v2:

    ./sentry-picam -height 1088 -width 1920 -fps 30 -bitrate 4000000
    
  3. Use "Edit Detection Sectors" in the web UI to specify areas where motion detection should be triggered.

  4. Set up auto start:

    Download and edit the sentry-picam.service file.

    sudo cp sentry-picam.service /etc/systemd/system/
    sudo systemctl enable sentry-picam
    sudo systemctl start sentry-picam
    
  5. Custom programs can be set up to trigger other functionality, like notifications or image classification. Ffmpeg is a prerequisite.

    Sentry-picam runs your program after generating a thumbnail, and passes in the video/thumbnail name as an argument to your program. Your program will need to append the .mp4 file extension to access the video, or .jpg to access the thumbnail. Recordings are stored in ./www/recordings/

    ./sentry-picam -run example_script.sh
    
  6. Files discarded from the web interface may be recovered from the folder ./www/recordings/deleteme/. The web interface will occasionally empty this folder, starting with recordings over 7 days old.

Compiling from Windows for a Raspberry Pi Zero

git clone https://github.com/TinkerTurtle/sentry-picam
cd sentry-picam

# Set environment variables for the Go compiler
SET GOOS=linux
SET GOARCH=arm
SET GOARM=6

go build

STLs for the Portal Turret

https://www.thingiverse.com/thing:8277

https://www.prusaprinters.org/prints/76478-supplemental-portal-turret-components

Enjoy!

Cardinal swinging on a birdfeeder while eating birdfeed

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].