Controlling a pump using Arduino - circuit / components?

Good day,
I'm trying to design a device which will automatically water our Christmas Tree because I will be away for a week. I'm based in the UK and am 'beginner' level.

My intention is as follows:

  • Big bucket of water next to the Christmas tree.
  • Using Arduino Uno R3 + water level sensor (placed inside the tree stand) to measure the water level
  • Once it drops below a threshold, the pump will activate for a couple of seconds, sucking water from the bucket and filling the tree stand with water via a PVC tube.

I intend to power the Arduino + water level sensor via USB, using the 5v pin on the Arduino (or breadboard 5v power supply) to power the sensor.

I have designed something using a mini 5v pump which I had lying around. I believe I could power this pump from the 5v breadboard power supply (with the Arduino + water level sensor powered separately via USB-B cable).
My first question is... Is this design correct? It will help my understanding but in any case the pump is too small and unreliable for this application. (I'm sorry, it's in Frizting, I don't know how to do proper schematics yet...)

I want to use a 9v pump but I don't understand how to change this design to incorporate a bigger pump?

The desired pump is 3.5-9v 1-3W. It will need to run it close to max power to generate enough suction to move from the big bucket (which is about 40cm high) and through 1m of pvc tube to the tree stand.
I calculated that the pump will use 0.33mA at 9v / 3W. I believe I could power it using a 9v 1A 3 pin (UK) USB wall plug. The pumps wire has a USB connection.
I will plug it into a USBA female/female coupler (in parts list below), and in turn into a USBA Male -> TTL cable (also listed below) so I can somehow use the Arduino to control the power supply to the pump as needed. (I know it may be easier to just solder the wires instead of using USB but I don't trust my soldering)

The parts where I am stumped:

  • Is my initial 5v mini pump design correct?
  • Can I use the existing relay / L293D with a bigger 9v pump?
  • If so, how do I wire it etc?
  • Coding wise I should be OK.

Parts list so far:

Thank you everybody in advance for your help & support.

A chrismas tree watering system was built using only tanks and tubes a long time ago.
Using stuff like You suggest comes with the risc for flooding (worst) or the tree drying out ( sad but less costly to ivercome).

Hello, I've had a similar approach during the last weeks and got convinced to use a MOSFET to turn the pump on and off. You need a bigger power supply for a bigger pump and might feed the arduino using an DC-DC-stepdown-converter.
F.e. 12 V / 3A power supply, reduces the 12 V to the required 6 V for ardnio (Vin) and enough power for the pump, mosfet stears the pump.

Fritzing does schematics too. Just switch modes and all the components and connections will be carried over from the breadboard view for you. Then you just have to complete the drawing of the schematic, making it look similar to other schematics you have seen. Tip: use plenty of GND and 5V symbols around to avoid a spider's web of criss-crossing wires.

Please explain your thinking there. The "breadboard power supply" in your picture is not actually the source of power, is it? So what is?

Hard to say. It's certainly a strange arrangement to drive a relay with an h-bridge chip. Often one or the other is used, but not usually both.
It could be made to work perhaps. But they are an odd combination of components. Please post links to the actual components you have, or plan, to use.

Out by a factor of one thousand!

Impressive optimism! :rofl:

Hi everyone, thanks for your replies.
@Railroader - indeed I could make a siphon quite easily but I'm trying to make an Arduino project out of it to learn something too. Although you may be right about the risk! :smiley:

@falkgottschalk Thanks for the tips. I'll research that a little more as I have no idea about MOSFET's.

@PaulRB / @Paul_B I have a 5v breadboard power supply the same as this one:, connected to a 9v 1A UK 3 pin AC to DC power adapter.
It says the 5v power module max output is 700mA so I thought it should be enough to power a mini 5v pump

The reason I've set it up this way with the h bridge + relay is because of a tutorial in a sensors kit that i purchased a while back (the tutorial teaches you to hook up a DC motor with relay + h bridge in the exact same way as in my diagram, but didn't really explain why).
This is the relay i have: Relais 5V 10A 250VAC Songle SRD-05VDC-SL-C Mini Relay Module Arduino Raspberry | eBay
and the IC: L293d H Bridge Motor Drive IC - Brand New - UK Seller | eBay

And my bad - made a typo regarding the "mA". I meant 0.33A aka 330mA!

Many thanks!

An UNO neds a minimum of 7.5 volts at Vin. Better to create 5 volt and feed to the 5 volt pin.

Sorry to say no to your posting.
Pls. refer to the official product page at

or the PDF linked in the link above.

I agree that this is the lower limit and 7V might be better, but with 6V it will work...

Kits are full of parts that you would not buy once you have any level of experience. I guess the instructions show use of the h-bridge to drive the relay because that was the only way with the jumble of parts in that particular kit. The Uno can't drive that relay directly, and the kit includes no transistors, so they used the h-bridge.

I think for your circuit, the h-bridge can drive the desired pump directly and you won't need the relay or the breadboard power supply. But pay attention to the h-bridge chip while the pump is running. If it gets too hot to keep your finger on, you're going to need to attach a heatsink.

What else came in your kit? Were there no transistors at all? If there are, that's probably the easiest way to control the pump.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.