Understanding GBRL Settings

Can someone explain why my machine stops at its default maximum travel. The GBRL settings for my homing is
$22=1 Homing cycle, boolean
and my Hard and Soft Limits are set to:

$20=0 Soft limits, boolean
$21=0 Hard limits, boolean

GBRL configuration states:

$20 - Soft limits, boolean

Soft limits is a safety feature to help prevent your machine from traveling too far and beyond the limits of travel, crashing or breaking something expensive. It works by knowing the maximum travel limits for each axis and where Grbl is in machine coordinates. Whenever a new G-code motion is sent to Grbl, it checks whether or not you accidentally have exceeded your machine space. If you do, Grbl will issue an immediate feed hold wherever it is, shutdown the spindle and coolant, and then set the system alarm indicating the problem. Machine position will be retained afterwards, since it’s not due to an immediate forced stop like hard limits.

NOTE: Soft limits requires homing to be enabled and accurate axis maximum travel settings, because Grbl needs to know where it is. $20=1 to enable, and $20=0 to disable.

My settings for max travel are set to:

$130=845.000 X Max travel, mm
$131=850.000 Y Max travel, mm
$132=150.000 Z Max travel, mm

$130, $131, $132 – [X,Y,Z] Max travel, mm

This sets the maximum travel from end to end for each axis in mm. This is only useful if you have soft limits (and homing) enabled, as this is only used by Grbl’s soft limit feature to check if you have exceeded your machine limits with a motion command.

So why does my Shapeoko stop at 845MM and 850MM and not crash into the rails if the settings for Soft Limits is not set to 1?

Please help me understand why my XXL works the way it does in spite of the GBRL configuration?

Here are my GBRL settings:

$$
$0=10 Step pulse, microseconds
$1=255 Step idle delay, milliseconds
$2=0 Step port invert, mask
$3=2 Direction port invert, mask
$4=0 Step enable invert, boolean
$5=0 Limit pins invert, boolean
$6=0 Probe pin invert, boolean
$10=255 Status report, mask
$11=0.020 Junction deviation, mm
$12=0.010 Arc tolerance, mm
$13=0 Report inches, boolean
$20=0 Soft limits, boolean
$21=0 Hard limits, boolean
$22=1 Homing cycle, boolean
$23=0 Homing dir invert, mask
$24=100.000 Homing feed, mm/min
$25=2000.000 Homing seek, mm/min
$26=25 Homing debounce, milliseconds
$27=3.000 Homing pull-off, mm
$30=1000 Max spindle speed, RPM
$31=0 Min spindle speed, RPM
$32=0 Laser mode, boolean
$100=40.000 X steps/mm
$101=40.000 Y steps/mm
$102=320.000 Z steps/mm
$110=10000.000 X Max rate, mm/min
$111=10000.000 Y Max rate, mm/min
$112=1300.000 Z Max rate, mm/min
$120=500.000 X Acceleration, mm/sec^2
$121=500.000 Y Acceleration, mm/sec^2
$122=100.000 Z Acceleration, mm/sec^2
$130=845.000 X Max travel, mm
$131=850.000 Y Max travel, mm
$132=150.000 Z Max travel, mm

Are you using Carbide Motion? I found the same thing, switched to UGS and found it would hit the rails. Then I enabled Soft Limits in GRBL and it alarmed under UGS.

I think Carbide Motion internally implements the equivalent of Soft Limits.

2 Likes

Yes I am using CM. I am trying to understand the inner workings but am confused by the way GBRL configurations are supposed to be set and the way Carbide3d set the GBRL configuration.

What are your Travel Dimensions set to in Settings?

My settings are set to:

My settings for max travel are set to:

$130=845.000 X Max travel, mm
$131=850.000 Y Max travel, mm
$132=150.000 Z Max travel, mm

But since my Soft limits are set to 0 why does CM keep me from crashing my machine. I am not complaining but trying to understand why it works this way when GBRL configurations say it should not work this way. I assume there is something propriety in the Carbide3d controller doing this/

As @mhotchin stated, it is Motion that is preventing you from crashing. Carbide Motion keeps track of where your machine is and prevents you from jogging past the limits.
By using Motion, you are not dealing directly with GRBL as all of your commands are read, interpreted, and filtered (if deemed) by Motion.

Nope, all in the software on your computer.

2 Likes

Thank you Neil. This was bugging me. I know that it works this way but I am trying to know why it works this way. So you can just say CM is automagical.

This topic was automatically closed after 30 days. New replies are no longer allowed.