Beam Bench Docs

Steps per millimeter

How the controller maps motor steps to physical distance. Get this wrong and every cut is the wrong size.

The controller tells the motor "move N steps". The motor moves a fraction of a turn per step, and the belt / pulley / leadscrew converts that to linear motion. Steps per millimeter is the conversion factor, the number of motor steps that produce 1 mm of linear travel.

If steps/mm is wrong by 5%, every cut is 5% the wrong size. Most setup problems where parts come out consistently the wrong size trace back to steps/mm.

The basics

Each axis has its own steps/mm. In GRBL, the settings are $100 (X), $101 (Y), $102 (Z).

A typical 16-tooth GT2 pulley with 200-step motor at 1/16 microstepping computes to about 80 steps/mm:

steps/mm = (motor_steps_per_rev × microsteps) / (belt_teeth × belt_pitch)
        = (200 × 16) / (16 × 2)
        = 100

(The math varies by mechanical setup. The number is whatever it is for your machine.)

How to verify

  1. Tell the machine to move some distance, say 100 mm in X.
  2. Measure how far it actually moved.
  3. The ratio tells you whether steps/mm is correct.

If you commanded 100 mm and it moved 95 mm, your current steps/mm value is too low by 5%. Multiply by 100 / 95 to correct.

Beam Bench's framing function is a good way to verify: have it frame a 100 mm × 100 mm rectangle, then measure with calipers.

How Beam Bench handles it

Steps/mm lives in the controller's firmware, not in Beam Bench. Beam Bench just sends G-code; the controller does the conversion.

To set steps/mm, use the Console panel to send $100=80 (or whatever the right value is for your machine). The change persists in the controller's EEPROM.

The GRBL Settings tab of Device Settings provides a UI for viewing and editing these values. You can also click Apply to Active Profile to copy them into the machine profile (where they are referenced but not authoritative, the controller is authoritative).

When it matters

  • After you change anything mechanical: motor, pulley, belt, leadscrew, microstepping setting.
  • When you swap controllers.
  • The first time you set up a new machine.

When it does not

After it is dialed in once, steps/mm does not drift. Unless you change something physical, you do not need to redo it.

On this page