1. I found this stepper motor (It may have been in an old microwave oven). I didn't find the datasheet for this motor, so I would ask if someone recognise this model.

  2. I'm new in electronics, so I'd really like to try this motor, but currently I only have some TIP41 NPN BJTs. Can someone show a simple diagram on how can I control this stepper motor with arduino using only TIP41 transistors?
    EDIT: Full part number is MSCS048F83. enter image description here

  • 2
    \$\begingroup\$ The full part number is a bit ambiguous; can you add it to the question? (It starts MSC I believe). Vendor page nidec-sankyo.co.jp/english/product/motor/stm.html \$\endgroup\$ – Peter Smith Jan 29 '17 at 14:52
  • \$\begingroup\$ @PeterSmith I edited the question \$\endgroup\$ – dnnagy Jan 29 '17 at 14:57
  • \$\begingroup\$ MSCS048 segment definitely exists. The f83 variant looks almost impossible. \$\endgroup\$ – Bradman175 Jan 29 '17 at 14:58

First, you cannot "just" use transistors. You'll need some resistors as well. Plus, you need to get a cheap DMM in order to identify the wire functions.

With the DMM, identify the common wire among the 5 which come out of the motor. This will have the same resistance to the other 4 wires. As an example, arbitrarily mark your wires A, B, C, D, and E. Now connect the meter to A and measure ohms to the other 4. Let's say you get AB = 10, AC = 10, AD = 10, and AE + 10. Bingo! You're good. But let's say you get AB = 10, AC = 20, AD = 20, and AE = 20. B is your common wire, and you should verify this by doing your measurements again. Mark your common wire so you don't lose track of it.

Now make a set of 4 drivers, using 2 TIP41's and a 500 ohm resistor, like so


simulate this circuit – Schematic created using CircuitLab

And no, you can't just use a single transistor.

The triangle symbol is ground, and it must connected to the Arduino ground. Now connect your motor like so


simulate this circuit

The 4 drivers must each be connected to an Arduino digital output. The 4 outputs should be driven so that 2 are high and 2 are low. The details of sequencing the outputs (which is important) you need to look up on the web. Try "stepper motor drive sequence".

As shown, you ought to get motion from the motor, but not necessarily a lot of power. It is likely that the motor requires a higher voltage than 5 volts, but not necessarily. If so, you'll need to replace the 5 volt motor connection with a higher voltage power supply which can also provide enough current.

  • \$\begingroup\$ Of course I have some resistors too but I don't have specific ICs for stepper motor driving. So your answer is perfect. \$\endgroup\$ – dnnagy Jan 29 '17 at 15:39
  • \$\begingroup\$ If the current is low enough (100-200mA) you can replace all the old fashioned transistors and resistors with a single cheap ULN2003A. It also has the flyback diodes which you might need, especially for >5V supply. \$\endgroup\$ – Spehro Pefhany Jan 29 '17 at 15:52
  • \$\begingroup\$ @DNagy - For what it's worth, if you can get a lower-power (and lower leakage) transistor for the first stage in each driver (Q1) that would be a good idea, such as a 2N2222 or 2N3904. Also, the driver will drop about 2 volts when fully on, so you should keep an eye (or finger) on Q2, and if it gets too hot to touch you might consider a heatsink. \$\endgroup\$ – WhatRoughBeast Jan 29 '17 at 17:17

This motor might be a five-wire stepper motor. Such a motor can be driven with four NPN power transistors or four N-channel MOSfets.
You should measure coil resistance with an ohmmeter. Measure resistance between each wire pair. Don't compare wire colour to other motors - colour coding is unreliable. You might see a resistance sequence something like this:

  • pink-to-blue: 25 ohms
  • pink-to-black:25 ohms
  • pink-to-gray: 25 ohms
  • pink-to-purple: 12 ohms
  • blue-to-purple: 12 ohms
  • blue-to black:25 ohms
  • blue-to-gray: 25 ohms
  • black-to-gray: 25 ohms
  • black-to-purple: 12 ohms
  • gray-to-purple:12 ohms


simulate this circuit – Schematic created using CircuitLab

It is apparent that this example has a purple wire that is common to individual coils of pink, blue, black and gray, because its resistance is lowest, about half the others. So pink, blue, black and gray coils are driven with transistor switches to ground, while the purple wire is fed with the positive end of the DC supply.
However, sequencing of the switches to get smooth, proper rotation in either direction will have to be worked out by trial-and-error. Once you have determined which wire is common, you can likely step this motor by hand-switching wires to your supply, and watching which direction the motor steps. Find the sequence that always steps clockwise. Reversing that sequence should step counter-clockwise.
Then replace the switches with transistor switches. Add flyback-protection diodes across each coil too.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.