/klippy-cnc

KCNC - Klipper CNC Macro Package

Primary LanguageShell

KCNC - Klipper CNC Macro Package

This is a collection of macros to support CNC commands on klipper 3d printer software


G/M-code Support

The codes that are strikethrough are not supported yet

KCNC Macros

Gcode Parameters Description
KCNC_STATUS - Get KCNC Status (workspace, tools, etc)
KCNC_SET_WORKSPACE TARGET=0 Set workspace, 0 is machine workspace, 1 is equivalent to G54
KCNC_HOME_MACHINE - Homes the machine using endstops

Supported G-codes

Gcode Parameters Command Description
G0 axes Straight traverse Traverse at maximum velocity. At least one axis must be present
G1 axes, F Straight feed Feed at feed rate F. At least one axis must be present
G2 axes, F, I,J,K or R Clockwise arc feed Arc at feed rate F. Offset mode IJK or radius mode R
G3 axes, F, I,J,K or R Counter clockwise arc feed Arc at feed rate F. Offset mode IJK or radius mode R
G4 P Dwell Pause for P seconds
G10 L2 axes, P Set offset parameters P selects coordinate system 1-6
G10 L20 axes, P Set offset parameters P selects coordinate system 1-6
G17 Select XY plane G17, G18 and G19 set the plan in which the G2/G3 arcs are drawn
G18 Select XZ plane
G19 Select YZ plane
G20 Select inches units mode All Gcode from this point on will be interpreted in inches
G21 Select mm units mode All Gcode from this point on will be interpreted in millimeters
G28 axes Go to G28.1 position Optional axes specify an intermediate point
G28.1 Set position for G28 The current machine position is recorded (No parameters are provided)
G30 axes Go to G30.1 position Optional axes specify an intermediate point
G30.1 Set position for G30 The current machine position is recorded (No parameters are provided)
G53 Select absolute coordinates Non-Modal: Applies only to current block
G54 Select coord system 1
G55 Select coord system 2
G56 Select coord system 3
G57 Select coord system 4
G58 Select coord system 5
G59 Select coord system 6
G90 Set absolute mode
G91 Set incremental mode
G92 axes Set origin offsets
G92.1 Reset origin offsets
G92.2 Suspend origin offsets
G92.3 Resume origin offsets

Supported M-codes

Mcode Parameter Command Description
M0 Program stop
M1 Program stop Optional program stop switch is not implemented so M1 is equivalent to M0
M2 Program end
M30 Program end
M6 Change tool No operation at this time

M-codes that need customisations based on your hardware

Mcode Parameter Command Description
M3 S Spindle on - CW S is speed in RPM
M4 S Spindle on - CCW S is speed in RPM
M5 Spindle off
M7 Mist coolant on Note that mist and flood share the same Coolant ON/OFF pin
M8 Flood coolant on Note that mist and flood share the same Coolant ON/OFF pin
M9 All coolant off Note that mist and flood share the same Coolant ON/OFF pin

Klipper for CNC - PROs and CONs

Klipper benefits for hobby CNC

Klipper downsides for hobby CNC

  • only 3 axis supported