Aquarium Water Auto Refill
Intro: Aquarium Water Auto Refill
Summer is coming, in the heat, the aquarium water quickly evaporates.
These little device check the aquarium water level every ~12hours, and refill if need.
Size: 20x25mm / ~0.8x1 inch
Powered from 5V USB mini.
These little device check the aquarium water level every ~12hours, and refill if need.
Size: 20x25mm / ~0.8x1 inch
Powered from 5V USB mini.
STEP 1: The Parts
- A small PCB
- Attiny45 SU (1x)
- BC847 smd transistor (1x)
- Diode smd (1x)
- 3,5mm 1x2 terminal block (2x)
- 100K resistor 0805 (1x)
- USB mini connector (1x)
- G5V1 relay (1x)
- 9-12V brushless water pump (1x)
- 5V adapter (1x)
- 9-12V adapter (1x)
- Some aquarium air tube
- wire for sensors. (im using breadboard cable)
To programming Attiny
- Arduino panel
- 10uF capacitor
- SOP to DIP adapter to programming smd Attiny
- Attiny45 SU (1x)
- BC847 smd transistor (1x)
- Diode smd (1x)
- 3,5mm 1x2 terminal block (2x)
- 100K resistor 0805 (1x)
- USB mini connector (1x)
- G5V1 relay (1x)
- 9-12V brushless water pump (1x)
- 5V adapter (1x)
- 9-12V adapter (1x)
- Some aquarium air tube
- wire for sensors. (im using breadboard cable)
To programming Attiny
- Arduino panel
- 10uF capacitor
- SOP to DIP adapter to programming smd Attiny
STEP 2: Circuit and PCB
The PCB too small, i solder the USB to the other side of the PCB, so mirrored VCC and GND,
but not necessary i see this now.
The pump wiring:
-from the 12V adapter to the pump -
-from the 12V adapter to the relay terminal block one pin
-from the other pin of the realy terminal block to the pump +
but not necessary i see this now.
The pump wiring:
-from the 12V adapter to the pump -
-from the 12V adapter to the relay terminal block one pin
-from the other pin of the realy terminal block to the pump +
STEP 3: Arduino Code and Testing
Arduino code is very simple.
Check the water level every ~12 hour, and if water level low, the pump fill, until required water level reached.
Then stop measuring for the next ~12 hour.
This little device run over a month with my 30L aquarium and it works perfectly.
Using a 1L jug with a cover for the refill water.
I see no sign of electrolysis on sensor!
The code:
int relayPin = 2;
int sensorPin = 1;
int triggerPin = 0;
int sensorState = 0;
void setup()
{
pinMode(sensorPin, INPUT);
pinMode(relayPin, OUTPUT);
pinMode(triggerPin, OUTPUT);
}
void loop(){
digitalWrite(triggerPin, HIGH);
sensorState = digitalRead(sensorPin);
if (sensorState == LOW){
digitalWrite(relayPin, HIGH);
}
else if (sensorState == HIGH){
digitalWrite(relayPin, LOW);
digitalWrite(triggerPin, LOW);
delay(43200000); //~12hour delay.
}
}
I think lot of arduino programming attiny video on instructable, but here my short how-to:
http://youtu.be/IMkKb0Vu55A
And the device test:
Thank you.
ps: Sorry for my english.
Check the water level every ~12 hour, and if water level low, the pump fill, until required water level reached.
Then stop measuring for the next ~12 hour.
This little device run over a month with my 30L aquarium and it works perfectly.
Using a 1L jug with a cover for the refill water.
I see no sign of electrolysis on sensor!
The code:
int relayPin = 2;
int sensorPin = 1;
int triggerPin = 0;
int sensorState = 0;
void setup()
{
pinMode(sensorPin, INPUT);
pinMode(relayPin, OUTPUT);
pinMode(triggerPin, OUTPUT);
}
void loop(){
digitalWrite(triggerPin, HIGH);
sensorState = digitalRead(sensorPin);
if (sensorState == LOW){
digitalWrite(relayPin, HIGH);
}
else if (sensorState == HIGH){
digitalWrite(relayPin, LOW);
digitalWrite(triggerPin, LOW);
delay(43200000); //~12hour delay.
}
}
I think lot of arduino programming attiny video on instructable, but here my short how-to:
http://youtu.be/IMkKb0Vu55A
And the device test:
Thank you.
ps: Sorry for my english.
11 Comments
Gadgets_and_Gear 2 years ago
ErzNova 10 years ago
Really cool. This maybe a part for my plant growing and watering system. Why you are using the Attiny45 instead of a Attiny85 ?
planetleak 10 years ago
Attiny45 was in the drawer. :)
Now in the planning phase my adjustable plant watering system.
In the next few week i hope done and tested, then upload here too.
redcarpet 9 years ago
Hello. I would be very interested how you achieved your plant watering system - I am considering the same system too. Thank you for uploading your design and your story here. Kind regards.
tupv 9 years ago
What sensor did you use for measuring the water level? :)
planetleak 9 years ago
Im using two pcb pinhead, soldered on the cable.
No specific sensor need, you can use any wire as sensor.
Cool Cap Engineer 9 years ago
Nice simple design. Have you thought about using solid state relays instead of mechanical relays?
planetleak 9 years ago
Thanks.
Yes, but on this small PCB and for 9-12V devices im using these relays.
(Cheaper and smaller than SSR).
When controlling AC device, im usin solid state relay.
petruchito 10 years ago
KISS) one float valve will do same job,
two of them in series adds extra safety against overfilling.
planetleak 10 years ago
Yepp, but that realy nasty in the aquarium, especially in nano. ;)
The sensors size looks a jumper connector, can hide behind filter tube, in the corner...
kode1303 10 years ago
Your english is fine ;-)