explaingit

mlweber/taubenturret

Analysis updated 2026-05-18

28PythonAudience · generalComplexity · 3/5Setup · hard

TLDR

Control software for a homemade camera guided water turret that detects and gently deters pigeons.

Mindmap

mindmap
  root((taubenturret))
    What it does
      Detects pigeons
      Aims water turret
      Records events
    Tech stack
      Python
      FastAPI
      OpenCV
    Use cases
      Automated deterrence
      Live monitoring
      Manual firing
    Audience
      DIY hardware makers
    Setup
      3D printed turret
      Raspberry Pi camera
      Detection API

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Detect pigeons on a balcony or ledge with a Raspberry Pi camera and AI object detection.

USE CASE 2

Automatically aim and fire a water gun turret at a detected pigeon.

USE CASE 3

Watch a live video stream and fire the turret manually from a web dashboard.

USE CASE 4

Review previously recorded clips of past pigeon deterrent events.

What is it built with?

PythonFastAPIOpenCVRaspberry Pi

How does it compare?

mlweber/taubenturretalicankiraz1/codexqbcrain99/worldcut-2026
Stars282828
LanguagePythonPythonPython
Setup difficultyhardeasymoderate
Complexity3/53/53/5
Audiencegeneraldevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Needs the 3D printed hardware, a Raspberry Pi camera, and a running external object detection API.

In plain English

Taubenturret is the control software for a homemade automated water turret designed to gently scare pigeons away from a specific area, such as a balcony or window ledge. The name combines the German word for pigeon with turret. It pairs with a physical 3D printed device whose build files are shared separately on a site called Makerworld, and this repository is only the software that runs the brains of the system. The turret uses a Raspberry Pi camera to watch for motion, and when something moves it sends the image to an external AI object detection service to check whether the moving object is actually a pigeon before deciding to act. Once a pigeon is confirmed, the software calculates the physical pan and tilt angles needed to aim the water gun at the target, converting from the flat two dimensional camera image to the real three dimensional angles, then drives small PWM controlled servos to point the turret and fires a burst of water. A built in web interface, built with FastAPI, lets an owner watch a live video stream from the camera, fire the turret manually, and browse a library of previously recorded video clips, since the system automatically saves a short video every time it detects motion and fires. All of this is protected behind a basic username and password login on the web page. Setting it up requires a Raspberry Pi with its camera module, Python 3.9 or newer, and a set of Python packages including FastAPI, OpenCV, and the Raspberry Pi camera library, plus a running copy of a separate companion project that provides the actual object detection service the turret calls out to. Configuration happens through an environment file where the owner sets login credentials, the detection service address, and careful tuning values for the servos and water gun so the hardware does not over rotate or fire longer than intended.

Copy-paste prompts

Prompt 1
Help me fill in the .env file for taubenturret with my servo and webserver settings.
Prompt 2
Explain how this project converts a 2D pixel position into a pan and tilt angle.
Prompt 3
What does the companion taubenturret-backend project need to do for this to work?
Prompt 4
Walk me through the make setup and make install steps for this project.

Frequently asked questions

What is taubenturret?

Control software for a homemade camera guided water turret that detects and gently deters pigeons.

What language is taubenturret written in?

Mainly Python. The stack also includes Python, FastAPI, OpenCV.

How hard is taubenturret to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is taubenturret for?

Mainly general.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.