PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchYou can build an Arduino fish feeder that releases dry food on a schedule using an Arduino Uno or Nano, a DS3231 real-time clock (RTC), and a servo-operated gate or metering mechanism. The electronics are straightforward; reliable portions are the harder part. Calibrate the mechanism with your fish’s actual food, then supervise it for at least a week before relying on it. A servo command does not prove that food reached the tank.
How an Arduino fish feeder works
The RTC keeps time, the Arduino checks it against scheduled feedings, and a servo moves a gate, drum, or slide to release food. A one-shot flag prevents the same scheduled event from triggering repeatedly.
DS3231 RTC → Arduino → servo mechanism → measured dry-food portion
↓
optional display or buttons
This is a practical DIY project if you want to customize the schedule, learn Arduino, or add sensors. It is not automatically cheaper or more dependable than a ready-made feeder, especially if you must buy every part. Commercial units may include battery operation, enclosed food chambers, mounting hardware, or Wi-Fi, depending on the model. For example, EHEIM’s standard autofeeder is designed for scheduled dry-food dispensing and includes a ventilated food chamber.
Build the DIY version for customization and learning; choose a commercial feeder when quick setup and an enclosed, purpose-built unit matter more. Either way, portion size depends on the food and mechanism, not merely the schedule.
#1 Best Overall
- Easily Setup & 3 Kinds Smart Interval Feeding Modes: The Aoyar automatic fish feeder has 3 fixed feeding modes,just press the button on the settings page,it will automatically rotates feeding every 8/12/24 hours.Easily operation.You also can feed fish at any time via manaual modes ,enjoy the fun of feeding fish in your leisure time.(Small fish are recommended feeds every 24 hours).
- Adjustable Feeding Volume & 200ML Large Capacity: The aquarium fish feeder through adjusting the slider,easily control food amounts prevent overfeeding.Auto fish feeder capacity is 200ml, perfect fit your holiday.Auto fish feeder can feeding the fish at specified times when you're traveling or outing,Never worry about your fish is hungry.
- Upgraded Moisture Proof Lid: The fish food dispenser adopts the latest "moisture-proof" design, which can reduce more than 90% of water vapor entering the feed cylinder,effectively reducing moisture and clumping of fish food.Ensuring fish food keep dry and fresh status.
- Two Installation Methods: Our automatic fish feeding timer fit various types of fish tanks.You can fix it on the fish tank cover with thickness of 0 to 1 inch through adjustable clamp base,or using specially designed double-sided sticker to fix fish feeders on the cover of the tanks.360°rotating design makes you can adjust the fish feeder to the perfect place.
- Suitable for Variety of Fish Food:Auto fish food dispenser are suitable for variety of fish food, such as flakes, granules, powder and strips. No matter what type of fish food you prefer,our feeders are perfectly compatible.
Choose a dispensing mechanism
| Mechanism | Best suited to | Trade-offs |
|---|---|---|
| Servo flap or gate | A beginner prototype and small quantities of pellets or granules | Simple and inexpensive, but the amount released can vary with food shape, hopper fill, and opening size. Flakes may bridge or clump. |
| Rotary drum with a cavity | More repeatable portions and, with suitable design, different dry foods | A metering cavity controls volume better than an unrestricted opening, but the drum needs careful fit and calibration. Commercial feeders also use food chambers; see the EHEIM catalog for examples. |
| Sliding measuring chamber | Pellets or small, consistent granules | Can meter a fixed cavity, but alignment and sliding friction need attention. |
| Stepper-driven auger | A larger or more controlled mechanism | Offers commanded rotation, but requires a motor driver, more mechanical work, and jam protection. One Arduino Project Hub design uses a stepper, driver, RTC, and Nano. |
For a first build, use a small servo to actuate a gate or a fixed-volume chamber. Do not assume that holding a flap open for a particular number of milliseconds corresponds to a fixed mass of food.
Parts and tools
| Part | Purpose |
|---|---|
| Arduino Uno or Nano | Runs the schedule and controls the actuator. The Uno is easier to prototype on; the Nano is easier to fit into a compact enclosure. |
| DS3231 RTC module with backup cell | Maintains the clock through a controller power interruption. |
| Positional servo, such as an SG90 for a light gate | Moves the flap, gate, or drum. Select a servo suitable for the mechanism and load. |
| Regulated power supply | Provides stable power. Check the selected servo’s requirements; do not assume the board’s 5 V rail or USB can supply it reliably. |
| Hopper and dispensing mechanism | Stores dry food and meters it. Use a removable container that can be cleaned. |
| Wires, connectors, breadboard or terminal block, mounting hardware | Connect and secure the prototype. Keep temporary breadboards away from splashes. |
Useful additions include a manual-feed button, status LED, display, low-food sensor, mechanical stop, and splash-protected enclosure. Start with the simplest design you can test thoroughly. Arduino examples range from a basic servo feeder to systems with an RTC, display, buttons, and sensors, such as this Arduino aquarium project.
Wire the RTC and servo
For an Uno or classic Nano, connect the DS3231 as follows. Other Arduino-compatible boards may use different I2C pins, so check the pinout for your exact board.
Rank #2
- Accurate Food Amount :Compared with ordinary fish feeders with only one compartment, Petbank updated automatic fish feeder contains 16 grids in total, which is able to provide 15 individual meals, convenient to store a variety of food. Each grid holds up to 2g, ensuring high food accuracy. Note: Please don't store fish food at the outlet compartment
- 2 Setup Methods :Petbank aquarium feeder provides two different installation ways to fit different types of aquariums. You can either mount it to the tank by adjustable clamp base, or stick it on the tank cover with suction cup. Both methods are easy to operate, so you can choose any way to meet your needs
- Moisture-resistant Design: Unlike other auto fish feeder with one opening that is always on, making food inside wet or jammed easily, Petbank auto food dispenser is fully sealed against moisture, whose opening will close automatically after each feeding. This thoughtful design effectively keeps fish food dry. Petbank accommodates most types of food, such as particle feed, pellets, powders and small strips. Note: It’s not for shrimps and flakes
- Customized Feeding Time :With the help of intelligent LCD display and timer function, Our automatic fish feeder can be programmed up to 3 feedings per day, with maximum 3 grids per feeding. You can also set it to feed at any time of the day and have it deliver every single or two or three or four day. If you want to experience the fun of feeding, you can also choose manual feeding
- USB Rechargeable: Petbank rechargeable timer feeder features 700mAh built-in battery, which can be fully charged in 3 hours and then last up to 1 to 2 month. (type-C charging cable included). No need to buy batteries repeatedly, which is energy and cost saving
| DS3231 pin | Uno or classic Nano |
|---|---|
| VCC | 5 V |
| GND | GND |
| SDA | A4 |
| SCL | A5 |
Connect the servo signal wire to digital pin 9 in the example below. Connect its power wire to a regulated supply appropriate for that servo, and connect the supply ground to Arduino GND. The common ground gives the signal a shared reference; it does not mean the servo should draw power through the Arduino. The Arduino Servo library is a standard starting point for hobby servo control.
Servo startup or stall current can cause jitter, resets, or missed feedings if the supply is inadequate. Use a stable supply rated for the load, keep wiring secure, reduce mechanical binding, and avoid forcing the servo against a hard stop. Keep the controller and power connections above the tank, away from condensation and splash paths; add strain relief and arrange cables so water cannot run along them into electrical equipment.
Install libraries and set the RTC once
In the Arduino IDE, install RTClib through Library Manager if it is not already available. The sketch also uses the built-in Wire and Servo libraries. Avoid downloading an arbitrary library copy from an unverified source.
Rank #3
- This automatic fish feeder for aquariums has 3 programmable timers, one-touch setup, 200ML food dispenser, adjustable portion control, 7-14 day auto feeding, fits powder and pellet food, freshwater, saltwater tanks, betta, goldfish, turtle, offering hands-free vacation feeding solutions.
- Tailor-made for aquarium enthusiasts, this auto fish feeder eliminates vacation feeding worries for family travel, business trips, weekend getaways. It handles daily feeding for betta bowls, koi tanks, goldfish aquariums, turtle tanks, letting you enjoy trips worry-free.
- Unlike orthers feeders complex setup, inaccurate timers causing over or missed feeding, clogging, poor compatibility, our automatic fish feeder has 1s setup, precision feeding, 7-14 day capacity, moisture-proof lid blocks 90% humidity, universal fit, fixing all core flaws of similar products.
- High-quality ABS salt-fog resistant material ensures longevity, Sliding cover enables precise portion control to avoid overfeeding. Trusted technology earning 5-star recognition from global aquarium users.
- We stand behind our product with responsive customer support—We offer a 12-month warranty, 24/7 customer service. This premium automatic fish feeder is a thoughtful gift for aquarium lovers, eliminating vacation feeding worries. Zero risk, add to cart for worry-free fish keeping!
Set the RTC’s date and time during commissioning, then verify the result by printing or otherwise checking rtc.now(). A common mistake is leaving time-adjustment code active in the final sketch: it resets the clock whenever the Arduino restarts. In the example below, the adjustment line is commented out. If you temporarily enable it to set the time from the computer’s compile time, upload once, verify the RTC, and comment it out again before the normal upload. Account for the time zone you want feeding schedules to use; compile time is not a substitute for confirming the module’s displayed time.
Example: two scheduled feedings
This teaching sketch checks the hour and minute rather than relying on a single exact second. It marks each schedule complete for the current date, so a loop that runs repeatedly during the matching minute does not dispense repeatedly.
Free tools Windows power users keep installed
One-click scans. No signup required.
#include <Wire.h>
#include <RTClib.h>
#include <Servo.h>
RTC_DS3231 rtc;
Servo feederServo;
const byte SERVO_PIN = 9;
const int REST_ANGLE = 10;
const int DISPENSE_ANGLE = 70;
const unsigned long OPEN_TIME_MS = 500;
const byte FEED_COUNT = 2;
const byte feedHours[FEED_COUNT] = {8, 20};
const byte feedMinutes[FEED_COUNT] = {0, 0};
int lastYear = -1;
int lastMonth = -1;
int lastDay = -1;
bool completed[FEED_COUNT] = {false, false};
void resetDailyFlagsIfNeeded(const DateTime& now) {
if (now.year() != lastYear ||
now.month() != lastMonth ||
now.day() != lastDay) {
lastYear = now.year();
lastMonth = now.month();
lastDay = now.day();
for (byte i = 0; i < FEED_COUNT; i++) {
completed[i] = false;
}
}
}
void dispense() {
feederServo.write(DISPENSE_ANGLE);
delay(OPEN_TIME_MS);
feederServo.write(REST_ANGLE);
}
void setup() {
feederServo.attach(SERVO_PIN);
feederServo.write(REST_ANGLE);
Wire.begin();
if (!rtc.begin()) {
// Add an LED or other clear RTC-failure indicator in a finished build.
while (true) {}
}
// Enable for one commissioning upload only, then comment out:
// rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
}
void loop() {
DateTime now = rtc.now();
resetDailyFlagsIfNeeded(now);
for (byte i = 0; i < FEED_COUNT; i++) {
if (!completed[i] &&
now.hour() == feedHours[i] &&
now.minute() == feedMinutes[i]) {
dispense();
completed[i] = true;
}
}
delay(250);
}
Change the hour and minute arrays to the schedule you want, using 24-hour time. The servo angles and OPEN_TIME_MS are starting values for testing, not universal settings. The sketch’s completion flags live in RAM: if the Arduino loses power and restarts during a scheduled minute, it can forget that event was served. For a more robust unattended design, store the date and schedule index of the last completed event in nonvolatile memory, and define a deliberate recovery policy for resets. A short delay is acceptable for a simple prototype, but a state machine using millis() is preferable if you add buttons, jam detection, a display, or network features. The schedule logic should never dispense repeatedly just because the clock remains in the matching minute.
Rank #4
- Keep Your Pets Well-Fed: Don't let feeding time distract you from more important tasks! Our fish feeder automatic dispenser is here to help you not let your pets go hungry when you're busy, on vacation, or simply out of the house for the day.
- Programmable Up to 9 Feedings a Day: Set your pets to a routine with the help of our auto fish feeder! Even if you can't make it on time, it can be calibrated up to 3 feeding times a day with 3 rounds of the cup each.
- So Easy, Even Kids Can Do It: Our package includes clear and thorough directions for operating the vacation fish feeder. Once it's set, you can refill the food without removing it and simply reset the timer.
- Suitable for Big & Small Tanks: These FISHNOSH automatic fish feeders are ideal for different types of fishes, fish food, aquariums, and even ponds!
- A Gift for On-The-Go Fish Owners: Click 'Add to Cart' now and wrap our fish automatic feeder as an excellent gift for pet owners who have an active lifestyle, love traveling, and more!
The RTC backup cell preserves time; it does not power the Arduino or servo and cannot dispense food during an outage. If feeding during power loss is required, design and test a separate backup supply for the complete system.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Build and calibrate the dispenser
Use dry food only: flakes, pellets, or granules that fit the outlet and mechanism. Wet, frozen, or refrigerated foods need a different storage and dispensing approach. Food size and shape matter; manufacturers also warn that oversized dry food can clog an outlet. See the food compatibility guidance on EHEIM’s product information.
- Make a removable hopper with a narrow, controllable outlet. Keep food dry, use smooth surfaces, and avoid sharp edges or adhesives that could contaminate food.
- Mount the empty mechanism securely over the tank. Confirm that it cannot fall in, shift away from the water, touch the aquarium light, or block maintenance access.
- With the hopper empty, move the servo between its resting and dispensing positions. Adjust the geometry so it does not bind or need to force a hard stop.
- Load the exact food the fish eat. Run 10 manual cycles and collect the portions in a dry container. Weigh the combined amount and divide by 10 for the average per cycle.
- Adjust the cavity, gate opening, or mechanism geometry toward the desired conservative portion. Repeat the measurement; do not treat servo angle or open time as a universal gram setting.
- Test at different hopper fill levels and under normal room humidity. Run at least 20 consecutive cycles and check every portion for variation, bridging, and jams.
A fixed-volume chamber is usually a better starting point for repeatability than simply leaving a flap open for a set time. Even a chamber still needs testing with the chosen food: pellets, granules, and flakes do not pack or flow alike.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →Best Value
- Smart Interval Mode: Easily set the feeding intervals by pressing the "â–²" or "â–¼" button. Choose from 8 hours, 12 hours, 24 hours, or 48 hours to automatically spin the feeder once for each feeding cycle
- USB-Powered & Long-Lasting: The fish feeder supports convenient USB charging, eliminating the need for batteries. With a single charge, it can last for more than 3-6 months of continuous use, providing long-lasting functionality
- Customized Feeding Schedule: Program up to 4 feeding times per day and adjust the number of spins for each feeding. Feed your fish from one to three times per feeding session. For immediate feeding, simply press the MANUAL button
- Large Capacity & Adjustable Mount: The 200ml large-capacity container accommodates various fish feed types, including pellets, granules, and powders. Easily control the feeding amount by adjusting the slider, ensuring the right portion for your aquatic pets
- Two Flexible Mounting Options: Attach the feeder to the rim of the tank using the adjustable clamp or use the included sticker to adhere it to the tank's lid. The feeder intelligently dispenses food for your fishes and turtles, making it ideal for weekends or when you're away on vacation
Make it more dependable
- Keep food dry: protect the chamber from splashes and condensation, make it removable for cleaning, and do not leave food sitting in a humid location longer than necessary.
- Design against bridging: use a sufficiently wide outlet and sloped hopper walls. If food sticks, try a predictable pellet or granule, revise the slope, or add a carefully tested agitator. An advanced Arduino feeder design uses a servo jiggle and Hall sensor as part of stuck-food handling.
- Separate command from confirmation: the basic sketch knows that it moved the servo, not that food fell. An optical sensor, Hall sensor, or load cell can add evidence of a completed cycle, but each sensor needs its own calibration and can also fail.
- Plan for resets: avoid resetting the RTC on boot and decide what should happen if power returns during a feeding window. For more than a demonstration, persist completed-event data or use another explicit recovery method.
- Keep logic responsive: replace long blocking delays with nonblocking timing as features grow. A busy loop, stalled motor, or long display update can undermine exact-time scheduling.
- Do not confuse clock backup with feeder backup: the RTC battery keeps time, not food moving. A battery-backed feeder needs appropriately rated backup power for the controller and actuator, tested under load.
Troubleshooting
| Symptom | Likely causes | What to check |
|---|---|---|
| Servo jitters or Arduino resets | Weak supply, missing common ground, binding, long or poor connections, or servo stall current | Use a suitable regulated servo supply, connect grounds, reduce friction and angle, and test empty before testing loaded. |
| Feeder releases food repeatedly | The code triggers every pass through the matching minute, or the completion state is not retained | Set a one-shot flag and test through the full minute. For reset resistance, track the date and schedule event in nonvolatile storage. |
| A scheduled feed is missed | Exact-second matching, blocking work, reset, disconnected RTC, or incorrect time | Use a time window with an event guard, remove long delays, verify RTC time over Serial, and add a clear RTC-error indicator. |
| RTC time is wrong | Clock not set, adjustment code still active, backup cell issue, or wrong local-time assumption | Set it once, disable adjustment on normal boots, check the cell and module time, and define the time zone for the schedule. |
| Food clumps or will not fall | Humidity, narrow outlet, flakes packed under their own weight, or insufficient hopper slope | Protect the food from moisture, revise slope and outlet, test a suitable dry food, and consider an agitator only after testing. |
| Too much or too little food drops | Food geometry, fill level, gate opening, or a mechanism that meters by time alone | Weigh repeated portions at full, half-full, and low hopper levels; adjust the cavity or gate and choose a conservative amount. |
If food lands outside the feeding area or fish do not eat it, reduce the portion, check water flow and outlet placement, and schedule feeding when the species are active. Observe normal cycles in the actual aquarium before leaving the feeder to operate alone.
DIY feeder or ready-made unit?
A DIY Arduino feeder is a good fit when you want to customize a mechanism, add local sensors, or learn how the system works—and can take responsibility for testing and maintenance. Buy a purpose-built feeder if you need a quicker setup, enclosed food storage, or a mounting arrangement designed for an aquarium. A dual-chamber model can suit separate dry foods; a Wi-Fi feeder may offer remote control or alerts but adds network dependence and may require mains power. Arduino’s connected feeder example shows the Wi-Fi route, but network access should not be the sole safeguard against missed feedings.
No schedule guarantees the right nutrition or proves that food was dispensed. Use a kitchen scale when portion size matters, test any feeder with the actual food, and choose based on whether customization or ready-to-use operation is more important. Product features, regional availability, and pricing vary; check the manufacturer for the particular model and market.
Quick Recap
Before leaving it to run
- Run the servo unloaded and confirm that the mechanism never binds.
- Test at least 20 loaded cycles and measure portions at high, medium, and low hopper levels.
- Power-cycle the Arduino and confirm that the RTC keeps correct time and the feeder does not repeat a completed event under your recovery design.
- Leave the mounted feeder above the tank for several days; check for splash, condensation, damp food, and movement.
- Observe at least a week of normal scheduled operation before relying on it during an absence.
- Arrange a backup feeding plan. Do not make an untested prototype the only plan for valuable livestock.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




