a. Always return home for tool changes, specifying a move in the X-axis away from your part, then specify a z-axis move to home the tool
i. G00 G53 X0.0
ii. G00 G53 Z0.0
iii. CAUTION: Specifying G28 X0.0 Z0.0 will command the machine to send the tool to the X0.0 and Z0.0 of the current work (part) coordinate system as a vector move AND THEN HOME, causing the tool to CRASH into the part
b. Do not program vector rapid movements (moving the X and Z axes at the same time)
i. The code is executed line by line, so placing an X and Z coordinate in the same line will simultaneously move both the X and Z axes to each coordinate (i.e. G00 X0. Z0.)
ii. CAUTION: Specifying G28 will command the machine to send the turret home using a rapid vector move, so use G53s instead, as described above
iii. CAUTION: MAKING THIS ERROR CAN CAUSE A COLLISION. ALWAYS PROOFREAD YOUR CODE, RUN A SIMULATION, AND DO A DRY RUN AT 5% RAPID EVERYTIME ANY CHANGE IS MADE TO A PROGRAM, NO MATTER HOW SMALL THE CHANGE MAY BE.