Cnc g code and m code list pdf

These are the common g-codes for CNC Lathes and turning. Code categories are the groupings for the g-code Wizard (type Ctrl+G for the Wizard). Function tells what the g-code does, Notes gives a little more information such as the parameters, and Tutorial is a link (if any) to a tutorial that uses G-Wizard Editor to teach how to use the g-code.

 

Code

Category

Function

Notes

Tutorials

 

  G00

Motion

Move in a straight line at rapids speed. XYZ of endpoint

G00 and MDI.

Linear Motion: G00 and G01

 
  G01

Motion

Move in a straight line at last speed commanded by a (F)eedrate XYZ of endpoint

G01 and MDI.

Linear Motion: G00 and G01

 
  G02

Motion

Clockwise circular arc at (F)eedrate

XYZ of endpoint

IJK relative to center

R for radius

Circular Arcs: G02 and G03  
  G03

Motion

Counter-clockwise circular arc at (F)eedrate

XYZ of endpoint

IJK relative to center

R for radius

Circular Arcs: G02 and G03  
  G04

Motion

Dwell: Stop for a specified time.

P for milliseconds

X for seconds

Precise Timing and Speed: Dwell, Exact Stop, Backlash Compensation  
  G09

Motion

Exact stop check   Precise Timing and Speed: Dwell, Exact Stop, Backlash Compensation  
  G10

Compensation

Programmable parameter input      
  G17

Coordinate

Select X-Y plane   CNC G-Code Coordinates  
  G18

Coordinate

Select X-Z plane   CNC G-Code Coordinates  
  G19

Coordinate

Select Y-Z plane   CNC G-Code Coordinates  
  G20

Coordinate

Program coordinates are inches   G20 and G21: Unit Conversion  
  G21

Coordinate

Program coordinates are mm   G20 and G21: Unit Conversion  
  G27

Motion

Reference point return check   G28: Return to Reference Point  
  G28

Motion

Return to home position   G28: Return to Reference Point  
  G29

Motion

Return from the reference position   G28: Return to Reference Point  
  G30

Motion

Return to the 2nd, 3rd, and 4th reference point   G28: Return to Reference Point  
  G32

Canned

Constant lead threading (like G01 synchronized with spindle)      
  G40

Compensation

Tool cutter compensation off (radius comp.)      
  G41

Compensation

Tool cutter compensation left (radius comp.)      
  G42

Compensation

Tool cutter compensation right (radius comp.)      
  G43

Compensation

Apply tool length compensation (plus)      
  G44

Compensation

Apply tool length compensation (minus)      
  G49

Compensation

Tool length compensation cancel      
  G50

Compensation

Reset all scale factors to 1.0      
  G51

Compensation

Turn on scale factors      
  G52

Coordinate

Local workshift for all coordinate systems: add XYZ offsets      
  G53

Coordinate

Machine coordinate system (cancel work offsets)      
  G54

Coordinate

Work coordinate system (1st Workpiece)      
  G55

Coordinate

Work coordinate system (2nd Workpiece)      
  G56

Coordinate

Work coordinate system (3rd Workpiece)      
  G57

Coordinate

Work coordinate system (4th Workpiece)      
  G58

Coordinate

Work coordinate system (5th Workpiece)      
  G59

Coordinate

Work coordinate system (6th Workpiece)      
  G61

Other

Exact stop check mode   Precise Timing and Speed: Dwell, Exact Stop, Backlash Compensation  
  G62

Other

Automatic corner override      
  G63

Other

Tapping mode      
  G64

Other

Best speed path      
  G65

Other

Custom macro simple call   Subprograms and Macros  
  G70

Canned

Finish Turning Cycle      
  G71

Canned

Rough Turning Cycle  

G71: Rough Turning Cycle

G71 Type II: Rough Turning With “Pockets”

 
  G72

Canned

Rough Facing Cycle      
  G73

Canned

Pattern Repeating Cycle      
  G74

Canned

Peck Drilling Cycle      
  G75

Canned

Grooving Cycle      
  G76

Canned

Threading Cycle   G76 Lathe Threading Cycle  
  G80

Canned

Cancel canned cycle      
  G83

Canned

Face drilling cycle      
  G84

Canned

Face Tapping cycle      
  G86

Canned

Boring canned cycle, spindle stop, rapid out      
  G87

Canned

Side Drilling Cycle      
  G88

Canned

Side Tapping Cycle      
  G89

Canned

Side Boring Cycle      
  G90

Coordinate

Absolute programming of XYZ (type B and C systems)      
  G90.1

Coordinate

Absolute programming IJK (type B and C systems)      
  G91

Coordinate

Incremental programming of XYZ (type B and C systems)      
  G91.1

Coordinate

Incremental programming IJK (type B and C systems)      
  G92

Coordinate

Thread Cutting Cycle      
  G92 (alternate)

Motion

Clamp of maximum spindle speed S    
  G94

Motion

Endface Turning Cycle      
             
  G96

Motion

Constant Surface Speed ON   G96: Constant Surface Speed  
  G97

Motion

Constant Surface Speed Cancel   G96: Constant Surface Speed  
  G98

Motion

Feedrate per Minute   G98 G-Code and G99 G-Code: Canned Cycle Return or Feedrate Modes  
  G99

Motion

Feedrate per Revolution   G98 G-Code and G99 G-Code: Canned Cycle Return or Feedrate Modes  
  G190 Motion Radius mode   CNC Lathe Programming  
  G191 Motion Diameter mode   CNC Lathe Programming  
             
             
             
 

M-Codes

 

Code

Category

Function

Notes

Tutorials

 
  M00

M-Code

Program Stop (non-optional)      
  M01

M-Code

Optional Stop: Operator Selected to Enable      
  M02

M-Code

End of Program      
  M03

M-Code

Spindle ON (CW Rotation)   M03 and MDI.  
  M04

M-Code

Spindle ON (CCW Rotation)      
  M05

M-Code

Spindle Stop   M05 and MDI.  
  M06

M-Code

Tool Change      
  M07

M-Code

Mist Coolant ON   M07 and MDI.  
  M08

M-Code

Flood Coolant ON   M08 and MDI.  
  M09

M-Code

Coolant OFF   M09 and MDI.  
             
  M13

M-Code

Spindle ON (CW Rotation) + Coolant ON   M13 and MDI.  
  M14

M-Code

Spindle ON (CCW Rotation) + Coolant ON   M14 and MDI.  
             
             
  M30

M-Code

End of Program, Rewind and Reset Modes      
             
  M97

M-Code

Haas-Style Subprogram Call   Subprograms and Macros  
  M98

M-Code

Subprogram Call   Subprograms and Macros  
  M99

M-Code

Return from Subprogram   Subprograms and Macros  

What is G code and M code in CNC?

G codes direct the machine's motion and function, while M codes direct the operations outside movements. The G code activates the CNC machine while the M code activates the machine's programmable logic controller.

What is G28 G code?

G28 G-code On a CNC mill, G28 means “go to the recorded origin point in the machine coordinates workspace”. The machine coordinates are the position of the machine relative to the point at which the endstops are hit.

What is a M30 code CNC?

The command M30 stops the machine and tells it the program has finished, then the program is rewound back to the start. On a lathe, if the continuous cycle is activated the machine will start making the next component without any further instruction from the operator.

What is G code example?

Here are some examples of G-code: G00: Rapid move to specific coordinate position. G01: Linear feed move. G02/G03: Clockwise/counterclockwise feed move.