Believe it or not, I have modified my automated cat feeder by removing the microcontroller that came with it and replacing it with a Wemos D1 Mini (ESP8266) module. The cat feeder is now internet enabled. It gets the time from the internet to ensure the feeding times are accurate (I have 2 feeders for 2 cats and the stock MCU and clock is very inaccurate and over time they drift till they are minutes apart. This can be a problem if one cat gets fed and the other doesn’t as they end up squabbling). I can also check the feed has occurred and set feed times remotely.
I leave my cats at home when I go on holiday. They have the automated feeder, a water fountain and a cat flap to let themselves in and out. I also check in on them using Skype. The above setup is a lot cheaper than approx. £15 a day at a cattery.
Now you can expand it to scan for the rfid tag in their neck to make sure the right cat gets their food.
They don’t have RFID tags (Well one does, one doesn’t). Plus they eat the same food. The idea behind controlling it myself was more to ensure the feeds are at the same time. The existing microcontroller and RTC was very inaccurate and drifted over days and weeks till they were both way off. This meant one cat got fed and the other didn’t The larger cat would sometimes then eat the second load of food too, pushing the smaller cat out of the way. If they both get fed at exactly the same time then there is no arguing.
I only got one cat, but I also did this a few years ago. The first version used an arduino ethernet, but recently I made a new controller based in esp8266 and am atmega 328p
Why would you need both the ESP8266 and an Atmega328P ?
@Mike_McRoberts it isn’t really needed either, but I wanted to try having them both communicate with each other. This was mostly an experiment for something bigger. Because at some point, I want to make my own garage door controller, because the one build into the one I got is pretty bad. Then I want the Atmega to just control the door and handle endstops, torque monitoring and the other sensors. And then have the ESP8266 to do the communication. So the Atmega will only get a command to open or close, maybe position too if I put an encoder on the motor.
The ESP8266 on its own can do all of that far better than an Arduino can. Get yourself a Wemos D1 Mini and have a play with it.
@Mike_McRoberts the Esp8266 can do it exactly as good as an atmega can do (they both run arduino) but having the controlling microprocessor connected directly to a network can become a safety issue, which is why the ESP8266 is connecting to the network and does all the communication, so the atmega only takes care of running the motors it is connected to.
I don’t need any boards with the ESP8266 on, I got plenty of boards I designed myself to play around with.