I like cats, and I even have a little tabby of my own (or as I’m inclined to say: my cat has me as an unpaid employee). But even I’ll admit that cats can, at times, be quite annoying little furballs. Take feeding time as an example. My cat will insist that I walk him to his bowl and as he won’t check on whether there is anything in it or not on his own. I’ve been contemplating adding a small vibration motor to the bowl which shakes his food about, so he knows that there still is some in there and doesn’t bother me.
Or perhaps I should take a leaf out of 335iguy’s book. This maker decided that enough was enough, and they built their furry companion a fully automated cat feeder. This automatic cat feeder is a thing of beauty. It is based around a dry-food dispenser which is powered by a servo motor. And it doesn’t stop there. Inside the lid of the dry-food dispenser, there is an ultrasonic sensor (these measure distance) which tells the owners when the dispenser is empty. To cap it all off, there is also a motion sensor (I guess to see when the cat last ate) and a temperature sensor.
What you need for this ESPHome-powered cat feeder project
As with just about any other ESPHome, this project uses an ESP8266. But dare I say that the electronics aren’t actually the hardest part of the automatic cat feeder? You will have to secure the dry-food dispenser, attach the servo motor, and make sure the whole thing can stand upright. And if your cat is anything like mine, you’ll have to make sure it can’t tip the feeder over.
This project doesn’t need any 3D-printed parts, which is nice for a change. But you will need a few pieces of wood, some screws, a coupling, and a multi-meter. The last item is necessary because this project uses a buck converter which has to be set to a certain voltage.
Firmware for the automatic cat feeder
The firmware for this project has also been made publicly available. Compared to featured projects I’ve highlighted in the past, this one doesn’t stand out as anything special. The code itself does very little except exposing the sensor values to Home Assistant. As the creator uses Node-RED for his automation, it wasn’t necessary to complicate things any more. The Node-RED flow has also been made available.
How to improve this ESPHome project
There are a few things that stand out to me for which I can’t find an explanation (and I want to avoid bothering the maker). Setting the buck converter to 7V makes no sense to me as the motor, the ESP8266, and the sensors can all require 5V. I would go with a powerful 5V power supply and, if needed for the added torque, use a step-up converter for the servo motor, which can take up to 6.8V.
The choice of sensors also differs from what I would go with. The DHT11/DHT22 should definitely be replaced with a BME280.
It might also have been fun to use an ESP32-CAM board to observe the cats while they’re eating. And finally, this project doesn’t make use of a single RGB LED. While I do think LED strips are overused, I think a simple light notifying when the feeder is empty would be neat.
All in all, I think this is a very neat project and one I’ll absolutely look to copy at some point in the future. I can’t do it right now because my cat is nagging me to come and check on his bowl.