X Axis no longer moves negative direction (resolvable)


Several weeks ago, I went to calibrate my Prusa. Things were going fine till suddenly the X axis would no longer move in the negative direction.
Pressing -X steps results in no movement.
Pressing Home (Using Pronterface) will send the X axis in the positive direction until it hits the physical limit of the positive direction and will continue to attempt to move it until I power off

in order to trouble shoot, I did the following:

  1. switched Y stepper cable with X stepper cable. The behavior (negative direction not working) follows the axis. IE, now that the cables are switched, the Y axis will go in the positive direction, but not the negative. Restored cabling to original connections
  2. replaced the X axis polulu - X axis positive direction works, but not negative direction. Replaced original polulu
  3. replaced the RAMPS board - X axis positive direction works, but not negative direction. Replaced original RAMPS
  4. uploaded firmware with no changes. no change in behavior
    At this point I powered everything off.

Today (Jan 1, 2016) I powered the unit on, loaded pronterface, connected to the Prusa and pressed “HOME” and everything worked. Thinking that I either lost my mind a few weeks ago or that the Prusa Fairy visited me one night without telling me, I set out to print a calibration file. While it did print (which included -X axis movement), I knew I was going to have to tune it a bit so I commenced to calibrate the machine.

I spent some time calibrating the unit for the Z and the Y axis, uploading the firmware changes as I went along. However, when I went to calibrate the X axis (the unit has been powered on for several hours at this point), it would not move in the -X direction.

I repeated the aforementioned trouble shooting steps again (except step 4 since I had been uploading firmware updates as I calibrated the machine) and have found no solution. I know what you’re thinking … you are thinking it’s the arduino. I kinda am too, but I’m hoping someone on here has solved this problem without replacing the arduino because, for some reason, the wife thinks buying groceries this month is important thus leaving me without disposable income for the foreseeable future.

The unit will be powered off overnight and I will see what it does first thing in the morning, but if you have any suggestions or ideas I would appreciate hearing from you in the mean time…as I sit in my chair…rocking back and forth…sobbing like a baby

It might just be the motor controller chip. Did the prussa use a RAMPS board? If so you could try swapping it out. That chip costs about $6.00. It could also be a wire short or a pin vibrating loose. Checking that whole wire harness for that axis isn’t a bad idea.

Thank you piercet for the suggestions.

I’m not familiar with the “motor controller chip”. I did replace the stepper driver board (polulu) … is that the same thing?
this Prusa (an original Lulzbot prusa, number 89 and yes, I’m bragging) uses a RAMPS attached to the MEGA 2560

I’ll be gone for a bit, double checking to make sure all connections are secure …

thank you

Yeah, the stepper driver. If you have already replaced it though, then replacing it twice wouldn’t help heh. The stepper basically has 2 magnets in it, one powered by 2 wires and the other powered by the other pair. If one of them is shorting out in opposition or has a pin missing, odd things can occur. The good news if it is the board itself is a ramps or a mega 2560 are both inexpensive these days. Though if you have to upgrade, going 24 volt with a Rambo board would be a nice upgrade too.

It could also be the interface board inside the stepper itself.

Later last night, it occurred to me that if the problem was in the arduino, then perhaps a “factory reset” (flash the boot loader on the MEGA) and a reload of the firmware would solve the problem.

I did that last night and the -X movement worked. So after letting the unit stay powered on overnight, checked it again this morning and it is still working.

To summarize the solution:

  1. pulled the arduino off the Prusa (this is necessary to reflash the boot loader as you will have to connect to the MEGA with an ISP)
  2. connected an arduino UNO to my arduino MEGA using instructions found at the arduino.cc web site
  3. reflashed the boot loader of the MEGA
  4. uploaded the Prusa firmware to the MEGA
  5. reinstalled the MEGA on the Prusa

Hopefully, this will save someone else a boat load of tears

UPDATE: after an hour of calibrating, the problem returned. Of course, I had re-attached everything and put it all back in place before the problem came back

PS UPDATE: turns out, it’s the X axis limit switch. Worn out I guess, but bottom line, replaced the switch and all is right with the world again.