[Info] GRBL Controller Settings

Here are some of the settings needed in order to run the stock OF unit [hardware] with a GRBL based controller: [GRBL Configuration Reference]

Settings $100-$105 are needed to ensure accurate movement (distance)
Formula: steps_per_mm = (steps_per_revolution*microsteps)/mm_per_rev

  • steps_per_revolution = 360 / 1.8 (degrees per step for stock motors) = 200
  • microsteps = The microsteps per step of your controller (typically 1, 2, 4, 8, or 16). Tip: Using high microstep values (e.g., 16) can reduce your stepper motor torque, so use the lowest that gives you the desired axis resolution and comfortable running properties. (for my controller it’s [8])
  • mm_per_rev = ball screw pitch

X/Y: 160 = (200 * 8) / 10
Z: 400 = (200 * 8) / 4

$100=160.000  (X Axis)
$101=160.000  (Y Axis)
$102=400.000  (Z Axis)
$103=160.000  (A/Y2 Axis)
$104=160.000  (B Axis - not used, but I set it as default)
$105=160.000  (C Axis - not used, but I set it as default)

All my current settings (work in progress as I tweak, especially acceleration):

All Settings
$2=00000000 (this is binary 0 [mask])
$3=00000011 (this is binary 3 [mask])

Thanks for this. I don’t exactly understand.

First of all does this show you get 160 steps per mm on x/y and 400 on z?
Would I need to changes settings somewhere to get these values? Where are these settings located?

What I’m trying to figure out (without actually testing it) is what is the minimum mesh resolution I can use to calculate tool paths before I’ll notice a difference.
Say I’m calculating tool paths from a mesh,(not a solid nurbs object), and each poly face is .25mm and I’m using a 1/16" bit (4.064mm). I assume my final cut wont capture all the detail from the high res mesh because the bit is not fine enough.
If you have 160 steps per mm how could you ever capture that detail in a cut? Am I misunderstanding this?
Is it safe to say that a mesh with poly faces smaller than half cutting diameter wont be captured in the final cut?

These settings are specifically for those who are NOT using the Onefinity/Buildbotics controller. (aka - those setting up a new controller - specifically one that’s GRBL based). If you’re using the default Onefinity controller, none of this applies to you, and it can be ignored 100%.

To your questions about calculating steps, you’re missing one other very important thing - micro-steps. This setting does not indicate a minimum the machine (motor) is capable of, it’s simply a base setting for the controller to understand the dimensions of the hardware setup (as indicated in the calculation, dependent on the driver, lead screw, and motor). The controller can then create micro-steps, which will create additional detail if needed to adhere to the path identified. Of course there’s a limit to this at some point.

Useful for all controller changes. I can use the same in my LinuxCNC.


1 Like