How to make an automatic fish feeder

In this tutorial we will see how to make an automatic fish feeder with arduino nano, a 28byj-48 stepper motor with its respective controller. In addition, a real-time PSTN or clock is included, ds1307 although it also serves the ds3231, which will allow us to configure the system to do the food download at the scheduled time, it includes the source code, the gerber file, the stl files to print the feeder, all totally free as always.

You may be interested in projects in Arduino, pic, robotics, telecommunications, subscribe videos with full source code and diagrams



We will use pins 2, 3, 4 and 5 for stepper motor control, and A4 pins with the SDA pin of the PSTN module, and pin A5 with PSTN SCL.


An Arduino nano

The Arduino Nano is a small board, complete and compatible with the test board based on the ATmega328 (Arduino Nano 3.x). It has about the same functionality as the Arduino Duemilanove, but in a different package. It only lacks a DC power connector and works with a Mini-B USB cable instead of a standard one.

Microcontroller ATmega328
Architecture Avr
Operating voltage 5 V
Flash memory 32 KB of which 2 KB uses the bootloader
Sram 2 KB
Clock speed 16 MHz
Analog pins IN 8
Eeprom 1 KB
DC current by I/O pins 40 mA (I/O pins)
Input voltage 7-12 V
Digital I/O Pins 22 (6 of which are PWM)
PWM output 6
Energy consumption 19 mA
PCB size 18 x 45 mm
Weight 7g

Pin diagram

Female pins


A 28byj-48 stepper motor with its controller

The parameters of this stepper motor are:

  • Model: 28BYJ-48 – 5V
  • Nominal voltage: 5V (or 12 V, value indicated on the rear).
  • Number of phases: 4.
  • Speed reducer: 1/64
  • Pass angle: 5,625o / 64
  • Frequency: 100Hz
  • DC Resistance: 50o ±7 % (25oC)
  • Traction frequency: > 600Hz
  • Traction-free frequency: > 1000Hz
  • Torque with traction: >34.3mN.m (120Hz)
  • Self-position torque: >34.3mN.m
  • Torque with friction: 600-1200
  • Drag in torque: 300
  • Insulation Resistance > 10M (500V)
  • Electrically ingilised: 600VAC/1mA/1s
  • Degree of ingesting: A
  • Temperature increase: < 40K (120Hz)
  • Noise: < 35dB (120Hz, no charge, 10cm)


Main specifications:

  • 500 mA rated collector current (single output)
  • 50 V output (there is a version that supports 100 V output)
  • Includes output return diodes
  • Inputs compatible with TTL and 5-V CMOS logic

Male pins

A 1 Kohm resistor

A module rtc ds1307


The PSTN module is based on the high-precision, real-time DS1307 clock module.

Through the I2C interface to communicate with singlechip, you can read year, month, day, week, hour, minute, second, you can read up to 2100.

The Control interface is I2C.

Recommended voltage: cc 5 V, the module direction is 0x68, the Control interface level is 5
V or 3.3 V. The DS1307 series real-time clock (RTC) is a low power full binary code (BCD) decimal code decimal time /calendar.
Plus 56 bytes of NV SRAM. Address and data are transferred in series via an I2C, two-way bus.
The clock/calendar provides seconds, minutes, hours, day, date, month and year information. The end of the month date is automatically adjusted for months with less than 31 days, including year-to-year jump corrections. The clock works in 24 hours or 12 hour format with AM/PM indicator. The DS1307
has a built-in power sensing circuit that detects power failures and automatically switches to the backup supply.
The timing operation continues while the part operates from the backup supply.


VCC supply voltage specification: 4.5 x 5.5 V;

Battery Voltage: 3.5V x 2.0; H

Igh level input: 2.1 vvcc + 0.3 V;

Low-level input:-0.3 x + 0.8 V;

Control Interface: 4-pin (GND, VCC, SDA, SCL), GND for ground wire, VCC for power supply, SDA for I2C interface data cable, SCL for I2C interface clock cable;

Real-time IC: DS1307Z; Independent synchronization: Through the I2C interface they communicate with MCU.

Battery: CR1220 battery;

Hole installed: 4m2 screw hole, diameter hole: 2.2mm, easy to install.

A socket for the Arduino nano

Printed circuit (pcb)


STL files



Remember to install the Adafruit RTClib.h library, and to avoid any incompatibility, I recommend installing the version in the image.

You may be interested in projects in Arduino, pic, robotics, telecommunications, subscribe videos with full source code and diagrams



Deja una respuesta