Firmware sanity checks to avoid chewing up belts

All things related to the Rostock MAX 3D Printer, the worlds FIRST Delta kit!
Post Reply
User avatar
dbarrans
Printmaster!
Posts: 273
Joined: Thu Jan 03, 2013 4:14 am

Firmware sanity checks to avoid chewing up belts

Post by dbarrans »

There are a few things I've seen Marlin firmware do to chew up the belts on my Rostock Max printer.

1) If I jog X or Y in either direction after doing a G28, one or more carriages try to move up past the limit switches, and start chewing up the belts. In fact, Repetier Host was preconfigured to do exactly this after a print and did it on my first print.

2) If I hit the X, Y, or Z home button in Repetier Host, the corresponding carriage moves to the top, leaving the others behind, and crashes the print head into the column, and starts chewing up the belts. It's as if the home button command isn't converting from cartesian to delta coordinates.

3) When near the print bed, if I jog X and/or Y too far away from any of the columns, the carriage on that column moves down too far, crashes at the bottom, and starts chewing up the belt.

In all three of these cases, the problem is preventable in the firmware with a few extra sanity checks in the code. Does anyone know if these checks are done in the Repetier firmware? I haven't tried it yet, but I probably will this weekend.
User avatar
cambo3d
ULTIMATE 3D JEDI
Posts: 1057
Joined: Thu Feb 07, 2013 10:03 pm
Location: Florida

Re: Firmware sanity checks to avoid chewing up belts

Post by cambo3d »

1. once a limit switch triggered, its supposed to stop the movement.

2. your rephost has a home button? i dont have this, i have to manually enter g28 to home all axis.
edit: apparently I never noticed another home button at the bottom left of the arrows.. this the home all button.
Last edited by cambo3d on Sat Apr 20, 2013 6:01 pm, edited 1 time in total.
User avatar
dbarrans
Printmaster!
Posts: 273
Joined: Thu Jan 03, 2013 4:14 am

Re: Firmware sanity checks to avoid chewing up belts

Post by dbarrans »

Yeah, I thought the limit switch would stop further movement, but it didn't. It's controlled by the firmware, which is really just software, and software has no guarantees. There's no direct electrical hookup from the switch to interrupt power to the stepper motor.

Repetier Host V0.85b for Windows has four home buttons, arranged around the jog controls. One each for X, Y, and Z, and one for all three. They all do the wrong thing for a delta printer.

- dan
Polygonhell
ULTIMATE 3D JEDI
Posts: 2417
Joined: Mon Mar 26, 2012 1:44 pm
Location: Redmond WA

Re: Firmware sanity checks to avoid chewing up belts

Post by Polygonhell »

cambo3d wrote:1. once a limit switch triggered, its supposed to stop the movement.

2. your rephost has a home button? i dont have this, i have to manually enter g28 to home all axis
Most reprap firmwares are configured to any pay attention to the end stops when homing, to Avila noise on the endstop switches messing up a print.
User avatar
dbarrans
Printmaster!
Posts: 273
Joined: Thu Jan 03, 2013 4:14 am

Re: Firmware sanity checks to avoid chewing up belts

Post by dbarrans »

Why would mechanical endstop switches have noise?

- dan
User avatar
cambo3d
ULTIMATE 3D JEDI
Posts: 1057
Joined: Thu Feb 07, 2013 10:03 pm
Location: Florida

Re: Firmware sanity checks to avoid chewing up belts

Post by cambo3d »

limit switches aren't firmware controlled, there just mechanical devices that open and close a path. If your electrical wiring has noise, your firmware wont detect an opening or closing.

but if your repetier firmware is working fine, and your marlin firmware was doing this before I would say the firmware was at fault.
jesse
Printmaster!
Posts: 422
Joined: Tue Jan 01, 2013 8:38 pm
Contact:

Re: Firmware sanity checks to avoid chewing up belts

Post by jesse »

2. your rephost has a home button? i dont have this, i have to manually enter g28 to home all axis
FYI, this is the home button in Repetier-Host that runs the G28 command.

[img]http://i.imgur.com/0wjaArL.png[/img]

I didn't realize it was there and that it worked either.
User avatar
cambo3d
ULTIMATE 3D JEDI
Posts: 1057
Joined: Thu Feb 07, 2013 10:03 pm
Location: Florida

Re: Firmware sanity checks to avoid chewing up belts

Post by cambo3d »

jesse wrote:
2. your rephost has a home button? i dont have this, i have to manually enter g28 to home all axis
FYI, this is the home button in Repetier-Host that runs the G28 command.

[img]http://i.imgur.com/0wjaArL.png[/img]

I didn't realize it was there and that it worked either.

dang, i never noticed that down there..lol

the placement of it makes it confusing i guess..
Polygonhell
ULTIMATE 3D JEDI
Posts: 2417
Joined: Mon Mar 26, 2012 1:44 pm
Location: Redmond WA

Re: Firmware sanity checks to avoid chewing up belts

Post by Polygonhell »

dbarrans wrote:Why would mechanical endstop switches have noise?

- dan
The switches them selves don't, but the wires act as antennas, and can get enough noise to give a false positive. I don't think it's common.
FWIW I think my branch of repetier has them enabled all the time, but I'd have to look to confirm.
User avatar
dbarrans
Printmaster!
Posts: 273
Joined: Thu Jan 03, 2013 4:14 am

Re: Firmware sanity checks to avoid chewing up belts

Post by dbarrans »

That home button doesn't do a G28. Don't use it unless you want to crash your print head into a column. It homes X, then Y, then Z, one at a time. If you're already near the top, that's fine, but if you're lower, be sure to have your hand on the power switch when you use it.

At least that's been my experience with Marlin firmware.

- dan
User avatar
dbarrans
Printmaster!
Posts: 273
Joined: Thu Jan 03, 2013 4:14 am

Re: Firmware sanity checks to avoid chewing up belts

Post by dbarrans »

I have my endstop wires inside the aluminum columns. Maybe grounding the columns would shield the noise?

- dan
Polygonhell
ULTIMATE 3D JEDI
Posts: 2417
Joined: Mon Mar 26, 2012 1:44 pm
Location: Redmond WA

Re: Firmware sanity checks to avoid chewing up belts

Post by Polygonhell »

dbarrans wrote:I have my endstop wires inside the aluminum columns. Maybe grounding the columns would shield the noise?

- dan
I wouldn't worry about it, I've never personally had an issue.
You can probably just enable them always in Marlin
The line you are looking for is in configuration_adv.h and looks like this

#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing

Just comment it out and upload the firmware.
User avatar
dbarrans
Printmaster!
Posts: 273
Joined: Thu Jan 03, 2013 4:14 am

Re: Firmware sanity checks to avoid chewing up belts

Post by dbarrans »

I'll keep that in mind if I switch back. I just installed Repetier firmware. I already like its smarter homing algorithm, and I verified it does the right thing with all four home buttons, although the X and Y homing is a bit jerky.

- dan
Post Reply

Return to “Rostock MAX”