The Aqua-Replenisher!




This is, fortunately, my first innovative instructable; in other words, it's one of the few things that I've made that isn't just cool, but useful too.

So, one of the few flaws with small aquarium tanks, as I quickly discovered shortly after buying an 'aquascape' setup with some tropical critters, is that the small amount of water evaporates very quickly. Ergo, you need to add room-temperature spring water every so often, and I became too lazy for that. What did I do? I made the AQUA-REPLENISHER! It simply adds water when the water level in the tank gets too low. The system uses:

  • An ultrasonic rangefinder
  • A small water pump w/ driver circuit
  • BS2e microcontroller
  • Simple solar power circuit w/ solar cell & lead-acid battery
  • RGB LED as a status indicator (for debugging)

And as you can see, it runs on solar power. It uses so little power that all it needs is a small solar panel and a 6.5V lead-acid battery.

The picture doesn't look like much? This is my kitchen, so you're not supposed to know it's there! Look at the next few steps to see the components involved.

Step 1: Do You Need It...?

I decided I would make this note right off the bat.

This is only needed for small tanks; probably less than 5 gallons, or even fish bowls (for goldfish, tetras, etc.). It is not necessary for larger tanks because by the time the water level falls a couple inches in, say, a fresh water 80 gallon tank, you will need to clean it anyways. So with that in mind, we will continue...

Step 2: The Stuff

The materials needed for this project, in specific, are listed here:

  • Small pump
  • Microcontroller (For this project I used my BASIC Stamp II)
  • Ultrasonic rangefinder w/ a 3-wire sensor cable
  • 6.5V lead-acid battery
  • 9V solar panel
  • Blank PCB
  • Water bottle or some sort of container to use as a reservoir
  • Air pump tubing (clear tubing used for aquarium air pumps)
  • Tin or container to hide all the electronics

Small Electronic Components:

  • Wire
  • Banana jacks/screw-down terminals (a total of 2 pairs)
  • 220 ohm resistor
  • 500 ohm to 1k ohm resistor
  • Diode
  • TIP 120 Darlington Transistor
  • RGB LED (common anode)
  • High-capacity capacitors (you probably want a total of ~8,000uf worth; I used about 7,800uf of caps)

