THIS AI CAMERA FEEDER RECOGNIZES YOUR PET AND REFUSES TO FEED THE WRONG ONE

A 10 dollars camera module that recognizes your pet and refuses to feed the wrong animal.

by Pierce Brandies

FULL CAD BOM FIRMWARE DOCS

HomeAI

difficulty
●●●○○
time
a weekend
license
MIT
repo
repo ACTIVE29 stars

WHAT YOU’LL NEED

  • Dev board / microcontrollerruns the project firmware

Partner

Run your scrapers in the cloudThis build needs data collection that runs 24/7. Apify's free plan includes $5 in credits every month — no card needed.Try Apify free
1

COMPAREE VERDICT

Pierce Brandies' PetFeeder pairs a 10 dollars ESP32-CAM with a servo and a Flask web app to dispense food only when it recognizes your pet. A YOLOv8 model classifies dog, cat, or bird; you set portion size and feeding interval through the web interface. The MIT license is clean and the idea is straightforward, but the repository assumes you will solve the mechanical side yourself. There is no CAD for the housing, no assembly diagram, and no parts list beyond "an ESP32-CAM and a servo." The one thing most likely to go wrong is building a dispenser mechanism that actually works — gravity feed sounds simple until you realize kibble bridges, portions vary wildly with servo throw, and the camera needs a clear view without the servo in frame. If you are comfortable designing enclosures and prototyping feeding mechanisms, this is a weekend project. If you expected step-by-step hardware plans, you will spend most of your time on Fusion 360 instead of the code.

NOT IN THE REPO

  • MIT license, unrestricted use including commercial
  • Python Flask web app and ESP32-CAM firmware are both in the repo
  • YOLOv8 model file is included, OpenCV draws the bounding boxes
  • No parts list — the README names the ESP32-CAM and servo but gives no quantity, model number, or source
  • No mechanical design files — the feeder housing and dispenser mechanism are not documented
  • Setup instructions cover software installation but skip camera mounting and servo attachment

Can I build this?

Printnothing required — or your own feeder enclosure if you design one
BuyESP32-CAM module, servo, USB power supply, enclosure material, pet food container
ToolsPython environment, soldering iron, basic hand tools for assembly
Skillsintermediate — Python and Flask setup are straightforward, but mechanical design and reliable kibble dispensing take iteration
Timea weekend if you already have a dispenser design, longer if you are prototyping the mechanism from scratch
Cost$ — ESP32-CAM is around $10, servo another $5–10, rest depends on enclosure materials
Safety5V USB power only, no mains voltage. Standard soldering precautions. Servo has no pinch hazard at these speeds.

Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.

Blu-ray drive, 10 Gbps hub and card reader in one boxPartner · Kickstarter
Blu-ray drive, 10 Gbps hub and card reader in one box

BluHub reads and burns Blu-ray/DVD/CD, adds USB-C, USB-A, SD/TF and 10 Gbps data — plug and play, grand-piano finish.

See the hub

Videos

CS50 Final Project - IoT Automatic Pet Feeder Using Object Detection

No video walkthrough in the repository or linked from the README.

Gallery

https://opengraph.githubassets.com/102d02c66b2a8261a1eede5efb7d47c7c7bed62befe29bc382e8ff30974bbda9/PierceBrandies/PetFeeder
https://radar.comparee.ai/api/public-media/uploads-operator/reel29_petfeeder.jpg?exp=1816857371&token=Xtec-bQZl4DdPGtticJA8EXbalzjJcSXlNBbBkeskcM
https://img.youtube.com/vi/MQInUzh0owA/maxresdefault.jpg
https://img.youtube.com/vi/visj0KE5VtY/maxresdefault.jpg

Start here

Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.

  1. 1.Clone the repository and install Python dependencies (Requirements.txt is provided for the Flask app and OpenCV stack.)
  2. 2.Flash the ESP32-CAM firmware(Arduino sketch is in the repo; you will need the ESP32 board definitions installed.)
  3. 3.Design and build your dispenser mechanism(Not documented — you need a way to mount the camera, attach the servo, and reliably drop a measured portion of food.)
  4. 4.Configure pet type and portion settings in the web app (The interface lets you set animal class (dog, cat, bird), portion size, and minimum interval between feeds.)

Resources

Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.

Ultra-thin power bank that fits anywherePartner · Kickstarter
Ultra-thin power bank that fits anywhere

CORE POWER BANK S: 0.2" thin, 2.8 oz, 5000 mAh with 22.5W fast charging. Semi-solid battery, carbon fiber, IPX7 waterproof.

Learn more

KNOWN ISSUES

  • There is no parts list with model numbers or quantities — you are guessing servo torque and throw distance
  • No mechanical plans means you will design your own hopper, chute, gate, and camera mount from scratch
  • Kibble bridging is real — gravity-fed dispensers jam unless the hopper geometry and gate are sized correctly
  • Servo position to portion size is not calibrated — you will tune it by trial, and it changes if you switch food types
  • YOLOv8 confidence threshold is not exposed in the UI — if the model misclassifies a neighbor's cat as a dog, you edit config.py
  • ESP32-CAM has no onboard programming header — you need a USB-to-serial adapter and jumper wires to flash it the first time

What animals does the model recognize?

Dog, cat, and bird. The YOLOv8 model is trained on COCO classes; expanding to other pets means retraining or swapping the weights file.

Can it tell my cat apart from the neighbor's cat?

No — it classifies species, not individuals. You would need a different model trained on your specific pet's face or markings.

How is portion size controlled?

Servo angle, set through the web interface. Because there is no calibration step, portion size in grams depends on your dispenser geometry and food type.

Does it work with wet food?

The repository shows dry kibble only. Wet food would need a completely different dispensing mechanism — likely a rotating tray or pusher instead of a gravity chute.

What if the camera feed goes dark or the servo jams?

Not addressed in the code. You would add error handling yourself — watchdog timers, feed attempt logging, or a manual override button.

Community builds

No community builds yet — be the first, we feature the best ones.

Discussion1

FROM THE COMPAREE TEAM

The YOLOv8 model classifies dog, cat, or bird — but it does not tell your cat from the neighbor's. Would individual pet recognition be worth the extra training effort, or is species-level filtering good enough for your setup?

CompareeTEAM25d agoedited

Practical notes from our verification: the Flask app and ESP32 firmware are both complete and the YOLOv8 weights file is included in the repo, so the software side is ready to run. What is missing is the entire physical build — there is no hopper design, no servo mounting bracket, no camera placement guide, and no parts list with quantities or model numbers. The README names an ESP32-CAM and a servo, then jumps straight to software installation. If you have built gravity feeders before and know how to stop kibble from bridging, this is a weekend. If this is your first dispenser, budget time for mechanical prototyping — most of the work is getting reliable portions, not tuning the model.

Pierce Brandies

Pierce Brandies built PetFeeder as a practical solution to selective feeding — keeping the dog out of the cat's bowl without standing guard. The project is MIT-licensed and hosted on GitHub.

GitHub

Star the project on GitHub

DISCLAIMER

  • Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
  • Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
  • Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.