X axis not working

Is anyone else having problems with the gantry not staying perpendicular to the x-axis when moving along the x-direction. It is as if one motor goes faster than the other and the whole thing gets cockeyed and stalls out. Any suggestions?
Thanks in advance for your help!
Flavio

I have the issue if I allow it to go to fast. Have you tried reducing your max speed?

I have tried slowing it down and reduced the acceleration steps. The problem persists. If I push on the motor on the side with the cables in the direction of motion it seems to help. I have adjusted the eccentric spacers (which are a pain after all is assembled) with no luck. It seems the x-axis motors are a bit undersized (?). I noticed an adjustment screw on the stepper motor controller. Is that a possible remedy?
Thanks again for your collective help!
Flavio

Hey @flavkirst
In your first post you wrote [quote=“flavkirst, post:1, topic:1683”]
It is as if one motor goes faster than the other […]
[/quote]

This sounds like one of your X-Motors has a different step size.
Please check the marked jumpers under the stepper drivers (if there are any). There should not be any Jumper connected! (Or at least the same for X1-X2).
Also check pins are bend and have an el. connection.

This may be the reason for getting stuck after a few centimeters. If your Motor still does not work properly you could try to adjust the motor current at the A4988 Driver, which has to be done with that little screw that you mentioned before. This can be done several ways. The safe, official and hard way is to adjust while measuring. See the Video in this link or simply use Google: https://www.pololu.com/blog/484/video-setting-the-current-limit-on-pololu-stepper-motor-driver-carriers

Another way is to adjust in steps. Means that you raise the current a few degrees and run the motor to see if it still wont move.

Are you using the 1,68A motors, that are mentioned in Hardwaredocs? For my first FB I used 1,5A motors for every axis, even those worked after a hard time adjusting. So if you didnt do something terribly wrong at assembling, the motors should be powerful enough :grinning:

Ascend,
Thanks for the detailed instructions. I have increased the amps on both x-axis motors to 1.68A. It was actually pretty easy. However, now I can’t get the bot to synch. I have installed the latest arduino code and the latest OS. So I have not been able to test the amperage changes.
Flavio

Could you please make a screenshot of your webpage? Is your farmbot connected to the website or do you see “disconnected” at the top right corner?

Ugh! I tried upping the amps in the stepper drivers using instructions I found on the Polulu website. Unfortunately I fried one of my stepper drivers. I purchased new drivers and popped them on the Ramps board. Now nothing works!!! The Robot synchs, but nothing happens.

I tried a new Arduino and new Ramps board. Still no luck! I have another Pi. I’m pretty sure my Raspberry pi works. Does anyone have any code that I can use to test the individual features of the arduino and RAMP shield features separately? I don’t want to buy yet another round of boards until I figure out what is going wrong. Any help is appreciated. I apologize for re-posting this (I place it in the wrong thread the other time).

Well, there are different options to control your Arduino+Shield manually.
One of them is mentioned at the Github page for Arduino firmware.

Farmbot will NOT move until the configuration has been approved. To approve manually, send ‘F22 P2 V1 Q0’ (after the next PR)

To move, use the command ‘G00 X0 Y0 Z0 Q0’ where you type in the coordinates just after X, Y and Z.

But I never tried this before, maybe @Tim could help you out with this.

Alternatively you could act like your Arduino/Ramps are controlling a 3d printer. Means that you could flash a printer firmware like Marlin and a control program like pronterface.

It would be very unlikely that your Pi got any damage. Also your Arduino should be fine since most current goes through the Ramps board. You also said that you tried a new ramps board, so it should be okay. Was only one driver damaged and you replaced all of them, leading to the fact that now none of them work anymore? So your motors are not even ticking or making any kind of sound?

Could you check your 12V Power supply connection on Ramps? It is easy to check and could be an issue (guess it won’t).

That part is disabled at the moment. The RPI does not support it yet so the check is not done.

For testing, I plug the laptop into the arduino directly and test with the G00 code. The easiest is to get the arduino IDE and use the serial monitor on 8N1, 115200. “G00 X100 Y0 Z0” should move the X axis only. If there are issues, (end stops false activation) there is a message in the console.

That is the most low level test you can get.

1 Like

Thanks for the help guys!!
I understood everything but the 8N1(?).
I uploaded the arduino src.ino. I turned on the serial monitor and typed G00 X1000 Y0 Z0 (with New Line and Carriage return), then pressed send. I heard a click, but nothing happened. The Baud rate was set at 115200. But What does 8N1 indicate?

I did try sending ‘F22 P2 V1 Q0’ but received a “Invalid parameter Q0” msg. What does the next PR mean?

The 8N! mean you serial is sent with 8 bits, no parity, and 1 stop bit. That’s pretty much the default for everything these days - if the terminal software you are using to open and type to the serial port does not give you a place to set that, it is almost certainly doing that by default so is probably not the problem. The problem I had with serial ports was I need to make sure when I hit the return key it sent the right thing. I forget if that was CR or CRLF but if you can find option to play iwth that it might help.

The click you hear is the power being applied to all motors and the firmware sending pulses to the requested motor to start moving. At that moment, it’s up to the driver to get the motor to move. If it doesn’t move, it’s a bad driver or not enough current. I tested that by (while power unplugged) switching out the driver with the one from another axis so I could see a driver was damaged for some reason.

Thanks again for the help!
I tested the individual driver boards using Reprap’s minimum configuration and an arduino uno.

. I used the following code to test my motors.
/* Simple Stepper Motor Control Exaple Code
*
* by Dejan Nedelkovski, www.HowToMechatronics.com
*
*/
// defines pins numbers
const int stepPin = 3;
const int dirPin = 4;

void setup() {
  // Sets the two pins as Outputs
  pinMode(stepPin,OUTPUT); 
  pinMode(dirPin,OUTPUT);
}
void loop() {
  digitalWrite(dirPin,HIGH); // Enables the motor to move in a particular direction
  // Makes 200 pulses for making one full cycle rotation
  for(int x = 0; x < 400; x++) {
    digitalWrite(stepPin,HIGH); 
    delayMicroseconds(500); 
    digitalWrite(stepPin,LOW); 
    delayMicroseconds(500); 
  }
  delay(1000); // One second delay

I’ve removed the drivers that don’t work (though I seem to have a knack for blowing them out).
I then tried using my RAMPS, MEGA with the Farmbot .ino code and nothing worked when I sent the following commands: G00 X1000 Y0 Z0, G00 X0 Y1000, and G00 X0 Y0 Z1000. Nothing worked, I then removed the RAMPS and using only my Mega and the code used above. The motors vibrated for a second, then seemed to work. So It seems the problem is in my RAMPS. But just the initial jittering of the motors prior to working indicate I also screwed up my MEGA? How can I figure out if my MEGA is still OK?

The initial jitter happens when enabled is set to 0. It’s the signal the driver uses to apply power to the motor. After that is a slight delay to let things settle before the real movement begins.

Hi Tim, Thanks for the response. But I still don’t understand why I don’t get the jitter with the UNO, but I do with the Mega??

You can test the MEGA signals with a LED and a resistor. I don’t know why the two board might make the motor respond differently.