3D Computer Graphics in the Real World
My Account Wish List (0) Shopping Cart Checkout
Wittystore
Login
E-Mail Address:
Password:
Forgotten Password
Sign in with Sign inSign inSign inSign in
Sign Up Join Us
// `$_SERVER['REQUEST_URI']` to get the current URL and then check if it contains 'latest-blog' // If the user is using the blog the language menu above is not shown so that the blog is only in english
€
€ Euro £ Pound Sterling $ US Dollar
0
0
0 €0.00
Your shopping cart is empty!
Menu
  • Home
  • 3D Models Download
    • Art
    • DIY
    • Ecolife
    • Garden
    • Home
    • Learning
    • Music
    • Sport
    • Style
    • Board Games
    • Office
    • Toys
    • Characters
    • Collections
      • Baby shower
      • Christmas
      • Earrings
      • Halloween
      • Key-chains
      • Movember
      • Phrases
      • Picks
      • Vehicles
      • Vikings
  • Books
  • Hardware
    • Consumables
      • Filaments
      • Materials
      • Accessories
      • Resins
      • Composite Powder
    • 3D Printers
      • By industry
      • By series
      • By application
      • By technology
      • By materials
    • 3D Pens
    • 3D Scanners
    • Laser Engravers & Cutters
  • Software
    • 3D Modelling Software
    • 3D Printing Software
    • AI Software
    • CNC Software
    • Metaverse
    • Video games
  • Upload

    Share your digital creations!

    upload digital content

    UPLOAD

    Become a Wittyer

    Login/Sign up for a "Wittyer Profile" and upload your content with our easy-to-use tool.

    Choose your licence

    Choose the license that best represents your work between commercial or open source options. Check licences here

    Monetize

    For each download, you will receive up to 85% of the net selling price. Check our royalty options here

  • Customizer3D
  • Blogs
  • 3D Models Download
    • Art
    • DIY
    • Ecolife
    • Garden
    • Home
    • Learning
    • Music
    • Sport
    • Style
    • Board Games
    • Office
    • Toys
    • Characters
    • Collections
      • Baby shower
      • Christmas
      • Earrings
      • Halloween
      • Key-chains
      • Movember
      • Phrases
      • Picks
      • Vehicles
      • Vikings
  • Books
  • Hardware
    • Consumables
      • Filaments
      • Materials
      • Accessories
      • Resins
      • Composite Powder
    • 3D Printers
      • By industry
      • By series
      • By application
      • By technology
      • By materials
    • 3D Pens
    • 3D Scanners
    • Laser Engravers & Cutters
  • Software
    • 3D Modelling Software
    • 3D Printing Software
    • AI Software
    • CNC Software
    • Metaverse
    • Video games
  • Customizer3D
  • Blogs
Home » Tech Explained » List of M-Codes commonly found on FANUC and similarly designed controls
Blog Category
  • Facts & News
  • Guides & Tutorials
    +-
    • Blender Tools and Commands
  • Tech Explained
  • Industry Insights
You may like
CNC Machines miniature boys Animation CAD Office casting patterns dishes 3d printers blender 2.8 easy manual
27 Dec
Share This:
    Share on Facebook X Post to Tumblr Pin it Submit to Reddit Share on LinkedIn Save to Pinboard Send email

List of M-Codes commonly found on FANUC and similarly designed controls

27 Dec 2017
Published In: Tech Explained Hits: 56931

List of M-codes commonly found on FANUC and similarly designed controls for milling and turning.

Code   Description Milling
( M )
Turning
( T )
Corollary info
M00 Compulsory stop M T Non-optional—machine always stops on reaching M00 in the program execution.
M01 Optional stop M T Machine only stops at M01 if operator pushes the optional stop button.
M02 End of program M T Program ends; execution may or may not return to program top (depending on the control); may or may not reset register values. M02 was the original program-end code, now considered obsolete, but still supported for backward compatibility. Many modern controls treat M02 as equivalent to M30. See M30 for additional discussion of control status upon executing M02 or M30.
M03 Spindle on (clockwise rotation) M T The speed of the spindle is determined by the address S, in either revolutions per minute (G97 mode; default) or surface feet per minute or [surface] meters per minute (G96 mode [CSS] under either G20 or G21). The right-hand rule can be used to determine which direction is clockwise and which direction is counter-clockwise.

Right-hand-helix screws moving in the tightening direction (and right-hand-helix flutes spinning in the cutting direction) are defined as moving in the M03 direction, and are labeled "clockwise" by convention. The M03 direction is always M03 regardless of local vantage point and local CW/CCW distinction.

M04 Spindle on (counterclockwise rotation) M T See comment above at M03.
M05 Spindle stop M T  
M06 Automatic tool change (ATC) M T (some-times) Many lathes do not use M06 because the T address itself indexes the turret.
Programming on any particular machine tool requires knowing which method that machine uses. To understand how the T address works and how it interacts (or not) with M06, one must study the various methods, such as lathe turret programming, ATC fixed tool selection, ATC random memory tool selection, the concept of "next tool waiting", and empty tools.
M07 Coolant on (mist) M T  
M08 Coolant on (flood) M T  
M09 Coolant off M T  
M10 Pallet clamp on M   For machining centers with pallet changers
M11 Pallet clamp off M   For machining centers with pallet changers
M13 Spindle on (clockwise rotation) and coolant on (flood) M   This one M-code does the work of both M03 and M08. It is not unusual for specific machine models to have such combined commands, which make for shorter, more quickly written programs.
M19 Spindle orientation M T Spindle orientation is more often called within cycles (automatically) or during setup (manually), but it is also available under program control via M19. The abbreviation OSS (oriented spindle stop) may be seen in reference to an oriented stop within cycles.