And of course, some of these can be substituted. The battery can be of any voltage (that the regulator you're using can handle). If a distance sensor is to be used for this, I don't think an IR sensor can be used die to water's reflectivity. I used screw-down terminals, but they're not necessary; they just make connections a little easier. The solar panel can be of any voltage as long as its voltage matches that of the battery.

Now, you've probably been wondering about the pump. A pump like this is not hard to get. Where? One day, I saw a swiffer 'wet-jet' mop sitting in our good neighbors' garbage can, and I knew some day the pump inside would come in handy. This is the day! It's not the strongest pump, but it gets the job done. I had to add some tubing, and I glued it with 'Loctite Marine Glue'; That's the grey goup on the pump assembly. If you use this pump, BE CAREFUL because it has a really really sharp needle-like barb that it uses to connect to the soap reservoir in the swiffer mop (I learned the hard way).

Step 3: Details - the Battery, Motor Driver Circuit, and Indicator LED

I had to make a little 'adapter' so-to-speak for the battery to connect it to the BS2 development board. If you need to do the same, just be sure to use heat shrink tubing to insulate the connections so they are not shorted.

The motor driver is very simple; all you need is a TIP120 Darlington Transistor, a diode, and a 500-1k ohm resistor.

As for the indicator LED, it is a 'common anode' RGB LED. You need to connect the 220 ohm resistor to the longest lead (+) of the LED before connecting that to VCC (+). The three remaining leads (red, green, and blue) all go to the microcontroller, and are turned on by bringing them LOW in the software.

Step 4: Power - the Solar Panel

I decided in the beginning that it would probably be unnecessary to use a wall transformer (wall wart) for this because it will use so little power. When not active, the BS2 goes to 'sleep' and power consumption goes down to about 250ua (micro amps; it's probably a little more with the other components). The battery is 4.5Ah (amp-hours) so technically if the BS2 were ALWAYS in sleep, it would last for about 2 YEARS. But since it uses the motor and LED's every so often, it's a lot lot less than that.

I put together a little circuit that consists of some capacitors (in series) and a diode. The capacitors are to aid in charging of the battery, and the diode is to protect power from going from the battery into the solar panel at night, which could damage it. The total capacitance of this circuit is about 8,000uf.

**IMPORTANT** UPDATE: For some odd reason, I overlooked the tiny, green SMD (surface-mount) LED on the carrier board for the BS2. Well, it turns out it uses like 30ma, which, with the solar panel I'm using, drains the battery in a few days. Be sure to have NOTHING running when the BS2 is in sleep mode, or that little bit of drain will make using the solar panel useless!! I'll have to put it all on a breadboard...

Step 5: Bring the Pieces Together

This is the whole assembly. Now all that needs to be done is find something to enclose it all in so it doesn't look ugly. I used a lindt chocolate tin container I found lying around. But since it is metal, I isolated each component with zip-lock bags (the microcontroller, battery, etc.) from each other so nothing gets shorted out.

For the water reservoir, I used the biggest water bottle I could find (it's a poland springs water bottle; the squirt kind). Using a larger one would obviously mean less fill-ups. I didn't need to secure the pump to the water bottle because the hose somehow held it in place.

Step 6: Add the Sensor and Hide It

The last thing remaining is to add the sensor to the tank. Do this CAREFULLY or you'll drop it in the tank and destroy it. Glue the end of the sensor cable with hot glue to the rim of the tank, then pop in the sensor.

*IMPORTANT: You will have to adjust the threshold value for your specific tank water level.

I would love to have an enclosure to protect the sensor from splashes; I'm currently working on what to use for that. If anyone has some ideas, let me know. I also need some way of clipping/mounting it to the tank so it can be removed when cleaning the tank, because it can't be glued on over and over again.

Finally, hide the wires and shove the end of the pump hose into the tank, and secure it at the top. There was a small notch on my tank which, I think, is meant specifically for these tubes, so i squeezed it in there.

Step 7: Program It, Use It

Here's a run-down of how it works:

Every 12 hours, it checks the water level using the ultrasonic sensor. If it is fine, it will flash a green light and go to 'sleep' for 12 more hours. If not, it will add water, reading the sensor as it goes, and when it is at the desired level, it shuts off and goes back to sleep. If a long time goes by and it senses that the water level has not risen, it will flash an orange light indicating an error, sleep for 5 minutes, and repeat the process all over again until you notice and solve the problem. It could be that:

1) The reservoir is empty
2) Something is wrong with the motor/circuit
3) The tank is completely empty for some bizarre reason

This feature will protect the pump from filling the tank until it overflows (if the reservoir is big enough/has enough water in it to do so).

Lastly, and definitely not least, put the solar panel in a good location. If you were wondering about the image comment in step 5, I have a sun roof in that room, which is ideal for my solar panel. You can't see it in any of the pictures, but it sits on top of my fridge to gather the light to charge the battery (very very slowly, but surely). The solar panel and batter should keep the setup self-sufficient (except for the reservoir refills)....

