I'm having trouble regarding motor control in a project I'm working on.

It uses an ATMega328 DIP package on a PCB. The motors I'm using are small coreless motors and I'm trying to control them using Si2302ds N-MOS FETs. For the power supply I'm using a 3.7V(4.2V on full charge) Lipo. I've tested this setup with a promini before and the motors turned on and off just fine.

This time I'm having problems with controlling 1 motor out of the 4. I've attached 0.1uF caps across each motor terminal (see schematic). Them control pins used for the motors are pins 3,5,6,9. The problem occurs at pin 3. I tried running the blink program on pin 3 to pulse the motor on and off through the FET but all I get is a bit of clicking from the motor.

Things I've already checked relating to the circuit :

  1. FETs are soldered on correctly and made sure they aren't defective.
  2. Motor works fine prior to connecting it to the circuit.
  3. Disconnected the FET and motor from pin 3 and checked the output. It works fine on its own.

The puzzling thing is that only 1 motor (at pin 3) seems to struggle to come on. The rest work just fine. Also if I try and turn all 4 motors ON, it doesn't work. But if I turn only the 3 working ones on and keep the non-working one off they turn on perfectly.

Is the problem occuring due to noise generated by the motor? What could be the problem? I've attached the schematic to this post below.

enter image description here

  • 1
    Can you interchange any pins / FETs / motors? Eg, exchange the pin 3 and 5 connections to see if another pin drives 3's FET ok, or if 3 can drive another FET ok, and similarly for motors. – James Waldby - jwpat7 Oct 26 '16 at 21:35
  • Indeed, mix and match would be a good idea. If you mean "pager" type moters they can fail in interesting ways resulting in very high current drain. Also use a scope, or failing that a speaker with DC blocking cap to make sure the pin in question is constantly on - perhaps try a simpler program that does nothing but drive that pin and enter an infinite loop. – Chris Stratton Oct 26 '16 at 21:59
  • What's your clock speed? – Dat Ha Oct 26 '16 at 22:01
  • 1
    Can you post a higher resolution schematic? That is almost unreadable. – Nick Gammon Oct 27 '16 at 4:59
  • 1
    A couple of thoughts: 1) The issue only happens with the chip on the PCB so the PCB environment is suspect. The PCB itself was used in both trials, right? If so, its hdw is prob OK. 2) On the Arduino, did you power with 5V? From USB? Then the PCB/LiPo combo might be starved for power. 2) Pin 3 is the only one of the 4 using Timer-2 for PWM. That might mean that in that chip, T-2 is closest to its margins, so is the first one to fail. Try testing the LiPo voltage for droop under load. 4) Try pin-10 instead of pin-3; it uses Timer-1. Definitely not a fix :) but it might be instructive. – JRobert Oct 29 '16 at 12:04

Your Answer

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

Browse other questions tagged or ask your own question.