Example: Stepper_oneRevolution, motor chatters but does not step

Hi All,

I must be doing something fundamentally wrong here. I buzzed the leads on my 4-wire stepper motor (see photos) and it shows about 4 ohms resistance in the Black-Yellow and Red-Grey pairs. So I wired The Uno's pins D8-D11 as follows:
D8: Black
D9: Yellow
D10: Grey
D11: Red

I modified the example code to change the steps to 48 and slowed the motor speed down to 10 from 60. I also tried changing the pins in a group from for example 8,9 to 9,8 for Black-Yellow I have this 3.1v Bipolar stepper motor wired directly to the Uno pins 8-11. The motor shows life but never completes a step, it does this back and forth motion within the 7.5 degree. I have included some photos of the wiring and a link to the video of the failure. Any help would be greatly appreciated.

The Video: https://www.facebook.com/video/video.php?v=2116244199044&ref=notif&notif_t=video_processed

The motor: http://www.allelectronics.com/make-a-store/item/SMT-355/3.1-VDC-STEPPER-MOTOR/1.html

----------Start code example------------
/*
Stepper Motor Control - one revolution

This program drives a unipolar or bipolar stepper motor.
The motor is attached to digital pins 8 - 11 of the Arduino.

The motor should revolve one revolution in one direction, then
one revolution in the other direction.

Created 11 Mar. 2007
Modified 30 Nov. 2009
by Tom Igoe

*/

#include <Stepper.h>

const int stepsPerRevolution = 48; // change this to fit the number of steps per revolution
// for your motor

// initialize the stepper library on pins 8 through 11:
Stepper myStepper(stepsPerRevolution, 8,9,10,11);

void setup() {
// set the speed at 60 rpm:
myStepper.setSpeed(10); // dcat slowed it down

// initialize the serial port:
Serial.begin(9600);
Serial.println("V 1.1");
}

void loop() {
// step one revolution in one direction:
Serial.println("clockwise");
myStepper.step(stepsPerRevolution);
delay(1000);

// step one revolution in the other direction:
Serial.println("counterclockwise");
myStepper.step(-stepsPerRevolution);
delay(500);
}

----------end code example------------

You cannot drive a motor directly from the Arduino pins. There is not enough current available and can even damage the Uno. You need a "motor driver" that can amplify the current to the levels needed by your motor. Here is our Rugged Motor Driver, though there are others.

--
The Ruggeduino: compatible with Arduino UNO, 24V operation, all I/O's fused and protected

Thanks for the reply, I will try that, I have 2 motor shields kits I'm waiting on long header pins for. Am I correct in assuming I can drive a RC servo from the Uno directly?

Am I correct in assuming I can drive a RC servo from the Uno directly?

Not quite, you control a servo with a signal direct from an arduino but it is not driven from it. It is driven from a power supply. It is best not to use the same supply as the arduino but a separate one. However connect the grounds together.