Home > Circuits > Automatic Fish Feeder
Modified:20:46, 22 October 2013
I was asked if I had a circuit which would turn on a motor for a fish feeder every 1-3 hours for about 20 seconds. I didn't, so below is a circuit that does exactly that. Basically it's a cycle timer, which switches on a relay for between 10 to 20 seconds, and is triggered every 1, 2 or 4 hours.

I've not actually built this as he no longer keeps fish (!) so haven't checked the PCB.

The circuit is shown below and is based around a binary counter (with astable) and a monostable.


The circuit is easily understood by following the block diagram.

IC1 forms a the counter with C1/R2/VR1 forming the astable for the clock of the counter which is built into the IC. This needs to be set to a certain frequency by VR1 to obtain the correct timings (see right).

Q1 is the driver for the the LED to provide indication that the circuit is counting.

The counter is a binary type and has lots of output stages. The outputs from Q12-14 can be selected by SW1 to give durations of 1, 2 or 4 hours.

When the selected output goes high, the signal is inverted by Q2/R7 to provide a low going signal for the monostable.

The monstable is a standard 555 type giving a time from approx. 11-22 seconds using VR2. This can be adjusted further by altering R8 or/and VR2 (see right).

The output of the monostable goes high when triggered, switching on Q3 which drives and activates the relay.

The motor can be wired in series with the NO/COM connections of the relay and can be of any voltage required since it is electrically isolated from the circuit..


Take the first option, 1 hour, which is output Q12. This goes high after (2^12) = 4096 pulses from the astable.

Therefore, to give a duration of 1 hour (3600 seconds), the astable must have a cycle time of

3600/4096 = 0.879secs.

Using a Timer or an Oscilloscope, set VR1 so that the LED pulses once every 0.879secs, or as close as you can.

Since this is a binary counter , output Q13 goes high after twice Q12, and Q14 after twice Q13.


The monostable time can be calculated using

Time = 1.1 x C x R

It is easier to calculate values using Mohms and uF rather than ohms and Farads.

So in this case the minimum time is

Time = 1.1 x 100 x 0.1 = 11 seconds

Below are details of the components, their positions and how the PCB connects to external parts..

PCB Track Layout - viewed through PCB, size to 100mm x 45mm

PCB Component Layout

Designed and Written by Phil Townshend 2006
Back to Circuits page...

www.edutek.ltd.uk - Working Electronics For Students & Teachers