My stepper won't run

Hi, i am trying to make my nema 17 stepper motor run with an Arduino Uno and an EasyDriver but it won't run.

I am using a 9v battery and i also tryed to use a wall power supply.

The stepper is a Nema 17 (17hs13 0404s)

When i upload the program to the Arduino and the power the EasyDriver Led turns on but nothing else, the stepper does not move.

I also tryed different setup for the wires but nothing changes.
Do you have any idea what i could have done wrong?

I leave you some pictures, if you need additional info ask me!

Thank you :wink:

EDIT

I tryed this new setup with a wall power adapter (These are the related specs: AC 100V-240V DC 9V 1A)

This is the wiring setup

And this is the new code:

int smDirectionPin = 2; //Direction pin
int smStepPin = 3; //Stepper pin
 
void setup(){
  /*Sets all pin to output; the microcontroller will send them(the pins) bits, it will not expect to receive any bits from thiese pins.*/
  pinMode(smDirectionPin, OUTPUT);
  pinMode(smStepPin, OUTPUT);
 
  Serial.begin(9600);
}
 
void loop(){
  digitalWrite(smDirectionPin, HIGH); //Writes the direction to the EasyDriver DIR pin. (HIGH is clockwise).
  /*Slowly turns the motor 1600 steps*/
  for (int i = 0; i < 1600; i++){
    digitalWrite(smStepPin, HIGH);
    delayMicroseconds(700);
    digitalWrite(smStepPin, LOW);
    delayMicroseconds(700);
  }
 
  delay(1000); //Pauses for a second (the motor does not need to pause between switching direction, so you can safely remove this)
 
  digitalWrite(smDirectionPin, LOW); //Writes the direction to the EasyDriver DIR pin. (LOW is counter clockwise).
  /*Turns the motor fast 1600 steps*/
  for (int i = 0; i < 1600; i++){
    digitalWrite(smStepPin, HIGH);
    delayMicroseconds(70);
    digitalWrite(smStepPin, LOW);
    delayMicroseconds(70);
  }

Please post your program and also post a link to the datasheet for your stepper motor.

These links may help
Stepper Motor Basics
Simple Stepper Code

Please display your image(s) in your post so we can see it(them) without downloading it(them). See this Simple Image Guide

...R

Robin2:
Please post your program and also post a link to the datasheet for your stepper motor.

These links may help
Stepper Motor Basics
Simple Stepper Code

Please display your image(s) in your post so we can see it(them) without downloading it(them). See this Simple Image Guide

...R

Sure, sorry. I just modified my post. Hope someone will have some ideas.

A 9V battery is for a smoke alarm, not for anything related to Arduino, and certainly not for a motor. Post the current and voltage details of your "wall wart".

Stepping motors generally require separate power supplies providing 12 to 36 Volts at several Amperes.

Sere:
Sure, sorry. I just modified my post. Hope someone will have some ideas.

Please don't post pictures of text - just copy and paste the program and use the code button </>

You did not post a link to the datasheet for your motor.

Photos of your hardware are not suitable for showing wiring connections - they are two easy to misunderstand. Just make a simple pencil drawing showing all the connections and post a photo of the drawing.

...R

jremington:
A 9V battery is for a smoke alarm, not for anything related to Arduino, and certainly not for a motor. Post the current and voltage details of your "wall wart".

Stepping motors generally require separate power supplies providing 12 to 36 Volts at several Amperes.

I don't know a lot about the power requirements, so i read that a 9v battery was ok for 1 stepper, anyway i also tryed a different setup with the wall power adapter, these are the specs: AC 100V-240V DC 9V 1A

Robin2:
Please don't post pictures of text - just copy and paste the program and use the code button </>

You did not post a link to the datasheet for your motor.

Photos of your hardware are not suitable for showing wiring connections - they are two easy to misunderstand. Just make a simple pencil drawing showing all the connections and post a photo of the drawing.

...R

Ok, sorry again :smiley: i edited the post once again. Hope everithing is clear now. Thank you for your suggestions

Sere:
Ok, sorry again :smiley: i edited the post once again.

Please stop doing that.

Post new information in a new Reply so that we don't have to go back and re-read stuff.

The power supply connections and specs are not on your drawing.

And there is still no link to the datasheet for the motor.

...R

Your motor connections look terrible. If those loose wires ever separate or touch together while everything is powered, you will destroy the motor driver. It may already be destroyed.

Either solder the motor connections, or twist very well and tape/insulate them securely with electrical tape.
motor_conn.jpg

Note that the motor is 12V and your power supply is 9V. This will not work well, as about 2V is lost in the A3967 driver, and it probably won't work at all if the current limit on the motor driver is not set to maximum.

To what value did you set the current limit on the Easydriver?

motor_conn.jpg

Robin2:
Please stop doing that.

Post new information in a new Reply so that we don't have to go back and re-read stuff.

The power supply connections and specs are not on your drawing.

And there is still no link to the datasheet for the motor.

...R

There is a Photo with the specs of the motor, and i wrote the specs about the wall power adapter: AC 100V-240V DC 9V 1A

I just connected the power supply to the arduino port

I just connected the power supply to the arduino port

The motor power supply must be connected to the motor driver.

Connect all the grounds, and set the motor driver current limit to maximum.

jremington:
Your motor connections look terrible. If those loose wires ever separate or touch together while everything is powered, you will destroy the motor driver. It may already be destroyed.

Either solder the motor connections, or twist very well and tape/insulate them securely with electrical tape.
motor_conn.jpg

Note that the motor is 12V and your power supply is 9V. This will not work well, as about 2V is lost in the A3967 driver, and it probably won't work at all if the current limit on the motor driver is not set to maximum.

To what value did you set the current limit on the Easydriver?

I soldered the wires with few wire connectors after taking the photo so now they are ok.

I just changed the value to max for the current limit on the driver as you reccomended me.

GND and M+ of PWR on the driver are connected to Vin and GND on the arduino now, is that uncorrect? What do you mean with connecting all the grounds?

GND and M+ of PWR on the driver are connected to Vin and GND on the arduino

Correct. Does anything work now?

jremington:
Correct. Does anything work now?

No, it still not work.

The specs of the motor say 0.4 amps and 12v. That means that the minimum motor voltage must be 12v and 18v or 24v would be better. Just make sure not to exceed the max voltage of the Easydriver and also make sure to set the current limit on the Easydriver at 0.4 amps to protect the motor.

Have you studied the links I gave you in Reply #1?

...R

That means that the minimum motor voltage must be 12v

Not true. It will work on less, but produce less torque. The voltage rating of a stepper is largely meaningless, as they are current operated devices.

The voltage rating is the maximum steady state voltage across the windings, which results in the maximum allowed steady state winding current.

Robin2:
The specs of the motor say 0.4 amps and 12v. That means that the minimum motor voltage must be 12v and 18v or 24v would be better. Just make sure not to exceed the max voltage of the Easydriver and also make sure to set the current limit on the Easydriver at 0.4 amps to protect the motor.

Have you studied the links I gave you in Reply #1?

...R

Thank you for your reply, so it could only be that it has not enough V to power it on? I can't find an arduino adapter higher than 12v and 2a, but i will continue searching, maybe i will. If i can't find something better do you think it could be enough?

This is from the easy driver technical data:

"From about 150mA/phase to about 750mA/phase
Supply 8V to 30V DC power input"

so there should be no problem even if i will use 24v, but the input voltage limit for the arduino board is 6-20v.

Yes, sure i have read the links you gave me, thank you, and were pretty helpful, but i am a beginner, so i still cannot understand a lot.

jremington:
Not true. It will work on less, but produce less torque.

The voltage rating of a stepper is largely meaningless, as they are current operated devices.

The stepper does not move and never produces any kind of vibration or sound.
Now i know that the power is too low for this stepper.

But if it is not even moving, is it possible i've broken the driver somehow?
Maybe even soldering, it was my first time..

Now i know that the power is too low for this stepper.

The power is fine.

Either your wiring is wrong, the motor is nonfunctional or the motor driver isn't working.

Measure the resistance between the motor leads (using your multimeter) and tell us what it is.

jremington:
Not true. It will work on less, but produce less torque.

Have you evidence of that? How much less?

It seems to me that if the OP is having a problem it is rather pointless experimenting outside the envelope. When he has the thing working that will be the time to see what happens with a lower voltage.

...R