The catfeeder is a device which can automatically feed animals like cats with dry food.
The catfeeder consists of a tube with an auger connected to a servomotor. The servomotor, the two buttons and the led are connected to a Particle Photon.
It is possible to define 3 feeding times per day and you can manual trigger feeding with two buttons.
When pressing the green button once, the feeding is started. A double click starts a endless feeding. When the servo is running, which means feeding is active, the red button is able to stop the feeding. When there is no feeding and the red button is pressed the feeding is started for a longer duration. This is useful when the food dispenser was empty and refilled. In this case the tube is empty and the auger need to rotate longer to carry food to the front of the tube.
While feeding the led is blinking to indicate the process.
When the power button is in the off state the device is not feeding and the buttons are not working.
The catfeeder is able to be used in battery mode. Therefore the Photon goes into deep sleep after feeding until the next feeding time. Additionally the photon can be woken up by pressing one of the two buttons.
When the sleep mode is not enabled it is possible to trigger the feeding with an API call to the Particle API.
The used materials are:
- Particle Photon
- 1x HT Abzweigung DN 40/40 45 Grad
- 2x HT Bogen DN 40 15 Grad
- 1x HT Muffenstopfen DN 40
- 2x HT-Schelle-SD DN 40 + Gewindestange
- 3D printed auger with drivemount
- 3D printed tubemount
- 3D printed servoshim
- Continous Rotation Servo (e.g. modified Modelcraft Standard-Servo RS2 MG/B)
- 2x Anti-Vandal Momentary Push Buttons
- 1x ON/OFF Button
- 3x 10kΩ resistor for pulling-down the buttons
- 1x 3mm LED with resistor
- 2x diode
- wooden case
For the case the following 6mm wood plates are used:
- 2x 100x250mm (front and back)
- 2x 112x250mm (top and bottom)
- 2x 250x250mm (left and right)
Wake from Deep Sleep
To wake the device from deep sleep with both buttons they are connected via a diode to the WKP pin of the Particle Photon. The buttons need to be active-high to wake the photon so the the WKP pin and the button pins are connected to GND with a pull-down resistor.
Continous Rotation Servo
The auger needs to rotate continously so a continous rotation servo is needed. It is possible to modify a regular servo for continous rotation by replacing the potentiometer with two resistors (voltage divider) and remove the blocking pin.
The code for the Particle Photon can be found on github. It is depending on the clickButton library
The whole project is inspired by kitlaans Auger-based Cat Feeder. I modified the auger with one of wtgibsons Auger SCAD library and adjusted the dimensions of the tube and the servo.
The idea of using a diode as a simple OR gate to wake up the photon is inspired by TinamousSteves Happy-Sad Buttons.