CNC Tool Change & ATC M-Codes: M06, M61, M00 with Real Examples
Tool changes are controlled by M-codes that command the automatic tool changer (ATC).
Understanding these commands ensures safe, efficient, and fully automated CNC operation.
📌 1. Standard Tool Change Code — M06
M06 (or M6) tells the CNC to change to the tool specified by the current T-code.
Example
T01 M06 (Load tool 1)
T02 M06 (Change to tool 2)
Tip: Always call the next tool before spindle or feed moves.
📌 2. M00 — Program Stop (Manual Intervention)
M00 stops the program until the operator presses Cycle Start again.
Useful for manual tool changes or inspections.
M00 (CHECK TOOL OR PART)
📌 3. M61 — Tool Change Ready / Custom ATC Signal
On many Fanuc and Siemens machines, M61 is used to signal automatic tool change completion or prepare the magazine for the next tool.
Example
M61 (Prepare ATC for next tool)
Some machines use M60–M65 range for magazine rotation, tool arm actions, or pallet changes.
📌 4. Fanuc Example — Standard ATC Program
%
O1001 (TOOL CHANGE EXAMPLE)
G90 G17 G40 G49 G80 G21
T01 M06
S2500 M03
M08
G00 X0 Y0 Z100.
G01 Z-20. F200
M05
M09
T02 M06
S1800 M03
G00 X50 Y0 Z100.
M30
%
- M06 executes automatic tool change.
- S + M03 starts spindle after change.
- M09 / M05 ensure coolant and spindle off before next tool.
📌 5. Haas Example — ATC Ready and Stop Codes
T01 M06
S3000 M03
M08
G00 X0 Y0 Z50.
M00 (CHANGE INSERT OR INSPECT)
M05 M09
T02 M06
Haas machines often allow M61 or M60 for pre-stage tool selection.
📌 6. Siemens Sinumerik Equivalent
TOOL CALL 1 Z S2500
M06
SPINDLE ON CW
- TOOL CALL replaces T-code.
- M06 executes the physical change.
📌 7. Heidenhain Equivalent
TOOL CALL 1 Z S2000
L Z+100 R0 FMAX M03
- The TOOL CALL block performs tool selection and spindle setup simultaneously.
📌 8. Tool Change Safety Guidelines
- Always stop spindle (M05) before M06.
- Always retract to safe Z height before changing tools.
- Use G53 Z0 or G28 Z0 to move away from the part.
- Never perform tool change inside a drilling or motion cycle.
Safe Example
G91 G28 Z0 (Retract to machine Z-home)
M05 M09
T02 M06
G54 G90
📌 9. Common Mistakes
| Mistake | Result |
|---|---|
| Forgetting M05 before M06 | ATC error or spindle crash |
| No retract before M06 | Tool arm collision |
| Wrong T-number | Wrong tool loaded, scrap part |
| Forgetting M09 | Coolant spills during change |
📌 10. Future Trends (2025–2030)
- AI-assisted tool changers — predict next tool and pre-stage automatically.
- Self-diagnosing ATC systems — detect jams, worn arms, and auto-reset.
- Smart tool magazines — use RFID tags to identify tool type and life data.
✅ Conclusion
Mastering M-codes for tool change and ATC operation — M06, M61, M00 — is key to safe and automated machining.
By following best practices and using proper retracts, you ensure smooth tool transitions, zero crashes, and maximum spindle uptime.
Leave a comment