Here's a video of it in testing:



    • Pets Challenge

      Pets Challenge
    • Classroom Science Contest

      Classroom Science Contest
    • Frozen Treats Challenge

      Frozen Treats Challenge

    27 Discussions


    4 years ago on Step 3

    I ran across this while doing some research for my own project. Is the diode parallel with the motor what I'm seeing called a flyback diode to keep the inductive current from damaging the LEDs? I'm discovering this seems to be a common setup, but have no idea how one determines what size diode is needed.

    I just ordered an aquarium float valve yesterday to make something like this. I thought about making an instructable for it. I like the timer idea to save your battery.


    Hey loved the Instructible but the ultrasonic range finder and custom circuit is overkill you can buy sensors made for frequently flodded basements that detect the resistaince of water and omit a loud sreeching sound to inform the owner his basement is flooding.


    9 years ago on Step 1

    EXCEPT if it is a saltwater aquarium. These are direly necessary if you don't pay attention or don't have time to refill the tank at least once a week.


    9 years ago on Introduction

    Great idea............. I hate toping off my tank.... our cat has decided that the 20 gallon fish tank is a great place get a drink.... consequently the water level drops quickly.  I applaud your idea, but I think maybe its a little bit overkill on the electronics.  Wouldn't a simple float switch be a much easier solution.  Think toilet refiling valve for truly analog or a float switch like the ones used in sump pumps.  A float, say a ping pong ball on a shaft with a limit switch attached would accomplish the same thing....... Please advise if I am mistaken.  Serioulsy awesome idea though... and I love the solar powered pump.  Gonna have to try this.

    1 reply

    Reply 9 years ago on Introduction

    Oh yes. I second-guess myself on this design as we speak. I think I was really bored that day, and I wanted a quick fix. This, ironically, was the easier solution (because I didn't have the hardware to make the simple version everyone is suggesting here)! It is overkill, no doubt.


    10 years ago on Introduction

    i'd use a system of bottles for this- have them all connected at the bottom, by tubing, and when the water level in one bottle lowers, the rest lower to compensate. this way, you could have 5-6 times the capacity. to protect the ultrasonic sensor... i'd just get a can of paint-on rubber and cover all the parts except for the front of the emitters and recievers. fortunately, most sensors are designed in a way that none of the parts, even WITH the actual sensors exposed, if it is in a casing/coating of some kind, it will not be affected by water coming in contact with the sensors.


    10 years ago on Introduction

    This is very nifty, but everyone should remember something very important! As water evaporates, the minerals, bacteria, and other gunk that makes the water "hard" does not. This means that if all you ever do is add more water as it evaporates, you are just increasing the hardness of the water, quite quickly in fact. This would work for small tanks, but should not be a replacement for weekly water changes (taking some water out, then replacing it with new water) Like I said, brilliantly done, I just dont want anyone to wonder why their fish died if they didnt also do regular water changes while using this.

    1 reply

    Reply 10 years ago on Introduction

    Very good point, x2percentmilk - don't forget about the beneficial bacteria, you may want to top up the aquarium with perhaps a capful of Nutrafin Cycle or equivalent once a week.


    10 years ago on Introduction

    Thanks for the 'ible. I had the same idea, but I can do it with a 2L bottle and piece of packing tape. Fill bottle with water, turn upside down with spout just under the water. Tape in place. When water level in the tank falls below the spout, the water from the bottle will come out, but only enough to block the spout once again. When the water level rises to cover the spout, water flow ceases.

    1 reply

    Reply 10 years ago on Introduction

    Correct, correct. Yes, that can be done. The problem with that: You have to have one huge water container looming over your fish tank (in this case the replenishing source needs to be higher than the tank). Yes, you can make it look good, but I am not nearly as good at being aesthetically oriented than I am functionally oriented, and I didn't have paint and stuff to make the water container look good, so I just stuck it behind some tank equipment instead where you can't see it. Good idea though; that's how those cat water dispensers work. To answer all the 'over-complicated' comments: (once again, ironically) I happened to have the lead-acid battery, solar cell, etc. I did NOT have a wall transformer with the right output. But yes, to answer your comment hgorijal, you are right.


    10 years ago on Introduction

    ive got a massive terriapin tank im guna make a big one good instructable


    10 years ago on Introduction

    Very nicely detailed Instructable. However, it is over-complicating simple things. A Lead-acid battery and solar charger is an over kill for something that uses so little power once in 12 hours. A simple and more cost-effective solution is to plug it in directly to a wall transformer. The cost of the electricity it uses over it's entire life time is much lower that the cost of solar cell, battery and cables. you can also get rid of all the electronics and make a simple pressure/inflater switch (look into your bathroom flush for inspiration) to switch on the pump when ever the water level goes down.


    10 years ago on Introduction

    If you have them, an ultrasonic rangefinder and a Basic Stamp are fine. If you're going to buy the parts, they are massive overkill. A float and a microswitch can replace all of the electronics. These tiny snap-action switches, salvagable from printers and VCRs, can switch several amps with an ounce or two of force, so you don't need the transistor to drive the motor. Mounting the float on a lever will let you use a small float and still get enough force to operate the switch.