grbl/grbl — Issue #59: Motors can only once in one direction before returning
Author: CNCmaker
Created: 2012-02-07 16:29:30+00:00
State: open

Hi all,
I have a weird problem.

Preliminaries:
1) I'm using Arduino Uno R3
2) I'm using grblshield V2
3) I'm using 3 ROB-10846 stepper motors from Sparkfun (400 steps/rev).
(http://www.sparkfun.com/products/10846)
4)I have been able to flash grbl to the arduino and I'm able to communicate with it through as serial port monitor. (I've been able to modify grbl settings such e.g $2)
5)All three motors move well when I send them a G00 command. (e.g. g00 x10). I've adjusted the motor current on all three motors.

The problem I'm having is:
I can only move each motor once in a particular direction. After that command I can not ask it to go again in the same direction. But it can move in the opposite direction.

WORKS: "g00 x10" then "g00 x-10"
DOES NOT WORK: "g00 x10" then "g00 x10"

What works also is. moving the motor. Resetting the board. Then moving the motor again.
WORKS: "g00 x10" then "reset board" then "g00 x10".

Given that the motors can move twice in the same direction if I restart in between I don't think the problem is mechanical.

I think it might be some weird software issue, but I cannot figure it out.

Help!

P.S.

The movement in forward and reverse direction does not have to be equal
E.g. "g00 x5" then "g00 x-5"

I have been using the arduino serial monitor for communications for the most part.

I've also tried the simplestreaming.py file with the following gcode file

G00
Z2
Y2
X2
Z2
X2
Y2