The relevance of spindle orientation has increased as technology has advanced. Although 4- and 5-axis contour milling and CNC single-pointing have depended on spindle position encoders for decades, before the advent of widespread live tooling and mill-turn/turn-mill systems, it was not as often relevant in "regular" (non-"special") machining for the operator (as opposed to the machine) to know the angular orientation of a spindle as it is today, except in certain contexts (such as tool change, or G76 fine boring cycles with choreographed tool retraction). Most milling of features indexed around a turned workpiece was accomplished with separate operations on indexing headsetups; in a sense, indexing heads were originally invented as separate pieces of equipment, to be used in separate operations, which could provide precise spindle orientation in a world where it otherwise mostly didn't exist (and didn't need to). But as CAD/CAM and multiaxis CNC machining with multiple rotary-cutter axes becomes the norm, even for "regular" (non-"special") applications, machinists now frequently care about stepping just about any spindle through its 360° with precision.

M21 Mirror, X-axis M    
M21 Tailstock forward   T  
M22 Mirror, Y-axis M    
M22 Tailstock backward   T  
M23 Mirror OFF M    
M23 Thread gradual pullout ON   T  
M24 Thread gradual pullout OFF   T  
M30 End of program, with return to program top M T Today, M30 is considered the standard program-end code, and returns execution to the top of the program. Most controls also still support the original program-end code, M02, usually by treating it as equivalent to M30. Additional info: Compare M02 with M30. First, M02 was created, in the days when the punched tape was expected to be short enough splice into a continuous loop (which is why on old controls, M02 triggered no tape rewinding).The other program-end code, M30, was added later to accommodate longer punched tapes, which were wound on a reel and thus needed rewinding before another cycle could start. On many newer controls, there is no longer a difference in how the codes are executed—both act like M30.
M41 Gear select – gear 1   T  
M42 Gear select – gear 2   T  
M43 Gear select – gear 3   T  
M44 Gear select – gear 4   T  
M48 Feedrate override allowed M T  
M49 Feedrate override NOT allowed M T Prevent MFO. This rule is also usually called (automatically) within tapping cycles or single-point threading cycles, where feed is precisely correlated to speed. Same with spindle speed override (SSO) and feed hold button. Some controls are capable of providing SSO and MFO during threading.
M52 Unload Last tool from spindle M T Also empty spindle.
M60 Automatic pallet change (APC) M   For machining centers with pallet changers
M98 Subprogram call M T Takes an address P to specify which subprogram to call, for example, "M98 P8979" calls subprogram O8979.
M99 Subprogram end M T Usually placed at end of subprogram, where it returns execution control to the main program. The default is that control returns to the block following the M98 call in the main program. Return to a different block number can be specified by a P address. M99 can also be used in main program with block skip for endless loop of main program on bar work on lathes (until operator toggles block skip).

 

Sources: Smid 2008; Smid 2010; Green et al. 1996.

Tags: M-Code CNC 3D-Printing
Same In Category
  • Blender 2.8x vs Fusion 360
  • What’s the Difference Between PLA, ABS, and Nylon?
  • What is G-Code?
  • What is 3D Printing?
  • What does cnc mean in text?
  • What does cam mean in text?
  • Text2STL: Bridging the Gap in 3D Printing While Awaiting AI Advancements
  • Metaverse the next generation of the web
  • List of G-Codes commonly found on FANUC and similarly designed controls
  • Laser Scanning vs Photogrammetry
Related Blogs By Tags
  • ONO Team Finds Solution to Major Board Issues
  • Markforged 3D printer manufacturer to open European headquarters in Ireland
  • What is G-Code?
  • What does cam mean in text?
  • List of M-Codes commonly found on FANUC and similarly designed controls
  • List of G-Codes commonly found on FANUC and similarly designed controls
  • JSCut: Your Free Alternative to MakerCAM for Easy CNC Machining
  • G Code and M Code what's the difference?
  • 3D Printing with PETG

Find us also on:

About us

Wittystore is a company focused on products that are ingeniously clever in conception, execution and expression.

GET IN TOUCH:

 General Enquiries

 Business Enquiries

 Get Support

Information
  • About Us
  • Create Account
  • Privacy Policy
  • Terms & Conditions
  • Advertisement Rates
  • Licences for Digital content
  • Contact Us
Extras
  • Brands
  • Gift Vouchers
  • Affiliates
  • Specials
  • Site Map
My Account
  • My Account
  • Order History
  • Returns
  • Wish List
  • Newsletter
All rights reserved Wittystore © 2014-2025, Company Reg.No. 544064 Ireland, VAT Registered
secure website