DC motor patterns using Arduino Pro mini

Hey Guys! I am trying to develop my first project but I am really stuck. I need to develop vibration patterns similar to LED patterns using Arduino Pro Mini (3.3v) but I am having problems on deciding what power source (small as poosible) I use. And to supply enough current from the arduino to the motors. Please guide me towards choosing a suitable transistor for each motor as well.

I plan on using 6 small DC motors and I need to be producing different patterns wherby all six run together, alternates run, only one runs. etc.

Please, help!

Motor ratings (each): 3v, 70mA (max)

battery rating (I plan on using this): 3.7v, 80mA

If your battery can only supply 80 mA you're dead in the water already.

For transistors: a BC548 or equivalent small signal transistor will do just fine for these currents. You'll have about 0.6V drop over the transistor which is great as it brings down your battery voltage just that little bit to make the motors happy. Remember to add filter caps and flyback diodes to your motors.

I guess you actually mean a 3.7V 80mAh battery? The "h" is important. If it is a Lipo it will probably deliver enough current but it won't last very long between charges. A link to the battery specification would be useful.

If you don't need to change the speed of the motors just switch them on/off then the code will be quite simple. How do you intend to change between different patterns?

I'd look for any NPN transistor with reasonable max. collector current. The 100mA of a BC546 seems a little low to me, I'd rather use something like a 2N4401 and have more headroom.


Hey Steve! Here is the link to the battery specifications I am intending to use.

And here is the specification to the DC motors’.

Type: 0834
Material: iron
Size: 8 x 3.4mm Approx, wire 15mm(L)
Rated voltage : 3.0V DC
Rated current: 70mA Max
Rated rotor speed: 12000±2500RPM Min
Operating environment: -20℃~+60℃
Save environment::-30℃~+70℃

If this battery will not be enough then should I have separate battery for the arduino and the motors? Like I said I want to pack it in a small area hence I want to use a singular smallest possible battery.

As to your question about the pattern of vibration I will just pulsate a couple of them at a time using the I/O pins just like LED’s blinking. Maybe one by one. Ya, the code will be pretty simple.

But I am a complete newbie to this. Please guide me with the components. Thanks for your help man.

6 motors @ 70 mA = 420 mA.

Battery nominal 400 mAh - effective capacity usually about 70% so 280 mAh.

That means you can run your motors for just over half an hour on this battery.

If that 70 mA is stall current (it is said "max" but that's ambiguous) the current when running without load is likely about 20 mA so it would last a little longer.

So should I go ahead and connect the motors to the Arduino Pro Mini (3.3v) output pins?

Run time is not a priority for me right now. so 1 hour battery life would be enough.

Would this battery be sufficient for the Arduino as well as the motors.

Any other pointers you would like to give? What transistors/ MOSFET should I use?

thank you so much

That link shows a 400mAh Lipo battery with max discharge current of 1C (400mA). It should run 5 or 6 of those motors at once without problems.

There are smaller cells that could easily deliver much more current e.g. https://hobbyking.com/en_us/zippy-240mah-20c-single-cell.html

You will also need a lipo charger.

I think we've covered transistors. You need some but almost anything will do.