So I ordered a DF Robot kit and got some help to put it together.

I want to control the wheels with my netduino.

What I want to do is simple. Press the netduino's button, and start the 4 wheels in the same direction, full power.

When I try to make it run with one wheel plugged in my breadboard, it works, the wheel move.

But when I add a second wheel, nothing happens. It seems that I don't have enough power to make the wheels move.

The netduino is powered by a 9volt battery. When I press the button, the netduino let the big power source ( 5 AA batteries , as suggested in the kit) flow in the motors. (this is how I see it correct me if I'm wrong.)

Here's a scheme that my friend made me back when I was playing around before I had this kit. ( note that I removed the resistor)

Basically, I'm doing the exact same thing with my df-robot kit.

The motors negative wires are all lined up in the #5 pin of the 4n35 transistor. The 4 positive wires are all lined up with the positive power source positive wire. (5 new AA batteries)

I'm using the 4n35 transistor that came with my netduino kit I ordered.

But before I go on and buy something along the lines of a motor shield, is there a way to get it working with my current setup ?

  • \$\begingroup\$ 4N35 isn't a regular transistor, it is an optocoupler. Do you have any other (power) transistors? Please find out the voltage and current ratings for your motors, it is under the specifications tab on the page you referenced. Please add an English link instead of the French link. \$\endgroup\$
    – jippie
    Jul 9, 2013 at 14:52
  • \$\begingroup\$ Thanks for the transistor I'll look into that. I think I have another transistor that was also included with the kit I ordered. As for the image... moteur means motor.......... \$\endgroup\$
    – Dave
    Jul 9, 2013 at 15:04
  • \$\begingroup\$ Shopping questions are off-topic. \$\endgroup\$ Jul 9, 2013 at 16:42
  • 4
    \$\begingroup\$ @LeonHeller "Is there a way to get it working with my current setup?" isn't a shopping question. Perhaps not the best question, perhaps not researched, perhaps not any number of things, but not a shopping question. \$\endgroup\$
    – mikeY
    Jul 9, 2013 at 18:22

1 Answer 1


There are a couple of issues with the proposed design:

  1. The 4n35 is an optocoupler, not a regular transistor. While the output side can conceptually be treated as a BJT, the maximum collector current rating for it is 100 mA, which may be insufficient for driving multiple motors, or even one motor, depending on the motor's current requirement.
    • For the switching element, use a Bipolar Junction Transistor (BJT) such as the 2n2222 (800 mA maximum continuous collector current) or a logic-level MOSFET such as the IRLML2502 (3.4A @ 4.5 Vgs, at least 2 Amperes at 3.3 Vgs) instead. Depending on the motor current requirement, and the number of motors to be run, you may need a higher current rated BJT or MOSFET.
  2. The NetDuino IO pins output 3.3 Volts, with an absolute-maximum current rating of 25 mA per pin, 125 mA total. Even if the 4n35 is to be used for optical isolation, which is its purpose, adding an indicator LED in series with the input of the 4n35 is not a good plan, as the voltage drop for the LED (e.g. 2.2 to 3.4 Volts) will leave too little headroom for the 4n35 internal IR LED (~1.2 to 1.5 Volts).
    • Using the LED in parallel with the input too isn't a good idea, since the current for the 4n35 (e.g. 20 mA) and for the LED (e.g. 10 mA) will add up as the load on the IO pin, thus loading the Netduino's GPIO pin beyond its rating.
    • In other words, either drive your indicator LED from a separate GPIO pin, or move it to the output side.

A high-level solution, leaving you to work out the specifics:


simulate this circuit – Schematic created using CircuitLab

  • (optional for isolation) Drive the 4n35 input from the GPIO pin with a series resistor to limit GPIO current to under 20 mA
  • Use the output to drive a MOSFET (or use a BJT with appropriate biasing if desired)
  • MOSFET (or BJT) as switch to power the motor(s).

Note that the motor will be on when the netduino output is low, and vice versa. The circuit can be reshuffled to eliminate this inverting of logic, if required.

  • \$\begingroup\$ It's also worth noting that you can very probably get rid of the resistor divider on the base and just leave it floating without any problems. \$\endgroup\$ Aug 9, 2013 at 13:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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