Mach4 - In Depth

Take a closer look at Mach4.

Enable or Disable Mach4 PLC 1000 Series

To enable/disable the PLC in Mach4, follow the attached instructions.


File Type Document Name View / Download / Print
pdf-icon.png Disable PLC




1000 Series Mach4 Aux Button Setup

On the 1000 Series control, there are six user auxiliary buttons that can be configured.



To configure the buttons, select the "Settings" tab the lower right of the screen and then press "Screen Configuration."



Each button can be configured to activate a given output signal from the drop-down menu. The user can change the button text in both on and off states. The button could also be defined as momentary or toggle. The defined output signal must be enabled and mapped to a device in Mach settings.

You can put text on another line. For example if you put Hydraulics On as the text, it may not fit. You can put a \n for a line break. For example, Hydraulics\nOn would put the word On below the word Hydraulics in the button.


When finished, press "Save" then "Exit" and restart the software for the changes to take effect.



Keywords: 10612, auxiliary buttons, auxilary, auxillary, auxilliary

gcEdit error in Mach4


When attempting to edit g-code, user receives a gcEdit error.



With the control software closed, open a windows explorer window. In the address bar type %appdata% and press [enter].


It will take you to a folder and you'll see similar files as below:




Delete the gcEdit.ini file. 


Open the control software, load a g-code file and attempt to edit to test. 



Pendant Info-Mach4

Adjusting Pendant Acceleration

You can adjust the pendant acceleration by going to the Settings Tab and selecting Machine Calibration (2000 series select service tab, then Interface config button under settings section).

Scroll down until you see MPG Jog Increment Acceleration (or use search box: MPG).

You can enter in values between 1-100. You should test the jogging with the pendant to make sure that it is jogging smoothly on all increments.  



Adjusting Jog Increments

NOTE: The Jog Increments section (shown below) can be accessed from the configure menu option, then control. The on-screen Jogging Increments cycles through the entire Jog Increments section positions, while the Pendant X1, X10, and X100 knob settings increments through positions 3, 4, and 5 if units mode is inches (outlined in blue below), and positions 8, 9, and 10 (outlined in green below) if units mode is metric. The image below has the position numbers entered in as the values for better explanation. Your values would more likely be 1, .100, .01, .001 or 25.4, 2.54, .254 for example.


  • If a position has a 0 then it will not be cycled through the jog increments for on-screen jogging
  • X1, X10, and X100 on pendant is position 5, 4, and 3 in the jog increments setting for inches or 10, 9, and 8 for metric, respectively (X1 is position 5 and 10, X10 is position 4 and 9, and X100 is position 3 and 8). For example, using the photo above:
    • An X1 pendant setting with units setup for inches, would be a commanded move of 5 inches and if setup for metric units would be 10mm.
    • An X100 pendant setting with units setup for inches, would be a commanded move of 3 inches and if setup for metric units would be 8mm.





Keywords: 13124, 16025

Setting Spindle RPM (Mach4)

Problem: Not going the correct RPM?

Is the spindle encoder configured correctly?

  • Option 1
    • Test with a Tachometer and make sure it matches the RPM in Mach.
  • Option 2
    • Zero the HiCON encoder
    • Rotate the spindle 360 degrees
    • How many encoder counts did it move?
    • Enter that value into the HiCON Config Window “RPM Counts / Rev” (access the Configure menu option, then plugins and select the HiCON plugin).


Is it linear?

  • Set pulley max to 1000
  • Command 1000
  • Command 500 (1/2 of max)
  • Command 100 (1/10 of max)
  • Is the actual linear with the commanded?
    • If it isn’t, then the VFD may be configured with 4-20mA control or the breakout board may have a problem.

Set Max Frequency

  • Calculate the Max Hz like this: Max Hz = Base Frequency / Rated RPM * Desired Max RPM
    • For example, 60 Hz / 1770 RPM * 4000 RPM = 135.59 Hz.
    • The Base Frequency and Rated RPM should be on the motor name plate.
    • Make sure Desired Max RPM is not faster than the Max Motor RPM. 
If you cannot locate the motor’s frequency, the name plate should tell you how many poles there are on the motor.
Using the motor’s maximum RPM and its number of poles, you can calculate the frequency with the formula below.
Base Frequency = Max RPM * Number of Poles / 120

Setup Gears in Mach4

Setup gears

If you do not know the gear ratio on the spindle, setup the spindle as follows:

  1. Set a very high max RPM for the range (such as 50,000)
  2. Turn on spindle at the max spindle speed defined above
  3. Read RPM using spindle encoder or tachometer
    • Need a tachometer?....
  4. Set range Max to the RPM reading above
  5. Repeat for each range/gear


The Max Spindle Motor RPM from Mach4 is not used in this instance.

Also, note that for Gear 1, the 0-10V from the Apollo III will be scaled by 0-814 RPM. So with pulley 1 active, 814 RPM will output 10V on the Apollo III.

Changing Gears

- Gear change in code: M40 - M45 change ranges from 0 to 5. M40 P# can also be used where # is the gear range to use




Keywords: 14297

G73 / G83 Peck Drilling Reposition Location - Mach4


  • The control descends too far on a rapid reposition and breaks drill bits.
  • High-speed peck drilling needs a different retract distance than the system default.


Mach4 has two machine parameters that affect the reposition behavior with regards to peck drilling.

In versions of Mach 4 older than (prior to 2018-05-04) these were pound variables.
Mach 4 Machine Parameters were added at that time, moving some system variables and pound variables to the machine parameter space.
Setting a pound variable in G code is done this way: #5114=500


High Speed Peck drilling cycle (G73) rapid retract clearance.
(integer specifying .0001" or .001mm increments, depending on machine units)

This parameter is how far above the bottom of each peck to command a rapid movement to before descending for the next peck.