Skip to main content
CNC.wiki

Mitsubishi Vibration Suppression Parameters: G08.5 VCC Guide

Learn to configure Mitsubishi vibration suppression parameters. Resolve P33 and M01 1309 VCC errors by adjusting parameters #12586 and #2313 on your CNC machine.

Hakan Gündoğdu
Hakan Gündoğdu

CNC CARE Co-founder

Introduction

If a CNC programmer commands vibration cutting control with an integer frequency value, the tool path perfectly overlaps on each rotation, failing to create an air-cutting zone. The physical consequence is severe: continuous chips wrap around the turret or chuck, causing chip nest entanglement that destroys the surface finish of the part, cracks the cutting tool insert, or forces a hard collision that shifts the machine's spindle alignment. To prevent this, Mitsubishi CNC users must program Vibration Cutting Control (VCC) via G08.5 to vibrate the feed axis during active cutting interpolation. This method breaks long, stringy chips into manageable segments that eject cleanly into the chip conveyor.

Technical Summary

SpecificationDetails
Command CodeG08.5
Modal Group / ModalityNon-modal command (G code group 0)
BrandsMitsubishi (brand-filtered)
Critical Parameters#12586 (ActualClamp_VCC), #2313 (SV113 SSF8/bit0)
Main ConstraintVCC can only run on one axis at a time. The frequency (address I) must not be set to a whole integer to ensure an air-cutting zone.

Quick Read

  • Avoid Integer Frequency Values: Command a fractional frequency (ideally integer + 0.5) using address I to maximize the air-cutting zone and break chips.
  • Verify Axis Syntax: Always include a trailing "0" after the axis address (such as Z0) in the G08.5 block or a P33 program error triggers.
  • Enable Servo Parameters: Set parameter #2313 (SV113) bit 0 to 1 and parameter #2139 (omrff_off) to 1 to activate Optimal Machine Response Feed Forward during vibration cutting.
  • Match G-Code System: Configure parameter #1037 (cmdtyp) according to your setup: 1 or 2 for machining centers (G-code system 1) or 3 to 8 for lathes (G-code systems 2 to 7).
  • Clamp Vibration Feedrates: Adjust parameter #12586 (ActualClamp_VCC) to prevent mechanical runaway when superimposed vibration components are added to the axis speed.
  • Restrict Axis Selection: Command only a single axis for vibration cutting in a single block to avoid coordinate system calculation conflicts.

Basic Concepts

Vibration Cutting Control (VCC) via G08.5 is fundamentally used to prevent continuous chip formation, which can cause entanglement around the turret or chuck and potentially lead to a scrap part or a hard collision. Programmers achieve this by vibrating the feed axis during cutting commands like G01, G02, or G03.

It is critical for operators to verify that OMR-FF (Optimal Machine Response - Feed Forward) is properly enabled; specifically, parameter #2313 SV113 SSF8/bit0 must be set to 1, and #2139 omrff_off should be set to 1 to temporarily restrict OMR-FF strictly to the VCC mode. A highly common programming error that defeats the entire purpose of VCC is setting the frequency (address I) to a whole integer. When an integer is programmed, the tool path perfectly overlaps on each rotation, failing to create an air-cutting zone, meaning chips cannot be dispersed. Programmers must theoretically command an "integer + 0.5" for the frequency to maximize the air-cutting zone and ensure chips break properly. Operators must also be mindful of excessive machine resonance; utilizing notch filter parameters like SV038 FHz1 and SV046 FHz2 (settable from 0 to 2250 Hz) helps suppress unwanted mechanical vibrations during active machining.

Command Structure

The syntax structure of G08.5 dictates how the Mitsubishi control processes axis vibration. The start block designates the vibration cutting mode, selection of the target axis, the frequency of vibration, and the amplitude feed ratio. When the CNC reads G08.5 P2, it initializes the vibration routine, but the actual oscillation only occurs during subsequent linear or circular cutting interpolation commands.

The cancel command, G08.5 P0, halts all vibration control. It is essential that the cancel block does not contain axis addresses or secondary parameters. If the programmer mistakenly includes address "a", "I", or "K" in the cancel block, the controller immediately raises a P32 alarm.

Syntax

G08.5 P2 Z0 I1.5 K2.00 ; Start VCC on Z-axis, frequency 1.5, amplitude ratio 2.00
G01 Z-10.0 F0.2       ; Perform linear cutting with vibration
G08.5 P0              ; Cancel vibration cutting mode

Parameters

Address / ParameterDescriptionSetting Range / Value
PCommand mode select: P2 to start vibration cutting, P0 to cancel vibration cutting.0 or 2
αVibration target axis. Specify the axis name (e.g., Z) followed by a trailing 0 (Z0).Axis address with trailing 0
IVibration frequency per spindle rotation. Must not be set to a whole integer.0.10 to 31.50
KVibration amplitude feed ratio. Omission uses the default parameter value.0.01 to 9.99

Brand Applications

Mitsubishi

