Skip to content

A raspberry pi based automation system for dispensing food, water and treats for my pup while I'm at work.

Notifications You must be signed in to change notification settings

flowstateeng/Hungry-Hungry-Doggos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 

Repository files navigation

Hungry Hungry Doggos Logo

Hungry-Hungry-Doggos

Build Status License

A raspberry pi based automation system for dispensing food, water and treats for my pup while I'm at work.


Contents


Overview

The Hungry, Hungry Doggos automation system includes:

  1. food dispenser
  2. water dispenser
  3. treat dispenser
  4. door opener
  5. dog's room camera

I created this automation system because I am working 12 hr days and wanted to be able to feed Mullis and let him out during the day. Currently, the camera feed and treat dispenser are operational. Contact me by email to find out how to access the camera feed and controls, so you can feed him a treat.

The hardware and code are in place to operate the door opening system, but I'm printing worm gears because the motors are salvaged from cordless power tools to save money and make the system more reproducible. Instead of buying high torque motors, which are very expensive, a gearing system will enable the use of cheap, low torque motors to open & close the deadbolt and door.


The system consists of:
  1. An Nginx server that serves the main app
  2. A Motion server that serves the camera feed
  3. A Sanic server that serves the controls UI
  4. A Unity web app for UI (See Unity for details)
  5. A MySQL database for credentials

Nginx serves the main app and proxies to the other servers for the camera feed and controls UI, which are embedded in the main app. The main app is a custom web app, made using the Unity UI/state management framework I developed. Sanic is chosen for the controls due to it's asynchronous nature, which allows me to call controls subroutines without tying up threads. The MySQL database stores credentials, which the app API validates for access to the controls UI.

Demos

Treat Dispenser Demo Video

Treat Dispenser Demo Video


Treat Dispenser Base Video

Treat Dispenser Base Video


Treat Dispenser Top Mk1 Video

Treat Dispenser Top Mk1 Video


Pupdate 1 Video

He's helped enough. Time for a break.

Pupdate 1 Video


Treat Dispenser Mounted and Wired

Treat Dispenser Mounted and Wired


Pupdate 2 Pic

Pup break is going well.

Pupdate 2 Pic


Treat Dispenser Top Mk2

I switched from the simpler slider design on the treat slots to slots that are completely enclosed. This helps keep treats from sliding out of place as the top spins, causing blockages that stop the motor from turning.

Treat Dispenser Top Mk2


Prerequisites

  • None

Installation

  git clone https://github.com/chivington/Hungry-Hungry-Doggos.git

Usage

This repo is only meant for viewing, although anyone is free to download and modify for their purposes. If you want to feed Mullis a treat, contact me by email for a temporary password to access the camera feed and controls UI at chivington.casa.

Feel free to ask me questions on GitHub

Authors

Contributing

Not currently accepting outside contributors, but feel free to use as you wish.

License

There is currently no license associated with this content.

About

A raspberry pi based automation system for dispensing food, water and treats for my pup while I'm at work.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published