Complete Okuma Mill G and M Codes list for cnc machinists who work on Okuma cnc milling machines.
Contents
CNC code generator is a software to generate CNC codes (G & M codes) for maching operations like milling, drilling. At present CNC code generator is limited for end milling. We working on other machining operations like turning, drilling etc. PlanetCNC is a free CNC machine control software that you can use to control your CNC machine using G-code. However, PlanetCNC is a combined hardware and software solution. The control software works only with the CNC USB controller Mk3/4 hardware that's sold by PlanetCNC. The software comes free with the hardware.
Okuma Mill G Codes
G Code | Description |
---|---|
G00 | Positioning |
G01 | Linear interpolation |
G02 | Circular interpolation – Helical cutting (CW) |
G03 | Circular interpolation – Helical Cutting (CCW) |
G04 | Dwell |
G09 | Exact stop |
G10 | Cancel of G11 |
G11 | Parallel and rotational shift of coordinate system |
G14 | Designation of axis name |
G15 | Selection of work coordinate system (Modal) |
G16 | Selection of work coordinate system (One-shot) |
G17 | Plane selection: XY |
G18 | Plane selection: ZX |
G19 | Plane selection: YZ |
G20 | Inch input confirmation |
G21 | Metric input confirmation |
G22 | Programmable stroke limit ON |
G23 | Programmable stroke limit cancel |
G30 | Positioning to home position |
G31 | Skip function |
G33 | Unfixed cycle for thread cutting |
G37 | Cancel of G38 |
G38 | Air cut reduction mode ON |
G39 | I, J, K commands and G39 ignored in the corner circular interpolation (with vector) |
G40 | Cutter radius compensation (G41, G42) cancel |
G41 | Cutter radius compensation, left |
G42 | Cutter radius compensation, right |
G43 | 3D offset (G44) cancel |
G44 | 3D offset ON |
G50 | Enlargement and reduction of geometry cancel |
G51 | Enlargement and reduction of geometry “ON” |
G53 | Tool length offset cancel |
G54 | Tool length offset, X-axis |
G55 | Tool length offset, Y-axis |
G56 | Tool length offset, Z-axis |
G57 | Tool length offset, 4th-axis |
G58 | Tool length offset, 5th-axis |
G59 | Tool length offset, 6th-axis |
G60 | One-directional positioning |
G61 | Exact stop mode ON |
G62 | Programmable mirror image mode |
G64 | Cutting mode ON |
G68 | Slope coordinate OFF |
G69 | Slope coordinate ON |
G71 | Designation of return level for M53 |
G72 | Designation of pattern reference point (start position) for the coordinate calculation function |
G73 | Fixed cycle, High speed drilling cycle |
G74 | Fixed cycle, Reverse tapping cycle |
G75 | Fixed cycle; Step & pick cycle |
G76 | Fixed cycle, Fine boring |
G79 | Fixed cycle; Variable pitch cycle |
G80 | Fixed cycle, Modal cancel |
G81 | Fixed cycle; Spot boring |
G82 | Fixed cycle; Counter boring |
G83 | Fixed cycle, Deep hole drilling cycle |
G84 | Fixed cycle, Tapping cycle |
G85 | Fixed cycle, Boring cycle |
G86 | Fixed cycle, Boring cycle |
G87 | Fixed cycle, Back boring cycle |
G88 | Fixed cycle; Multi-step boring cycle |
G89 | Fixed cycle, Boring cycle |
G90 | Absolute dimensioning mode |
G91 | Incremental dimensioning mode |
G92 | Setting of work coordinate system |
G93 | Inverse time feed |
G94 | Feed per minute mode |
G95 | Feed per revolution mode |
G96 | Local coordinate system setting |
G97 | Coordinate recalculation function |
G100 | Cancel of macro MODIN mode selected by G101 to G110 |
G101-G110 | G code macro MODIN type |
G111-G120 | G code macro CALL type |
G130 | High-speed contouring control OFF |
G131 | High-speed contouring control ON |
G133 | Constant peripheral speed control OFF |
G134 | Constant peripheral speed control ON |
G137 | Contour machining mode OFF |
G138 | Contour machining mode ON |
G139 | G00 special linear interpolation OFF |
G140 | G00 special linear interpolation ON |
G141 | Tool grooving OFF |
G142 | Tool grooving ON |
G143 | Rotary axis position command (under rotary axis control by Super hi-NC) |
G145 | Pattern reference point return mode |
G146 | Pattern end point return mode |
G147 | Machine coordinate system position command |
G148 | Turning cut function OFF |
G149 | Turning cut function ON |
G150 | Auto acceleration/deceleration ON |
G151 | Auto acceleration/deceleration cancel |
G152 | Auto acceleration |
G153 | Auto deceleration |
G154 | Spindle path control OFF |
G155 | Spindle path control ON |
G159 | In-position check disabling command |
G164 | Continuous circular movement stop command in turning cut |
G165 | Continuous circular movement (CW) start command in turning cut |
G166 | Continuous circular movement (CCW) start command in turning cut |
G167 | Rotary table and spindle control OFF |
G168 | Rotary table and spindle control ON |
G169 | Tool length offset at cutting edge ON |
G170 | Tool length offset at cutting edge and in axial direction cancel |
G171 | Tool length offset in axial direction ON |
G174 | Cylindrical side cutting “OFF” |
G175 | Cylindrical side cutting “ON” |
G176 | F, S codes ignore cancel |
G177 | F, S codes ignore |
G178 | Fixed thread cutting cycle in the 1st axis direction on a plane |
G179 | Fixed thread cutting cycle in the 2nd axis direction on a plane |
G180 | Attachment rotation offset cancel |
G181 | Attachment rotation offset; Frontward |
G182 | Attachment rotation offset; Leftward |
G183 | Attachment rotation offset; Backward |
G184 | Attachment rotation offset; Rightward |
G185 | Attachment rotation offset; Downward |
G186 | Tolerance control mode cancel |
G187 | Tolerance control mode “ON” |
G188 | 2nd tool length offset cancel |
G189 | 2nd tool length offset ON |
G192 | Fixed cycle; Upper surface detection cancel |
G193 | Fixed cycle; Upper surface detection ON |
G194 | Fixed cycle; Tool breakage detection cancel |
G195 | Fixed cycle; Tool breakage detection ON |
G260 | Spindle deflection compensation OFF |
G261 | Spindle deflection compensation ON |
G266 | Limit switch checked |
G267 | Limit switch not checked |
G272 | Fixed cycle; Deep hole tapping and reverse tapping |
G273 | Fixed cycle; High-speed deep hole tapping and reverse tapping |
G274 | Fixed cycle; Synchronized tapping, reverse tapping |
G281 | Fixed cycle; Small diameter and deep hole drilling |
G282 | Fixed cycle; Deep hole synchronized tapping |
G283 | Fixed cycle; High-speed deep hole synchronized tapping |
G284 | Fixed cycle; Synchronized tapping |
G296 | G297 cancel |
G297 | S command in C-axis mode (S command is regarded as the spindle position.) |
G300 | G301 to G349 macro MODIN cancel (NC. P. B No. 34 bit 3:1) |
G336 | I-MAP-A function; Fixed circle cutting cycle (CW) |
G337 | I-MAP-A function; Fixed circle cutting cycle (CCW) |
G501-G580 | G code macro changeable between MODIN and CALL |
Okuma Mill M Codes
M Code | Description |
---|---|
M00 | Program stop |
M01 | Optional stop |
M02 | End of program |
M03 | Work spindle start (CW) |
M04 | Work spindle start (CCW) |
M05 | Spindle stop |
M06 | Vertical spindle tool change |
M07 | Oil mist coolant ON |
M08 | Coolant pump ON |
M09 | Coolant system OFF |
M10 | A-axis clamp |
M11 | A-axis unclamp |
M12 | Chip air blow ON |
M15 | 4th-axis rotary index table CW |
M16 | 4th-axis rotary index table CCW |
M17 | Indexing head index CCW |
M19 | Spindle orientation (forward) |
M20 | B-axis clamp |
M21 | B-axis unclamp |
M22 | Y-axis clamp |
M23 | Y-axis unclamp |
M24 | Z-axis clamp |
M25 | Z-axis unclamp |
M26 | C-axis clamp |
M27 | C-axis unclamp |
M30 | End of tape |
M32 | Splash guard door close |
M33 | Splash guard door open |
M40 | High/middle-high/middle-low/low range |
M41 | High/middle-high/middle-low range |
M42 | High/middle-high range |
M43 | High range |
M44 | AAC (F) 1 Next attachment clear |
M45 | AAC (F) 1 Preparation for attachment change preparation |
M46 | AAC (F) 1 No next attachment |
M47 | AAC (F) 1 No next attachment |
M48 | AAC (T) Next attachment clear |
M49 | AAC (T) Preparation for attachment change preparation |
M50 | Through-the-tool coolant, low pressure ON |
M51 | Through-the-tool coolant, high pressure ON |
M52 | Return level in fixed cycle, Upper limit |
M53 | Return level in fixed cycle, Specified level |
M54 | Return level in fixed cycle, Point R level |
M57 | W-axis clamp |
M58 | W-axis unclamp |
M59 | Chip air blow ON |
M60 | Pallet change command |
M62 | Vertical spindle tool change preparation |
M63 | No next tool for ATC |
M64 | Next tool return cycle |
M65 | ATC preparation |
M66 | Continuous tool change between the vertical and horizontal spindles (same tool) |
M67 | Continuous tool change between the vertical and horizontal spindles (different tool) |
M68 | Vertical spindle tool clamp |
M69 | Vertical spindle tool unclamp |
M70 | Manual tool change |
M71 | Manual attachment tool change |
M72 | Horizontal spindle tool change preparation |
M73 | Swivel head, front position |
M74 | Swivel head, left position |
M75 | Swivel head, rear position |
M76 | Swivel head, right position |
M77 | Horizontal spindle tool change |
M78 | Horizontal spindle tool clamp |
M79 | Horizontal spindle tool unclamp |
M81 | Automatic W-axis positioning 1 |
M82 | Automatic W-axis positioning 2 |
M83 | Automatic W-axis positioning 3 |
M84 | Automatic W-axis positioning 4 |
M85 | Automatic W-axis positioning 5 |
M87 | Oil mist/air blow ON |
M87 | Oil mist/air blow ON |
M88 | Dust collector ON |
M89 | Dust collector OFF |
M90 | Vertical spindle oil mist cycle mode ON |
M91 | Tap-drill hole chip air blow cycle mode ON |
M93 | Thru-spindle coolant at medium pressure/2nd coolant ON |
M94 | Attachment indexing by forward rotation |
M95 | Attachment indexing by reverse rotation |
M98 | Horizontal spindle oil mist cycle mode ON |
M101 | Pallet 1 selection |
M102 | Pallet 2 selection |
M103 | Pallet 3 selection |
M104 | Pallet 4 selection |
M105 | Pallet 5 selection |
M106 | Pallet 6 selection |
M107 | Pallet 7 selection |
M108 | Pallet 8 selection |
M109 | Pallet 9 selection |
M110 | Pallet 10 selection |
M111 | Pallet 11 selection |
M112 | Pallet 12 selection |
M115 | 5th-axis rotary table CW |
M116 | 5th-axis rotary table CCW |
M118 | Spindle orientation (reverse) |
M119 | Spindle orientation (forward/reverse) |
M120 | Work shower ON |
M121 | Attachment air blow ON/Tool nose air blow ON |
M127 | Touch probe ON |
M130 | Spindle rotation condition for cutting feed OFF |
M131 | Spindle rotation condition for cutting feed ON |
M132 | Single block invalid |
M133 | Single block valid |
M134 | Spindle speed override invalid |
M135 | Spindle speed override valid |
M136 | Feedrate override invalid |
M137 | Feedrate override valid |
M138 | Dry run invalid |
M139 | Dry run valid |
M140 | Slide hold invalid |
M141 | Slide hold valid |
M142 | Spindle overload detection invalid |
M143 | Spindle overload detection valid |
M144 | Touch sensor advance |
M145 | Touch sensor retract |
M146 | Work air blow OFF |
M147 | Work air blow ON |
M148 | Work clamp (fixture 1) |
M149 | Work unclamp (fixture 1) |
M150 | Coolant group specification, Vertical spindle |
M151 | Coolant group specification, Horizontal spindle |
M152 | Coolant group specification, 3rd group |
M153 | Coolant group specification, 4th group |
M154 | Sensor air blow OFF |
M155 | Sensor air blow ON |
M157 | AAC (2 st.), No next tool |
M158 | AAC (2 st.), Next tool clear |
M159 | AAC (2 st.), Preparation for the next tool |
M160 | PPC pallet loading |
M161 | PPC pallet unloading |
M163 | Long tool, No next tool |
M165 | Long tool, Preparation for tool change |
M166 | ATC active tool return mode specification |
M170 | AAC (F), Attachment change |
M171 | AAC (T), Attachment change |
M172 | Long tool, Tool change command |
M173 | AAC (2 st.), Attachment change command |
M176 | Dust collection mode, Air blow |
M177 | Angular attachment, Tool change |
M178 | Dust collection mode, ON |
M179 | Dust collection mode, OFF |
M181 | External M signal |
M182 | External M signal |
M183 | External M signal |
M184 | External M signal |
M185 | External M signal |
M186 | External M signal |
M187 | External M signal |
M188 | External M signal |
M190 | Automatic W-axis positioning 1 |
M191 | Automatic W-axis positioning 2 |
M192 | Automatic W-axis positioning 3 |
M193 | Automatic W-axis positioning 4 |
M194 | Automatic W-axis positioning 5 |
M195 | Automatic W-axis positioning 6 |
M196 | Automatic W-axis positioning 7 |
M197 | Automatic W-axis positioning 8 |
M198 | Automatic W-axis positioning 9 |
M199 | Automatic W-axis positioning 10 |
M201-M220 | M code macro |
M230 | Tool length offset direction; Used as it is |
M231 | Tool length offset direction; Used after reversing the direction |
M232 | 3D tool length offset direction; Used as it is |
M233 | 3D tool length offset direction; Reversed and used |
M234 | Synchronized tapping gear selection: Low, Middle low, Middle high, High |
M235 | Synchronized tapping gear selection: Middle low, Middle high, High |
M236 | Synchronized tapping gear selection: Middle high, High |
M237 | Synchronized tapping gear selection: Middle high, High |
M238 | Software override invalid |
M239 | Software override valid |
M278 | Chip conveyor OFF |
M279 | Chip conveyor ON |
M280 | Work counter count up |
M281 | Work clamp (fixture 2) |
M282 | Work unclamp (fixture 2) |
M287 | Work clamp (fixture 3) |
M288 | Work unclamp (fixture 3) |
M289 | Pallet identification |
M292 | Chamfering OFF |
M293 | Chamfering ON |
M294 | Fixed compound cycle; Cutting pattern 1 |
M295 | Fixed compound cycle; Cutting pattern 2 |
M296 | Fixed compound cycle; Cutting pattern 3 |
M297 | Thermal deformation amount transfer command |
M300 | Ignoring Spindle rotation answer |
M301 | Ignoring M code answer other than spindle rotation |
M302 | M301 answer confirmation |
M311 | Robot request 1 |
M312 | Robot request 2 |
M313 | Robot request 3 |
M314 | Robot request 4 |
M315 | U-axis connection OFF |
M316 | U-axis connection ON |
M317 | U-axis air blow OFF |
M318 | U-axis air blow ON |
M319 | Operation time transfer command (DNC-C) |
M320 | Tailstock advance |
M321 | Tailstock retract |
M326 | Synchronized tapping monitor OFF |
M327 | Synchronized tapping monitor ON |
M328 | Spindle no-tool interlock valid |
M329 | Spindle no-tool interlock invalid |
M331 | 6th rotary axis CW |
M332 | 6th rotary axis CCW |
M339 | Thru-spindle air blow ON |
M340 | Work seating monitor ON |
M341 | Work seating monitor OFF |
M342 | Work seating confirmation air ON |
M343 | Work seating confirmation air OFF |
M346 | B-axis rotation interlock valid |
M347 | B-axis rotation interlock invalid |
M351 | AT retraction to MG upper part (MCV-A II simplified 5-face MC) |
M352 | Adaptor retraction to MG upper part (MCV-A II simplified 5-face MC) |
M354 | Chip flusher OFF |
M355 | Chip flusher ON |
M356 | MG pot swing to tool change position |
M368 | Mist collector OFF |
M369 | Mist collector ON |
M374 | Non-contact sensor; Laser OFF |
M375 | Non-contact sensor; Laser ON |
M378 | Coolant flow rate detection; Monitor mode ON |
M379 | Coolant flow rate detection; Monitor mode OFF |
M385 | Work clamp at low pressure (fixture 1) |
This is a list of free and open source CAM (computer-aided manufacturing) software packages.
- FreeCAD - Path workbench
- About FreeCAD
The Path workbench is used to produce machine instructions for CNC machines from a FreeCAD 3D model. These produce real-world 3D objects on CNC machines such as mills, lathes, lasercutters, or similar. Typically, instructions are a G-Code dialect.
The FreeCAD Path Workbench workflow creates these machine instructions as follows:
- A 3D model is the base object, typically created using one or more of the Part Design, Part or Draft Workbenches.
- A Job is created in Path Workbench. This contains all the information required to generate the necessary G-Code to process the Job on a CNC mill: there is Stock material, the mill has a certain set of tools and it follows certain commands controlling speed and movements (usually G-Code).
- Tools are selected as required by the Job Operations.
- Milling paths are created using e.g. Contour and Pocket Operations. These Path objects use internal FreeCAD G-Code dialect, independent of the CNC machine.
- Export the job with a g-code, matching to your machine. This step is called post processing; there are different post processors available.
- LinuxCNC
LinuxCNC controls CNC machines. It can drive milling machines, lathes, 3d printers, laser cutters, plasma cutters, robot arms, hexapods, and more.
- Runs under Linux (optionally with realtime extensions).
- Simple installation on Debian and Ubuntu, or via our Live/Install DVD/USB images.
- Accepts G-code input, drives CNC machines in response.
- Active user community.
- Several different GUIs available.
- Compatible with many popular machine control hardware interfaces.
- Supports rigid tapping, cutter compensation, and many other advanced control features.
- Full source code available under the terms of the GNU GPLv2 (General Public License version 2).
- PyCAM
PyCAM is a toolpath generator for 3-axis CNC machining. It loads 3D models in STL format or 2D contour models from DXF or SVG files. The resulting G-Code can be used with LinuxCNC or any other machine controller.
PyCAM supports a wide range of toolpath strategies for 3D models and 2D contour models. Take a look at the Features page for a full list features.
PyCAM runs on Linux, Windows and MacOS. It is free software licensed under the GPL v3.
- OpenBuilds software
- OpenBuilds CONTROL - Machine Interface Controller
OpenBuilds CONTROL is an application for connecting to, and controlling, your CNC, Laser, Plasma or Dragknife machine.
This will allow you to
- Interface with, and Jog your machine
- Run GCODE Jobs
- Set Zero coordinates
- Integrate with cam.openbuilds.com
- Flatten/Surface your spoilboard / stock
- and even help with your Firmware configuration
- OpenBuilds CAM - GCODE Generator
OpenBuilds CAM is a web-based application for converting SVG, DXF and Bitmap drawings, to GCODE for use with your CNC, Laser, Plasma or Dragknife Machine
This will allow you to
- Import DXF/SVG/PNG/BMP/JPG/Gerber/Excellon files
- Import from a built-in Parts Library
- Setup toolpaths for CNC Routing, Laser cutting, Plasma Cutting and Dragknives
- Generate GCODE
- Send GCODE to OpenBuilds CONTROL
- GRBL
Grbl is a no-compromise, high performance, low cost alternative to parallel-port-based motion control for CNC milling. It will run on a vanilla Arduino (Duemillanove/Uno) as long as it sports an Atmega 328.
The controller is written in highly optimized C utilizing every clever feature of the AVR-chips to achieve precise timing and asynchronous operation. It is able to maintain up to 30kHz of stable, jitter free control pulses.
It accepts standards-compliant g-code and has been tested with the output of several CAM tools with no problems. Arcs, circles and helical motion are fully supported, as well as, all other primary g-code commands. Macro functions, variables, and most canned cycles are not supported, but we think GUIs can do a much better job at translating them into straight g-code anyhow.
Grbl includes full acceleration management with look ahead. That means the controller will look up to 18 motions into the future and plan its velocities ahead to deliver smooth acceleration and jerk-free cornering.
Licensing: Grbl is free software, released under the GPLv3 license.
- CAMotics
With CAMotics, you can simulate 3-axis GCode programs for CNCs and visualize the results in 3D. CAMotics runs on Linux, OS-X or Windows. It's fast, easy to use and best of all Open-Source and free.
With the power to simulate your CNC tool paths you will avoid dangerous and expensive mistakes. By looking at the built-in examples and using the online documentation you'll be running your own simulations in no time. And, if you need more help, we'll be happy to answer your questions via the discussion group.
CAMotics aims to be a useful CNC simulation platform for the DIY and Open-Source community. CAMotics should serve the highly technical user but remain simple and user friendly enough to support less techie types as well.
Features:
- Fast 3-axis cut-workpiece simulation with 3D visualization.
- Simulates cylindrical, conical, ballnose, spheroid and snubnose tool shapes.
- Tool path 3D visualization.
- Multi-threaded rendering can take advantage of multi-processor CPUs.
- GCode parsing, simulation, verification and annotation.
- In application GCode and TPL view and edit.
- Supports LinuxCNC (AKA EMC2) O-codes.
- Export cut workpiece to STL file.
- Tool table editing.
- Add height probing to 2D GCode files. Very useful for circuit board cutting and metal engraving.
- 2D GCode path optimization. (in progress #11)
- Operates in Windows and Linux.
- Released under the GPL v2+ license.
- Blender CAM
Blender CAM is an open source solution for artistic CAM - Computer aided machining - a g-code generation tool. Blender CAM is an extension for the free open-source Blender 3d package. It has been used for many milling projects, and is actively developed. If you are a developer who would like to help, don't hesistate to contact me.
This extension is free of charge, however you can donate to support the development and appreciate the work which has allready been done. There is currently no warranty for the results from blender CAM - you have to check your paths before use. Blender CAM has been tested with success in my studio. I wouldn't recommend Blender CAM for metalworking now, be carefull if you try it.
Features:
Milling G Code Software
- Several milling strategies for 2D and 3D
- Cutter types: ball, flat, v-carve with various angles
- work with 3d data or depth images
- Layers and skin for roughing.
- Inverse milling
- Various options for ambient around model
- protection of vertical surfaces
- stay low - option for movement
- material size setup
- simulation of 3d operations
- Background computing of the operations, so you can continue working
- helix entry, arc retract, ramp down for some of the strategies.
- Automatic bridges for cutout operation
- Chain export and simulation
- DXF2GCODE
DXF2GCODE is a tool for converting 2D (dxf, pdf, ps) drawings to CNC machine compatible GCode. Windows, Linux, and Mac support by using python scripting language.
G Code Milling Software
Features:
Milling G Code Software Free
- Integration in EMC2
- Fully adjustable Postprocessor
- G0 moves reduction by route optimization
- Import of DXF, PDF and PS files
- Improved accuracy for splines import by Line and Arc's
- Mill parameter specification by layers
- Drag knife and lathe support
- Breaks a.k.a Tabs support
- AutoCAD Blocks and Inserts
- Multiple tools
- Multiple language support: English; German; French; Russian
- 3D viewer