Tomato Plant Watering System

Hi all, new to this forum but long time Micro:bit user, and I have a problem!

I am a teacher trying to do a project with one of my classes where students create a device that can automatically water a tomato plant based on soil moisture data collected from a soil moisture sensor. I am in the process of designing the system, but I am running into some roadblocks. I am not an expert in electronics by any means, so this is what I have come up with based on some basic online research:

The motor represents the 3V pumps we will use to transfer the water from a reservoir into the plant. In the final circuit the Micro:bit will be powered with an external battery pack, and an additional battery pack will be hooked into the breadboard to provide slightly higher voltage for the pump. The TIP120 transistor is supposed to allow pin 2 on my Micro:bit to activate the pump by increasing the current. If I hook the pump straight up to the pin it will not turn on. I suspect the Micro:bit cannot supply enough current (or perhaps voltage) to do this. From what I found online, the diode across the pump prevents blowback that could damage the pump when it is turned off, but I am not sure if that is totally necessary. My TinkerCAD works, but when I create this circuit in real life with the same components it does not work.

I know that I am misunderstanding or missing something, so please help me figure out what that missing link is!

Link to my TinkerCAD: https://www.tinkercad.com/things/lXmA4c1Uzau-tomato-plant-watering-system

When you say it doesn’t work, can you explain what you experience? Does the motor move at all or get warm?

It’s often helpful to test with a multimeter. If you don’t have one, you can buy a basic one from places like Amazon for ~$10 USD. Can you measure to see if there is a voltage being applied across the motor? If so, does it change in the way you expect (that is, is it “on” when the motor should be on and off otherwise)?

Some common problems with this sort of setup:

  • Incorrectly connecting the TIP120 (having it backwards). Double check where pin 1 is.
  • Having the diode backwards (allowing a short circuit). Make sure the “band” is on the correct side.
  • Bad connections in the breadboard or from the micro:bit. Sometimes the wires just don’t connect in the breadboard. Parts like the TIP120 often don’t push in well, the jumper wires may not connect well, and the connection to the micro:bit may not be making contact or may be causing a short circuit (some 'best practices" when using Alligator clips:https://makecode.microbit.org/device/crocodile-clips).

Also, can you provide info about the motor? Many motors may need more current than AAs can provide. AAs are pretty low risk, but it’s important to be very careful when working with many other types of power supplies (if you don’t have much experience with power supplies, be sure to have any major changes reviewed by someone who does).