Welcome! Log In Create A New Profile

Advanced

Max Feedrate issues in Marlin

Posted by sirphilip 
Max Feedrate issues in Marlin
February 25, 2014 12:47PM
Hello everyone, I am new here so please let me know if this isn't the right place for this question.

I am building a printer with a RAMBo controller and the Marlin firmware. The stepper motors I am using are 200 steps per revolution, and the drivers can do 16 substeps per step. My leadscrews have a pitch of 1mm/rev. I am trying to configure Marlin to take all this into account. I've updated the steps per unit constant to be:

#define DEFAULT_AXIS_STEPS_PER_UNIT {200*16.0, 200*16.0, 200*16.0, 760}

This does give me 1 full rotation with the following gcode:

G91
G1 X1 F50

However, if I do not specify a low feedrate, the motor squeals and does not move. Playing around with the feedrate I found I can go up to 160 before I lose some steps. I tried to bake this limit into the firmware like so:

#define DEFAULT_MAX_FEEDRATE {160, 160, 160, 25} // (mm/sec)

However this seemingly has no effect. When I call X1 with no feedrate the steppers still skip from being driven too fast.

My questions:

1) What is the default feedrate (the rate the motors are driven when none is specified)
2) How do I set the max feedrate?

Thanks in advance.
Re: Max Feedrate issues in Marlin
February 25, 2014 12:59PM
The unit per step is 1mm of axis movement, not 1 revolution. So your 3200steps per mm @ 50mm/s would be trying to take 16000 steps per second which will never work on X and Y. On Z it is correct with the 1mm pitch but Z will only be able to move at 2-3mm/s.

Also the F command is mm/m and the slicing software and firmware are mm/s

Edited 1 time(s). Last edit at 02/25/2014 01:02PM by Sublime.


FFF Settings Calculator Gcode post processors Geometric Object Deposition Tool Blog
Tantillus.org Mini Printable Lathe How NOT to install a Pololu driver
Re: Max Feedrate issues in Marlin
February 25, 2014 02:21PM
Hey Sublime, thanks for the fast reply.

My printer has leadscrews on X, Y, and Z - all with the same stepper motors. So I believe all the settings should be the same for each dimension, please correct me if I am wrong however. This is why I think I need a full rotation to go 1mm for X, Y and Z.

Do you know why adjusting DEFAULT_MAX_FEEDRATE has no effect on the default feedrate?
Re: Max Feedrate issues in Marlin
February 25, 2014 03:32PM
I figured it out, my problem was that DEFAULT_MAX_FEEDRATE is specified in mm/s (as the comment in the source code implies) but the F argument in GCode is mm/min. Once I got this sorted out everything started working.

Does anyone know why these two related controls would use different units?
Re: Max Feedrate issues in Marlin
February 25, 2014 03:34PM
Quote
sirphilip
Hey Sublime, thanks for the fast reply.

My printer has leadscrews on X, Y, and Z - all with the same stepper motors. So I believe all the settings should be the same for each dimension, please correct me if I am wrong however. This is why I think I need a full rotation to go 1mm for X, Y and Z.

Do you know why adjusting DEFAULT_MAX_FEEDRATE has no effect on the default feedrate?

If you have lead screws on all the axis then yes you had them set correct.

The max feedrate is the max feedrate it will allow you to go, not the default feedrate and it is in mm/s not mm/m like the F code. So if you have found that the max you can go is F50 then the max needs to be set to 0.8 because it is set in mm/s. Also I believe the default feedrate used is the homing feedrate which is set in mm/m HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min)

The fact we use mm/s for somethings and mm/m for others is what is causing the issue.


FFF Settings Calculator Gcode post processors Geometric Object Deposition Tool Blog
Tantillus.org Mini Printable Lathe How NOT to install a Pololu driver
Re: Max Feedrate issues in Marlin
February 25, 2014 03:36PM
The F code is mm/m because that is the standard for gcodes used for milling etc. But with 3D printing we need much higher speeds so we talk in mm/s and set things in the slicers at mm/s to avoid huge numbers. I print at 55mm/s and travel at 150mm/s and if those were in mm/m it would be 3300mm/m and 9000mm/m which would be strange to input into the slicer.


FFF Settings Calculator Gcode post processors Geometric Object Deposition Tool Blog
Tantillus.org Mini Printable Lathe How NOT to install a Pololu driver
Sorry, only registered users may post in this forum.

Click here to login