My son brought over a new-to-be toy yesterday, a pile of parts that we assembled into a little CNC machine by Zen. Got everything assembled and started on the control, consisting of an Arduino with Ramps v1.4 populated for now with 3 stepper controllers. The Arduino ran our test program first try, with a blinking LED indicating that it was stepping each axis, but nothing mechanical happened. We eventually discovered that the motor controllers were not the same as the Ramps board was expecting, because the Sleep and Reset pins were active low instead of active high, so the controllers were not responding. A few bodge wires to pull those pins high got the whole thing humming nicely. But that was the end of our joy :^(
We tried loading Marlin and using that to drive the machine axes forward and back, but only seemed to get one pulse the first time we tried to move in a direction, then one pulse again the first time we tried to reverse directions. Didn't matter whether we sent one step command, 10 step, or 100, using the GUI or directly entering gcode. Then we tried the Repetier/Repetier Host code and got movement, but not correct operation. At first, regardless of commanded direction, the X axis only went one way and wouldn't stop after the specified number of steps. Although we thought we'd disabled axis stops, apparently we hadn't because the continuous stepping stopped when we jumpered the Ramps' stop pins to ground. However, we then noticed that commanding X axis motion resulted in not only X but also Y axis movement (at a much lower rate that sounded a bit syncopated compared with the continuous stepping of the X axis). Whilst investigating that, we noticed that the X axis motion was not actually what we commanded. Direction of rotation seemed to change more or less at random regardless of what we specified. Sometimes it went the direction commanded five or six times in a row, but sometimes it went the opposite repeatedly. We reloaded our test program that directly set the Arduino pins to specify direction and step, and were able to drive each axis the commanded number of steps in the specified direction with no errors. Reloaded the Marlin code and got the same single pulses as before, reloaded Repetier and got the same random directions.
It was late by this stage and we were fresh out of ideas as to what was going on or what to do next. My google-fu doesn't seem to be good today and I'm not finding anything like this behavior. Anybody have any experience or even just suggestions on what might be wrong? TIA