3

I have a RAMPS 1.4 tester code for Arduino MEGA, only need stepper motors and drivers connected. The code in a working setup moves steppers in both directions but in my setup does something wrong:

  • Extruder 0 , Axis X/Y only moves in 1 direction all time.
  • Extruder 1 , Axis Z works fine in both direction

I changed stepper drivers but always Extruder 0, Axis X/Y were moving in same direction all time.Tried 2 differents RAMPS 1.4 shields with same results in tester code, Sprinter or Marlin.

I have the code if someone wants, it works fine in other setups.

What could be the problem?

0scar
  • 32,029
  • 10
  • 59
  • 135
jimbi3d
  • 31
  • 1
  • Hi jimbi3d, welcome to 3DPrinting.SE! Strange to see that some rotate in one direction only. For X/Y/Z steppers this can be related to the endstops, if configured incorrectly, the steppers only move one way, but this cannot be the cause for the extruder stepper. I hope somebody has experienced this also and shares their knowledge. – 0scar Nov 05 '19 at 05:34
  • You could check the voltage on the stepper driver DIR pin when attempting to move in different directions - if they code to drive each stepper is identical, the DIR pin of the MCU might be broken. – towe Nov 06 '19 at 10:24
  • Oh, thanks so much , I tested the driver PIN in multimetter and yes that is the problem, I tested 2 connections Extruder 1 (working) and Extruder 0(not working) , Extruder 1 gives 0 and then near 5v , but Extruder 0 gives 0v always. So the problem is MCU, arduino right? – jimbi3d Nov 06 '19 at 15:03
  • Could also be a wiring problem. I have a Migbot 3D printer, it came with cables that were wired 1-2-3-4 on both ends. Two of stepper motor end needed 1-3-2-4 tho to drive the A & B coils correctly. (the extruder for sure, and I think the X axis (back and forth), or maybe the Z axis (up & down). Or perhaps both, it's been a while since we fixed it, and I recall we had lost one cable and the replacement had the wrong pinout. We found the problem when the printer wouldn't 'home' in the correct spot and was ignoring the limit switch when it got to what turned out to to be the wrong switch.) – CrossRoads Nov 06 '19 at 15:06
  • @CrossRoads I'm using same stepper motor for Extruder 1 and 0 , just disconnect from power and swap for mettering, so can't be a wiring problem right? Also swapped stepper drivers. – jimbi3d Nov 06 '19 at 15:10
  • @jimbi3d Yes, that does sound like a problem on the Arduino in this case. You can consult the pin definition file to find out which pin on the MEGA the "E0 DIR pin" actually is (hint: It's pin 28) and write a simple Arduino sketch to try and turn it on and off - adapting the "blink" sketch should work well. If it still outputs nothing, you'll need a new Arduino MEGA. – towe Nov 07 '19 at 08:26
  • @CrossRoads Wiring issues might explain the stepper motor not turning at all, or moving erratically. Since it does turn in one of the directions, the phases are generated in the correct order between the stepper driver and the stepper motor. – towe Nov 07 '19 at 08:28
  • The problem was solved, it was the faulty arduino board – jimbi3d Nov 17 '19 at 14:32

1 Answers1

1

As towe said, it could be a dir pin ( can be checked by metering the dir connection), but in my experience this behavior has usually been a limit switch issue (as 0scar pointed out). Try seeing if you have a limit switch setting somewhere that expects normally closed (assuming no limit switches are connected).

There is also another possibility that has to do with microstepping on some drivers, but i'm guessing you are going for a rudimentary no microstepping test right now (and have configured jumpers appropriately).

Trish
  • 20,169
  • 10
  • 43
  • 92
Abel
  • 39
  • 2