Hello everyone,
So I’m new to this, and I’ve recently bought some stuff for a private pick and place machine.
In order to learn, I first wanted to try and control a single stepper motor and obviously did something wrong because when loading my script I first heard some kind of “click” and the driver started to smoke. I immediately unplugged the power supply and USB A cable. But first, here is a list of the components I used:
Arduino Mega 2560 R3, Ramps 1.4, DRV8825, Nema 17HS4023, an endstop switch from big tree tech and a 12V 5A power brick as a power supply.
I will walk you through the process of what I did and provide some pictures:
1) I connected the Arduino Mega with the Ramps board. I don’t think there is anything that can go wrong here because there is only one way to connect them. Then I plugged in all three jumpers for the x-portion of the board.
2) I plugged in the stepper driver regarding the pin descriptions on the Ramps and the driver itself and then plugged in the stepper motor and the endstop switch (even though I didn’t even aim to use it in my first script).
3) Then I connected the two 5A connectors on the ramps to an adapter for my psu.
4) Finally, I connected the Arduino to my PC and loaded the following script:
#define X_STEP_PIN 54
#define X_DIR_PIN 55
#define X_ENABLE_PIN 38
#define X_MIN_PIN 3
#define X_MAX_PIN 2
#define Y_STEP_PIN 60
#define Y_DIR_PIN 61
#define Y_ENABLE_PIN 56
#define Y_MIN_PIN 14
#define Y_MAX_PIN 15
#define Z_STEP_PIN 46
#define Z_DIR_PIN 48
#define Z_ENABLE_PIN 62
#define Z_MIN_PIN 18
#define Z_MAX_PIN 19
#define E_STEP_PIN 26
#define E_DIR_PIN 28
#define E_ENABLE_PIN 24
#define Q_STEP_PIN 36
#define Q_DIR_PIN 34
#define Q_ENABLE_PIN 30
#define SDPOWER -1
#define SDSS 53
#define LED_PIN 13
#define FAN_PIN 9
#define PS_ON_PIN 12
#define KILL_PIN -1
#define HEATER_0_PIN 10
#define HEATER_1_PIN 8
#define TEMP_0_PIN 13 // ANALOG NUMBERING
#define TEMP_1_PIN 14 // ANALOG NUMBERING
void setup() {
pinMode(FAN_PIN, OUTPUT);
pinMode(HEATER_0_PIN, OUTPUT);
pinMode(HEATER_1_PIN, OUTPUT);
pinMode(LED_PIN, OUTPUT);
pinMode(X_STEP_PIN, OUTPUT);
pinMode(X_DIR_PIN, OUTPUT);
pinMode(X_ENABLE_PIN, OUTPUT);
pinMode(Y_STEP_PIN, OUTPUT);
pinMode(Y_DIR_PIN, OUTPUT);
pinMode(Y_ENABLE_PIN, OUTPUT);
pinMode(Z_STEP_PIN, OUTPUT);
pinMode(Z_DIR_PIN, OUTPUT);
pinMode(Z_ENABLE_PIN, OUTPUT);
pinMode(E_STEP_PIN, OUTPUT);
pinMode(E_DIR_PIN, OUTPUT);
pinMode(E_ENABLE_PIN, OUTPUT);
pinMode(Q_STEP_PIN, OUTPUT);
pinMode(Q_DIR_PIN, OUTPUT);
pinMode(Q_ENABLE_PIN, OUTPUT);
digitalWrite(X_ENABLE_PIN, LOW);
}
void loop () {
digitalWrite(X_DIR_PIN, HIGH);
for(int x = 0; x<200; x++) {
digitalWrite(X_STEP_PIN, HIGH);
delayMicroseconds(500);
digitalWrite(X_STEP_PIN, LOW);
delayMicroseconds(500);
}
delay(1000);
}
Up to this point, I’m not sure if I damaged only the driver or even more. I only saw smoke coming from the driver and after unplugging it and removing the heatsink it looked like it was damaged:
I hope my description was clear enough to follow my process.
Can anyone tell me, by chance, what I did wrong and what I need to do to prevent this?
Kind regards
bt_Tama
So I’m new to this, and I’ve recently bought some stuff for a private pick and place machine.
In order to learn, I first wanted to try and control a single stepper motor and obviously did something wrong because when loading my script I first heard some kind of “click” and the driver started to smoke. I immediately unplugged the power supply and USB A cable. But first, here is a list of the components I used:
Arduino Mega 2560 R3, Ramps 1.4, DRV8825, Nema 17HS4023, an endstop switch from big tree tech and a 12V 5A power brick as a power supply.
I will walk you through the process of what I did and provide some pictures:
1) I connected the Arduino Mega with the Ramps board. I don’t think there is anything that can go wrong here because there is only one way to connect them. Then I plugged in all three jumpers for the x-portion of the board.
2) I plugged in the stepper driver regarding the pin descriptions on the Ramps and the driver itself and then plugged in the stepper motor and the endstop switch (even though I didn’t even aim to use it in my first script).
3) Then I connected the two 5A connectors on the ramps to an adapter for my psu.
4) Finally, I connected the Arduino to my PC and loaded the following script:
#define X_STEP_PIN 54
#define X_DIR_PIN 55
#define X_ENABLE_PIN 38
#define X_MIN_PIN 3
#define X_MAX_PIN 2
#define Y_STEP_PIN 60
#define Y_DIR_PIN 61
#define Y_ENABLE_PIN 56
#define Y_MIN_PIN 14
#define Y_MAX_PIN 15
#define Z_STEP_PIN 46
#define Z_DIR_PIN 48
#define Z_ENABLE_PIN 62
#define Z_MIN_PIN 18
#define Z_MAX_PIN 19
#define E_STEP_PIN 26
#define E_DIR_PIN 28
#define E_ENABLE_PIN 24
#define Q_STEP_PIN 36
#define Q_DIR_PIN 34
#define Q_ENABLE_PIN 30
#define SDPOWER -1
#define SDSS 53
#define LED_PIN 13
#define FAN_PIN 9
#define PS_ON_PIN 12
#define KILL_PIN -1
#define HEATER_0_PIN 10
#define HEATER_1_PIN 8
#define TEMP_0_PIN 13 // ANALOG NUMBERING
#define TEMP_1_PIN 14 // ANALOG NUMBERING
void setup() {
pinMode(FAN_PIN, OUTPUT);
pinMode(HEATER_0_PIN, OUTPUT);
pinMode(HEATER_1_PIN, OUTPUT);
pinMode(LED_PIN, OUTPUT);
pinMode(X_STEP_PIN, OUTPUT);
pinMode(X_DIR_PIN, OUTPUT);
pinMode(X_ENABLE_PIN, OUTPUT);
pinMode(Y_STEP_PIN, OUTPUT);
pinMode(Y_DIR_PIN, OUTPUT);
pinMode(Y_ENABLE_PIN, OUTPUT);
pinMode(Z_STEP_PIN, OUTPUT);
pinMode(Z_DIR_PIN, OUTPUT);
pinMode(Z_ENABLE_PIN, OUTPUT);
pinMode(E_STEP_PIN, OUTPUT);
pinMode(E_DIR_PIN, OUTPUT);
pinMode(E_ENABLE_PIN, OUTPUT);
pinMode(Q_STEP_PIN, OUTPUT);
pinMode(Q_DIR_PIN, OUTPUT);
pinMode(Q_ENABLE_PIN, OUTPUT);
digitalWrite(X_ENABLE_PIN, LOW);
}
void loop () {
digitalWrite(X_DIR_PIN, HIGH);
for(int x = 0; x<200; x++) {
digitalWrite(X_STEP_PIN, HIGH);
delayMicroseconds(500);
digitalWrite(X_STEP_PIN, LOW);
delayMicroseconds(500);
}
delay(1000);
}
Up to this point, I’m not sure if I damaged only the driver or even more. I only saw smoke coming from the driver and after unplugging it and removing the heatsink it looked like it was damaged:
I hope my description was clear enough to follow my process.
Can anyone tell me, by chance, what I did wrong and what I need to do to prevent this?
Kind regards
bt_Tama