FinchLabs Works · Project Overview

Critter
Bouncer

A computer-vision wildlife deterrence prototype that watches for selected critters, identifies them with an inference model, and can activate a remotely monitored deterrent system.

Don’t let critters crash your party
Computer Vision Raspberry Pi Arduino Control Remote Web Console Fusion 360 Design Bambu X1 Carbon
FinchLabs Works Critter Bouncer

Give backyard pests a very clear hint

The project began with a practical problem: raccoons, squirrels and other pests spending too much time around the house. The concept is to combine computer vision, remote monitoring and a physical deterrent into one autonomous prototype.

Critter Bouncer uses a Raspberry Pi camera and a YOLO inference model to inspect live video for configured target classes. The current software is specifically watching for raccoons and squirrels.

When automatic mode is enabled and a target is detected, the application applies a cooldown rule and sends a serial command to an Arduino to activate the hardware. A browser-based control console provides the live annotated camera image, system status, target state, recent activity and manual activation.

The original BRD describes the physical deterrent as a high-velocity packing-peanut projectile, with the explicit constraint that the system should not damage people or structures.

Project Creator Alex Finch
Project Status Functional Prototype · Delivered August 26, 2026
Original BRD Version 1.0 · May 3, 2026
Current Targets Raccoon · Squirrel
Project Goal Detect · Deter · Monitor

See it. Classify it. Decide. Activate.

The current software forms a simple edge-AI pipeline running locally on the device, with the browser acting as the monitoring and control surface.

1

Capture

The Raspberry Pi camera supplies a continuous 640×480 image stream.

2

Detect

YOLO evaluates frames and identifies objects using a 0.50 confidence threshold.

3

Filter

Only configured targets — currently raccoon and squirrel — trigger the response logic.

4

Decide

Auto mode and a five-second cooldown determine whether activation is allowed.

5

Activate

A serial command is sent to the Arduino; the web console records the event.

A small full-stack robotics system

The Python application combines machine vision, camera handling, hardware control and the web interface in a single deployable service.

Vision

Ultralytics YOLO

Runs local object inference and produces the annotated detection frame.

Camera

Picamera2 + OpenCV

Captures Raspberry Pi camera frames and JPEG-encodes the browser image.

Hardware

Arduino + Serial

Receives the activation command from the Raspberry Pi over a serial connection.

Web

Flask

Hosts the console, status API, snapshot endpoint and manual/automatic controls.

Operations

Live State + Activity

Tracks camera health, targets, last detection, last activation and recent events.

Interface

Embedded HTML

The control console — including the logo — is embedded directly in the Python application.

Camera 640 × 480
Inference Size 320 px
Confidence 0.50
Cooldown 5 seconds
Web Server Flask · Port 5000

Purpose-built enclosure

Designed in Fusion 360, prepared in Bambu Studio, and printed on a Bambu Lab X1 Carbon.

Custom physical design for this project

Critter Bouncer’s physical enclosure was modeled in Fusion 360 and printed for this project on a Bambu Lab X1 Carbon. The design was built to stay compact while still allowing access to components and charging ports.

Iterated around the hardware

As the system moved to high-speed brushless motors, the enclosure had to evolve to fit larger motors, LiPo batteries, battery controllers, and added ventilation requirements.

Purpose-built Critter Bouncer enclosure graphic with labeled launch aperture and weather-resistant camera lens
Launch aperture Projectile launch opening
Weather-resistant camera lens Wide-angle lens for real-time monitoring
Purpose-built enclosure concept graphic
Bambu Studio print workflow panel for the Critter Bouncer enclosure

The enclosure was sliced in Bambu Studio and printed as a custom build using PLA in the FinchLabs Mondrian palette, with PETG used for transparent sections.

CAD Fusion 360 enclosure design
Slicer Bambu Studio print preparation
Printer Bambu Lab X1 Carbon
Materials PLA + transparent PETG sections

Designed to stay observable and controllable

Autonomous behavior is useful only when the operator can see what the system thinks it is doing. The current console exposes that state directly.

Web Interface

A polished operator console for live monitoring and control

The current Critter Bouncer interface turns the prototype into something that feels like a real product rather than a raw developer dashboard. It gives the operator immediate visibility into system health, camera state, live targeting and activation readiness.

The console combines a branded header, high-contrast status cards, a large live detection feed, clear manual and automatic controls, and an activity area that shows what the system has been doing most recently.

1
Instant status awarenessSystem, camera, auto mode and cooldown are visible at a glance.
2
Visual confidenceThe live feed shows exactly what the device is watching and whether it is ready.
3
Operator controlManual fire and auto-fire controls make it easy to intervene or let the system run itself.
Critter Bouncer web interface screenshot
Current Critter Bouncer experimental control console
Monitor

Annotated live feed

The browser refreshes the latest YOLO-annotated camera snapshot approximately five times per second.

Control

Manual activation

An operator can issue an immediate activation from the web console.

Autonomy

Auto mode toggle

Automatic target response can be armed or disarmed remotely without stopping the application.

Protection

Cooldown logic

A five-second software cooldown prevents repeated automatic activations in rapid succession.

Awareness

System status

The UI reports system state, camera availability, targets, cooldown state and auto-mode status.

History

Activity log

Recent detection, activation and mode-change events are retained for the current session.

Power

Independent power systems

Separate dedicated battery systems power the compute/control electronics and the high-current motor system. That keeps Critter Bouncer untethered and easy to place wherever the action is - then monitor and control it over Wi-Fi from a phone or PC on the same local network.

Discovery

Easy to find with Bonjour / mDNS

Critter Bouncer uses mDNS zero-configuration networking - commonly known as Bonjour - so there is no need to hunt down an IP address every time you want to connect. On the local network, it can advertise a friendly .local address for easy access from a phone or PC.

Security

FinchLabs Roost

Critter Bouncer's web interface is secured by FinchLabs Roost, providing user authentication before access to monitoring or control functions. Because putting an unsecured web server with projectile-launch capability in the backyard seemed like a genuinely bad idea.

Smart enough to know what it’s looking for

Safety

Trained in the Lab. Tested in the field

Critter Bouncer is designed to automatically trigger only when it detects defined target classes - currently raccoons and squirrels. If those classes are not detected, the system stays in watch mode.

That makes the system more selective, more predictable, and a lot smarter than simply reacting to motion alone.

Good for people. Not great for raccoons.
Critter Bouncer live detection interface showing target detection and cooldown status
Actual Critter Bouncer detection interface
AI-powered computer vision, a trained inference model, robotics, custom fabrication and fully portable operation powered by rechargeable batteries - brought together with a little curiosity and some backyard motivation
where curious ideas become interesting things