On Mitsubishi CNC systems, G08.5 syntax strictly requires a trailing "0" immediately following the axis address (e.g., Z0) within the VCC start block. If the word command value check is active and the trailing zero is omitted, the machine instantly halts with a P33 program error. The control also enforces a strict division between machine types: Lathes (L systems) must use G-code systems 2 through 7 (configured via parameter #1037 cmdtyp), whereas Machining Centers (M systems) are restricted to G-code system 1. Executing G08.5 on an invalid G-code system triggers a P34 alarm.

To safeguard the axis drives from mechanical damage during aggressive vibration cycles, Mitsubishi utilizes parameter #12586 (ActualClamp_VCC). If the combined velocity of the commanded feedrate and the superimposed vibration components exceeds this programmed limit, the system triggers an M01 1309 operation error to prevent axis runaway.

Version and Series Comparison

Mitsubishi Controller SeriesVCC Option AvailabilityParameter and System LimitsTypical Application Constraints
M800/M80 SeriesStandard high-performance supportAllows full adjustment of #11678 VibPerRevMax_VCC and #12586 ActualClamp_VCC clamp limits.Optimized for high-speed machining centers (M system) and multi-axis lathes (L system).
C80 SeriesAvailable on specialized multi-axis configurationsFully supports notch filters #2238 (SV038) and #2246 (SV046) to suppress mechanical resonance.Typically integrated in high-production lines requiring multi-spindle control II synchronization.
E80 SeriesOption-dependent standard supportSubject to lower frequency clamp thresholds and basic tuning limits.Restricted to standard machining cycles; not suitable for highly aggressive vibration feeds.

Technical Analysis

Mitsubishi CNCs exhibit highly distinct VCC behaviors compared to other control brands. First, their syntax strictly requires a trailing "0" immediately following the axis address (e.g., Z0) within the G08.5 block; omitting this zero instantly triggers a P33 alarm code if the word command value check is active. Second, Mitsubishi enforces a strict G-code system division for VCC execution based on the machine type: Lathes (L systems) must use G code systems 2 through 7, while Machining Centers (M systems) are restricted to G code system 1. Executing G08.5 in an improper system immediately halts operation with a P34 program error. Finally, Mitsubishi incorporates a dedicated hardware-protection clamping mechanism for the vibration feedrate via parameter #12586 ActualClamp_VCC. If the superimposed vibration components push the axis speed beyond this programmed limit, the system natively triggers an M01 1309 operation error to prevent mechanical runaway, distinctly ensuring that aggressive amplitude and frequency combinations do not damage the axis drives.

We must also mention how to avoid conflicts with related systems, such as when configuring axis orientations or names as defined in md10000-siemens-axis-names, or when configuring the default G-code parameters during startup as described in md20112-program-start-default. These principles highlight the importance of aligning CNC system types with physical parameters.

Program Examples

N01 M03 S3500 ; Start spindle at 3500 RPM
N02 G95       ; Select feed per revolution mode (synchronous feed)
N03 G08.5 P2 Z0 I1.5 K2.00 ; Start vibration cutting on Z axis, frequency 1.5, amplitude ratio 2.00
N04 G01 Z-1.0 F0.04 ; Execute linear cutting interpolation with active Z-axis vibration
N05 G01 X1.0 ; Cut X-axis (vibration remains active on Z-axis)
N07 G08.5 P0 ; Cancel vibration cutting mode

Dry Run Execution Procedure

Before executing vibration cutting in production, operators must perform a dry run to verify the axis moves correctly without causing mechanical damage. Execute the following steps:

  1. Check Clearance: Ensure the workpiece is not clamped in the chuck, and clear the turret of any tools that could collide with the spindle.
  2. Set Single Block: Toggle the Single Block switch on the operator panel to the ON position.
  3. Input Code: Enter the program block in MDI mode or select the test program.
  4. Execute Start: Press Cycle Start to activate the spindle at 3500 RPM.
  5. Confirm Feed Mode: Press Cycle Start to read the G95 command.
  6. Activate VCC: Press Cycle Start to execute the G08.5 P2 Z0 I1.5 K2.00 block. Verify that no program error is triggered and that the axis is prepped for vibration.
  7. Run Interpolation: Press Cycle Start to execute the G01 Z-1.0 F0.04 cutting feed. The Z-axis will feed while visibly and audibly vibrating. Ensure the vibration speed does not trigger parameter clamp limits.
  8. Cancel Mode: Press Cycle Start to execute the G08.5 P0 block. The vibration components will cease immediately, and the axis returns to normal feed mode.

Error Analysis

Mitsubishi Alarm CodeTrigger ConditionOperator SymptomPractical Resolution
P32
Program Error
Commanded axis does not exist in the part system, or addresses "a", "I", or "K" are command values inside a cancel block (G08.5 P0).The system halts block execution; an alarm message is displayed on the screen; cycle start is disabled.Verify the axis name is valid for the system, and remove any address values from the cancel block.
P33
Program Error
Address P is omitted, two or more axes are commanded simultaneously, or the trailing "0" following the axis address is omitted while word check is active.The machine execution stops instantly; the HMI displays a syntax fault.Specify exactly one axis with a trailing "0" (e.g., Z0) and ensure the P2 command is present.
P34
Program Error
G08.5 command is issued in an invalid G-code system.The controller halts operation and locks the program block.Ensure parameter #1037 cmdtyp is set to 1 or 2 for machining centers (G-code system 1) or 3 to 8 for lathes (G-code systems 2 to 7).
P35
Program Error
An invalid value is commanded, or the commanded frequency or amplitude ratio exceeds parameter limits.The CNC aborts the active cycle and displays a parameter error.Check that frequency address I is within 0.10 to 31.50 and amplitude K is within 0.01 to 9.99, and does not exceed parameters #11678 or #11671.
M01 1309
Operation Error
The combined vibration feedrate is clamped by parameter #12586 ActualClamp_VCC.The axis feed rate is limited; the operation error message is displayed on the screen.Reduce the commanded cutting feedrate, amplitude, or frequency, or adjust the parameter limit #12586.
M01 1303
Operation Error
The command speed of dry run and external deceleration is clamped by parameter #12571 VibClamp_VCC during active vibration cutting control.Axis motion is clamped during dry run or deceleration; warning light triggers.Adjust the dry run velocity or increase the clamp threshold in parameter #12571.
M01 1300
Operation Error
The selected spindle is changed during active vibration cutting mode when multiple-spindle control II is enabled.The system aborts spindle rotation; cycle stops.Perform spindle selection changes before executing the G08.5 activation block.

Application Note

A destroyed workpiece and a cracked spindle bearing are the direct mechanical consequences of programming a whole integer for the frequency address I during vibration cutting control. When an integer value is commanded, the tool path perfectly overlaps on every single rotation of the spindle. This overlap fails to generate the required air-cutting zone, which means chips cannot be dispersed and instead form a dense nest around the workpiece. To prevent this severe failure, programmers must command a fractional frequency (integer + 0.5) to maximize the air-cutting zone and ensure chips break properly. Technicians must calibrate parameter #2313 SV113 SSF8/bit0 to 1 and #2139 omrff_off to 1 to temporarily restrict OMR-FF to VCC mode, which guarantees optimal response during high-speed oscillations.

Related Command Network

  • G01 / G02 / G03: Linear and circular interpolation commands during which the target axis executes vibration cutting.
  • G94 / G95: Feed rate modes that define either feed per minute or feed per revolution, which must be set to feed per revolution for synchronous vibration cutting.
  • G61.1: High-accuracy control mode that coordinates with VCC to maintain precise path tolerances.
  • m19-spindle-orientation: Spindle orientation command that must be executed only when the spindle has stabilized and VCC mode is completely canceled.

Conclusion

Implementing G08.5 vibration cutting control on Mitsubishi controllers requires precise syntax structure and strict coordination of parameter settings. Programmers must ensure fractional frequency values are commanded to guarantee the air-cutting zone is created, and technicians should verify that parameter #12586 is properly adjusted to prevent feedrate clamping errors. Following these guidelines ensures smooth chip evacuation, protecting the machine tool spindle and maintaining continuous automated production.

Frequently Asked Questions

Why does my Mitsubishi CNC trigger a P33 program error when executing G08.5?

This program error is triggered when the axis name in the G08.5 block is commanded without its trailing zero, or if two axes are commanded simultaneously. The control needs the trailing zero to parse the axis word command value correctly. Practical Action: Inspect the G08.5 block in your program and ensure the target axis has a trailing zero, such as writing Z0 instead of Z.

What causes the M01 1309 operation error during vibration cutting?

This error occurs because the axis speed exceeds the safety limit configured in parameter #12586 ActualClamp_VCC due to the addition of vibration components to the cutting feedrate. The system clamps the feedrate to prevent axis runaway and motor overload. Practical Action: Reduce the programmed cutting feedrate, vibration amplitude, or frequency in the G-code, or increase the clamp value in parameter #12586 if mechanical limits allow.

How does the frequency value programmed in address I affect chip breaking?

Programming a whole integer frequency causes the tool path to overlap perfectly on subsequent rotations, eliminating the air-cutting phase needed to break chips. Fractional values shift the tool oscillation peak relative to the previous rotation. Practical Action: Always program a fractional frequency value in the format of integer plus 0.5 (for example, I1.5 or I2.5) to maximize the chip-breaking zone.

Still not resolved?

Ask our AI assistant about this topic in natural language. Grounded in verified sources, no hallucinations.

Ask AI Assistant
Hakan Gündoğdu
Hakan Gündoğdu
  • CNC CARE Co-Founder (May 2025 - Present)
  • Mitsubishi Electric NC Sales & Service Section Manager (2008 - 2025)
  • Reis CNC Service Engineer (2003 - 2008)
  • Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)

With over 25 years of experience working in all areas of the CNC machine industry, I continue my activities as a co-founder of CNC CARE, where we offer brand-independent consulting, engineering, and original spare parts services.

Related Articles

Other articles on this topic