Can't home or calibrate X axis only

Hi all,

I’m a bit new year. Got my Genesis in February and have been slowly building as I have limited time and only on the weekends. Today I tried the first movement commands with generally positive results.

  1. All the motors work in both directions
  2. I can reach all points of my bed
  3. I can home and calibrate my Y axis and my Z axis

However, I can’t home or calibrate my X axis. While the Farmbot will happily move to either end, it simply never detects when it hits the stops (the metal stops that come with the farmbot, not DIY endstops or anything). I get errors like:

Error
x-axis timed out waiting for movement to complete

I’m not an expert on stall detection, rotary encoders, or current sensing stepper drivers but thought I’d put those in as keywords.

I am not sure if its related but for completeness, my voltage indicator is yellow.

farmbot

I appreciate any help in advance!

1 Like

Could you share your hardware settings found on the device page?

1 Like

Sure.


Thank you
Jack

Is your X-axis encoder working properly? Here are additional information how to check and troubleshoot: Are my encoders working?

Maybe the axis does bounce back from the endstop which leads to too many successful travelled steps, so it does not detect that it’s stalling. That might be caused by a loose belt or something similar.

I’ll have a look. Thank you! The bounce sounds very plausible (but I’ll check encoders too) because I was intentionally loose with the gantry wheel plates based on the recommendations in the instructions that you can always tighten them.

Thanks again. I’ll let you all know what I find.

Jack

@jrwaters We provide email support to customers that purchased a device from us directly. You can send an email to contact@farmbot.io for additional support if it is required. Please have your order number ready.

@RickCarlino - thank you. I did buy from Farmbot and have used your [awesomely amazing] support. Marc has been fantastic on that front. I also wanted to try to use the forum some in the hopes that others having the same problems will benefit.

I only get one day a week or two max to touch my Farmbot and it rained all day yesterday. Today I checked my encoders. Visually everything looked fine but the encoder data was always 0. Also, speed didn’t matter and stopping it using my hand didn’t matter.

image

I thought “bad encoders” . . but then I inverted my X encoder as suggested on the link you gave. The fact that I instructing my X axis to go 10 mm resulted in only 3 little nudges told me my encoders were working. I un-inverted and moved to the mechanicals.

I tightened my gantry plates which I intentionally had loose-ish. That didn’t solve the problem.

As soon as I tightened my left X belt, good things started to happen. I saw encoder data and was able to find my X home and calibrate X.

Thank you again for all the help!! Now on the next step (at least next Saturday I will be).

Best
Jack

3 Likes

It’s SW problem.
When X-Axis encoder enabled last value of x-axis goes to 0. Y and Z store last value.
If X-Axis encoder disabled, last value is correct, but home finding don’t work.

Hello, You may need to check the connectors on your rotary encoders. When you mention that “x-axis goes to 0” it indicates that there is likely an issue with the signal of the rotary encoders and it is likely a connection issue with your encoder wires.

Marc

Hi,
When I first ran it everything worked correctly and the x-axis was able to find the home and length. After that, I played with different settings and the x-axis stopped finding the starting point.
This means that the encoder is connected correctly. I started to investigate what settings I changed to understand what affected the x-axis.
In the end, I guessed that the error was in the program. When I turn off other encoders, they stop remembering the last value. When I turn it on they start showing the last value.
But the x-axis is not working properly. When the encoder is turned on, program resets the last value and the robot does not know how far it has gone from home. When the encoder is off, it remembers the last value and returns to the correct position.