Click here to go back to the main Getting Started page.
Migrating from Mach3 to Mach4
Mach number (Ma or M) is the speed of an object moving in air, divided by the speed of sound at that particular conditions, including temperature and pressure.At Standard Sea Level and temperature 15 degrees Celsius, the speed of sound is 761.2 miles per hour (mph) = 340.3 meters per second (m/s) = 1225 kph = 1116 foot per second (ft/s) = 661.5 knots (kn, kt or kts). 3) Previously recommended: Mach4 Hobby version 4.2.0.4322 with ESS 253 or ESS 250 This worked well for non-THC applications like milling, routing and lathe work, but would not be the preferred choice now.
This page is designed to help you make the transition from Mach3 to Mach4 as easily as possible. The different sections of this page will help you to convert your existing Mach3 profile/setup into a functional Mach4 profile.
Please keep in mind that Mach3 is a mature product, and while Mach4 is stable, it is still under active development with new features being added and new releases coming out.
Changes to be aware of in Mach4:
For the remainder of this article, I will show you how to port the G540 from Mach3 to Mach4.
The first thing you will need to do is install Mach4 and the ESS plugin, which is detailed in SETUP Steps 2 and 3.
You will need to complete the remainder of the SETUP steps (other than you will skip step 6 since you do not have an existing plugin).
Once you are done with that, the following steps on this page will walk you through the settings you need to transfer from Mach3 to Mach4, and we will follow the same basic steps as that other guide.
In Mach3 -> Menu -> Config -> Ports and Pins -> Input Signals. Scroll down to EStop. On a piece of paper, write down the Port Number, Pin Number, and the Active Low state that is currently being used.
Close Mach3 and open Mach4. Go to Menu -> Configure -> Plugins… -> ESS v. - Warp9 Tech Design, Inc
Click on the Pins Config Tab, and scroll down to the Port Number and Pin Number that you just wrote down.
Click on the Input Signals Tab, and locate the row with the name E-Stop.
Press the OK button at the bottom to save these changes. Your EStop button should now show its state inside of Mach4. Please remember that the EStop button is a courtesy signal, and you should read our Safety Page for more details.
In Mach3 -> Menu -> Config -> Ports and Pins -> Motors. Take a screen shot, a picture or on a piece of paper, write down the Port Number, Pin Number, and the Active Low state that is currently being used for all of your motors.
In Mach3 -> Menu -> Config -> Motor Tuning, record the Steps Per, Velocity and Acceleration values for each of your axes.
In Mach3 -> Menu -> Config -> Slave Axis, not which axes are slaved to which axes, if any.
Most recent mac. Close Mach3 and open Mach4.
Go to Menu -> Configure -> Plugins… -> ESS v. - Warp9 Tech Design, Inc
Click on the Pins Config Tab, and scroll down to the Port Number and Pin Number for each of the Motors that you just wrote down (or have a picture of). For each output signal (port and pin number):
Click on the Output Signals Tab, and locate the row with the appropriate name that corresponds to your motor signal.
Press the OK button at the bottom to save these changes.
Go to Menu -> Configure -> Control. (this used to be called Mach…)
Click on the Axis Mapping tab and assign your motors correctly here.
Click on the Homing/Soft Limits tab and configure the settings appropriately.
Click on the Motors tab and enter your tuning values recorded previously.
Press the OK button at the bottom to save these changes.
Your motors should now be controlled by Mach4.
Open Mach3.
From the Mach3's Menu -> Config -> Ports & Pins -> Spindle Setup tab and record the information regarding relays and PWM control.
Now go to Mach3's Menu -> Plugin Control -> Spindle THC and Laser Config and record the Spindle information.
Close Mach3 and open Mach4.
Follow the Spindle setup guide, here.
Your spindle should now be working in Mach4.
In Mach3 -> Menu -> Config -> Ports and Pins -> Input Signals. Take a screen shot, a picture or on a piece of paper, write down the Port Number, Pin Number, and the Active Low state that is currently being used for all of your inputs.
Close Mach3 and open Mach4.
Go to Menu -> Configure -> Plugins… -> ESS v. - Warp9 Tech Design, Inc
Click on the Pins Config Tab, and scroll down to the Port Number and Pin Number for each of the input signals that you just wrote down (or have a picture of). For each input signal (port and pin number):
Click on the Input Signals Tab, and locate the row with the appropriate name that corresponds to your input signal.
Press the OK button at the bottom to save these changes. Your input signal(s) should now show its state inside of Mach4.
In Mach3 -> Menu -> Config -> Ports and Pins -> Output Signals. Take a screen shot, a picture or on a piece of paper, write down the Port Number, Pin Number, and the Active Low state that is currently being used for all of your inputs.
Close Mach3 and open Mach4.
Go to Menu -> Configure -> Plugins… -> ESS v. - Warp9 Tech Design, Inc
Click on the Pins Config Tab, and scroll down to the Port Number and Pin Number for each of the output signals that you just wrote down (or have a picture of). For each output signal (port and pin number):
Click on the Output Signals Tab, and locate the row with the appropriate name that corresponds to your output signal.
https://limoraga1983.mystrikingly.com/blog/ommwriter-1-616. Press the OK button at the bottom to save these changes. Your output signal(s) should now be controlled by Mach4.
Click here to go back to Getting Started: Setting up my PC
*** If you will be using Mach3, you should be at this page instead: Setting up the SmoothStepper with Mach3. ***
*** Only the ESS supports Mach4. The USS does NOT support Mach4, please read here for more details.***
Setting up the SmoothStepper and Mach4 Software
Setup Instructions to Install Mach4 and the ESS Plugin
ESS Plugin Configuration
Mach4 Core Configuration
Setup Instructions to Install Mach4 and ESS Plugin
Setup Instructions to Install Mach4 and ESS Plugin
For Mach4, we recommend using the latest recommended ESS plugin build found in step#3 of the Setup Instructions (below). (Pictures on this page may show older plugin version numbers back to ESS plugin build 206, but that will not affect the setup process, since the config screens have remained unchanged from a functional standpoint.)
Known issues (the status of software development is discussed here):
SETUP Step 1 - Run the SCU:
Confirm that you have used the SCU to prepare your PC for the ESS. Please make sure that your ESS is powered and connected to your PC via Ethernet cable.
Here is a video showing how to use the SCU (System Configuration Utility).
Here is a video showing how to install Mach4 and the ESS Plugin in SETUP steps 2 and 3.
SETUP Step 2 - Install Mach4 and its Documentation:
Hobby vs Industrial: There are two version of Mach4; Hobby and Industrial. Most users will do well with Hobby. Industrial has a few more advanced features and support (please view Mach's documentation to make your decision). When you download Mach4, pay attention to if you are downloading the Hobby or the Industrial version.
If you are going to upgrade your current version of Mach4, make a copy of your entire 'C:Mach4Hobby' folder before you install the new version. This will allow you to revert to what you had previously should you decide to do so.
Mach4 changed a bunch of internal registers (# vars) as of 4517, and requires ESS plugin 260 or newer since their change broke compatibility with the older ESS plugins. ESS plugin 259 and older will only work with Mach4 builds 4470 and older.
Please select one of the following recommended pairs of Mach4 and the corresponding ESS plugin:
1) Recommended: Mach4 Hobby version 4.2.0.4517 with ESS 260
1) Recommended: Mach4 Industrial version 4.2.0.4517 with ESS 260
2) Previously recommended: Mach4 Hobby version 4.2.0.4470 with ESS 259
2) Previously recommended: Mach4 Industrial version 4.2.0.4470 with ESS 259
3) Previously recommended: Mach4 Hobby version 4.2.0.4322 with ESS 253 or ESS 250This worked well for non-THC applications like milling, routing and lathe work, but would not be the preferred choice now.
4) Mach4 Hobby 4360 was the last build that G76 worked correctly in for threading, with ESS 259. (We are trying to find out what changed in Mach4 after 4360)
5) Optional for advanced users: Here is a link to the Mach4 FTP download page, where they have newer development releases. (We don't test against most development releases, so they may have hew features and fixes or they may introduce new bugs and break functionality.) Select an ESS plugin from the next section to go with this.
Mach4 provides a bunch of documentation on how to use Mach4, which you really need to read and understand. You can find it in the Docs folder inside your Mach4 installation folder, typically C:Mach4HobbyDocs
SETUP Step 3 - Install the ESS Plugin:
While there are other archived ESS builds below, you should use one of these two recommended ESS releases:
The currently recommended ESS Build 260 or the newest BETA ESS Build 263 (these include the TMC3in1 v17 plugin) for use with Mach4 4517 or newer see the section above to download).
See the ESS Plugin Change Log here.
Mach4 changed a bunch of internal registers (# vars) as of 4517, and requires ESS plugin 260 or newer since their change broke compatibility with the older ESS plugins. ESS plugin 259 and older will only work with Mach4 builds 4470 and older. 260 is essentially the same as 259 other than compiled against different versions of Mach4. 259 is essential the same as 258, other than it will warn you if you are using too new of a version of Mach4.
ESS Plugin install guide:
- First, make a backup copy of your entire Mach4 folder.
- Unzip the contents of the ESS plugin file that you just downloaded.
- Inside Mach4's plugin folder, which is typically: ‘C:Mach4HobbyPlugins’, replace the existing older ESS plugin files the ‘.m4pw’ and ‘.sig’ files.
- StartMach4 again to use the new ESS plugin, the upgrade is complete.
SETUP Step 4 - Turn on the ESS:
Make sure that your ESS is powered and connected to your PC via Ethernet cable.
SETUP Step 5 - Start Mach4:
Run Mach4 GUI or double click on the Desktop icon.
SETUP Step 6 - Select your Profile (if it exists):
For the 'Select Profile' window, if you have already created a profile, select it and then skip to the ESS Plugin Configuration section. If you have not yet created a profile, continue with the next step.
SETUP Step 7 - Create a New Profile:
To create a new profile from scratch, open Mach4 and click on 'Create Profile'.
SETUP Step 8 - Enter the ESS's IP Address:
When prompted, enter in the IP address of your ESS. The factory default IP is “10.9.9.9” unless you modified it with the configurator. Press 'OK'
SETUP Step 9 - Select Motion Device Cancel:
When the Select Motion Device window appears, you will only be able to click Cancel. Press 'Cancel'
SETUP Step 10 - Enable the ESS Plugin:
Go to Menu -> Configure -> Control. (used to be Mach…) -> Plugins tab: Make sure that the “ESS – Warp9 Tech Design, Inc” plugin is enabled with a green check. You will need to restart Mach4 if you change it to a green check.
Please note - If you will be writing or running lua scripts (like any macro above M99) you will need to enable LUA. If you are enabling lua, you should also enable Regfile at the same time. It does not hurt to enable these two plugins, so we recommend that you just enable them right now too.
SETUP Step 11 - Select Motion Device Cancel, Again:
When the Select Motion Device window appears, again, you will only be able to click Cancel. The ESS will not be visible since the ESS plugin will not be enabled until after Mach4 restarts. Juno editor 2 3 3 torrent. Press 'Cancel'
SETUP Step 12 - Restart Mach4 and Select Profile:
Exit Mach4, and then open Mach4 again, selecting your new profile Yate 3 11 – tag and organize your audio files.
SETUP Step 13 - Select Motion Device -> ESS:
When the Select Motion Device window appears, again, you will finally be able to select the ESS as your Motion Device. Press 'OK'
SETUP Step 14 - ESS Communications:
Check for connectivity by going to Menu -> Diagnostic-> and click on the “ESS v***– Warp9 Tech Design, Inc” to see the Diagnostic Window.
You should be able to see the Sequence ID and Device Time incrementing when the ESS is communicating with Mach4.
If nothing happens when you are in the diagnostic window, or you get messages that Mach4 can't communicate with the ESS, here are the usual problems:
Please continue with the next section: ESS Plugin Configuration, below.
ESS Plugin Configuration:
These pictures were taken with ESS plugin build (version) 206, but will be valid for newer versions of the ESS plugin as well. Please make sure that you have completed the previous section's Initial Mach4 and ESS plugin setup before you start this section.
ESS Entering the Config:
Go to Menu -> Configure -> Plugins… -> ESS v. - Warp9 Tech Design, Inc
ESS Step 1 - Info Tab:
The “Info” tab tells you the order you should follow while configuring the settings for the ESS.
ESS Step 2 - General Tab:
On the “General” tab, you can:
1) Verify the IP address
2) Buffer Size (Almost always left at 0.18) :
The buffer size should be small enough that you have good response to jog commands, feed hold, and feed rate override. I would start out small, and continue to increase it until the delay is noticeable and uncomfortable. Then back off to where it feels good.
3) Set the Plugin Frequency; 40 Hz is the recommended value. I have seen homing fail when this is set to 200 Hz.
4) Monitor the Velocity FIFO Buffer - keep checked.
ESS Step 3 - Motors Tab:
On the “Motors” tab, you can:
Note: The settings in this image are for illustration and you will want to use the values appropriate for your system.
ESS Step 4 - Spindle Tab:
On the “Spindle” tab, you can chose which mode to run your Spindle in. Relay Mode and PWM mode are the most common choices.
Note: The settings in this image are for illustration and you will want to use the values appropriate for your system.
Note: The settings in this image are for illustration and you will want to use the values appropriate for your system.
Note: The settings in this image are for illustration and you will want to use the values appropriate for your system.
In OB Mode you will be able to make your spindle run as Step/Dir, CW/CCW (clockwise / counterclockwise) or Quadrature Mode. To complete this portion of the spindle setup, please set it up as an OB motor, click here.
Note: The settings in this image are for illustration and you will want to use the values appropriate for your system.
ESS Step 5 -Laser Tab:
On the “Laser” tab, you can configure a laser to run in Raster and Vector Modes. Please read the Laser Setup article here, and the articles that follow it, to learn how to use a laser with a SmoothStepper.
ESS Step 6 - Pins Config Tab:
On the “Pins Config” tab, you can:
Here is an example Pins Config window. YOURS WILL BE DIFFERENT!
ESS Step 7 - Input Signals Tab:
Here is a link to the description of all the available Input Signals. On the “Input Signals” tab, you can:
Here is an example Input Signals window. YOURS WILL BE DIFFERENT!
ESS Step 8 - Output Signals Tab:
Here is a link to the description of all the available Output Signals. On the “Output Signals” tab, you can:
Here is an example Output Signals window. YOURS WILL BE DIFFERENT!
ESS Step 9 - Homing Tab:
***I have seen homing fail if the ESS Plugin frequency is set to 200 Hz instead of the default value of 40 Hz. I think that this is PC dependent as to how high the plugin frequency can be, before this issue comes up.***
Here is an example Homing window. YOURS WILL BE DIFFERENT!
ESS Step 10 - Probing Tab:
Here is an example Probing window. YOURS WILL BE DIFFERENT!
ESS Step 11 - Backlash Tab:
Here is an example Backlash tab window. YOURS WILL BE DIFFERENT!
ESS Step 12 - H.C. (Height Control) Tab:
Here is an example Height Control window. YOURS WILL BE DIFFERENT!
ESS Step 13 - ESS Config Completed:
You are finished with the ESS Plugin Config. Please close the ESS Configuration window by pressing 'OK' at the bottom of the window.
Mach4 Configuration:
Here is the current Mach4 Installation Manual (MIM), which details what all of the fields and settings are. Instabeauty pro 2 2 download. There are other manuals provided for you in your 'C:Mach4HobbyDocs' folder. Please read them since they provide lots of useful information!
This guide will only cover the fields that are the most relevant to getting Mach4 and your system running with an ESS. The Mach4 documentation will cover the remaining fields for you.
Mach Entering the Config:
Go to Menu -> Configure -> Control. (used to be Mach…) As we look though the Mach Config tabs, you will see that quite a bit of this has been filled in for you automatically!
Mach4 Step 1 - General Tab:
Mach's General Config tab, has some settings you need to pay attention to:
Mach4 Step 2 - Axis Mapping Tab:
We will skip the Motors tab and cover the Axis Mapping and Homing tabs first.
Please refer back to your ESS Output Signals tab to see which motors you are using, and how they are setup.
Mach's Axis Mapping tab. This allows you to specify which Motors maps to which Axes. In this example, I have Motor3 (which would have been my A axis in Mach3) slaved to my Y axis.
Mach4 Step 3 - Homing/SoftLimits Tab:
We will skip the Motors tab and cover the Axis Mapping and Homing tabs first.
Mach's Homing and Soft Limits tab. This is where we set up our system to return to the home position for each axis. You need to set up each axis individually. Slaved axes will be handled automatically via the ESS and Mach4, based on the Axis Mapping tab.
Please refer back to your ESS Output Signals tab and the Mach Axis Mapping tab in the previous step to see which Axes you are using, and how they are setup.
If you have a home switch on an axis, you can have that axis assigned a home order. If an axis does not have a home switch, it should home in place. In either case, that axis may have soft limits enabled. Soft limits typically are placed just inside the working area in a way that the home or limit switches will not be activated.
In this example, I have it set up to home axes in the following order, Z(1), X(2), Y and its slave(3). All other axes had their home order set to 0 and were set to Home in Place.
Mach4 Step 4 - Motors Tab:
Now that we have done the Axis Mapping and Homing tabs first, we will now cover the Motors tab .
Mach's Motor Config tab. For each motor on your system, enter the following (you will know this already or your parts providers can supply you with this information):
You only need to configure the motors you are using; you may ignore and uncheck unused motors.
How do you calculate your steps per unit? Try this Excel spreadsheet made by RICH. Or our cached version of it here. We do not guarantee the accuracy of this spreadsheet, but it seems to be helpful.
You want to see a trapezoidal shape like this.
Mach4 Step 5 - Input Signals Tab:
Mach's Input Signals tab should be fully populated from the values you entered in the ESS config, you should not need to do anything here. NEVER SET A SIGNAL ACTIVE LOW HERE, ONLY SET A SIGNAL ACTIVE LOW IN THE ESS PINS CONFIG!
Mach4 Step 6 Output Signals - Tab:
Mach's Output Signals tab should be fully populated from the values you entered in the ESS config, you should not need to do anything here. NEVER SET A SIGNAL ACTIVE LOW HERE, ONLY SET A SIGNAL ACTIVE LOW IN THE ESS PINS CONFIG!
Mach4 Step 7 - MPGs Tab:
Mach's MPGs tab. We provide 6 encoders for the 6 motors, 1 spindle encoder, and 3 auxiliary (extra) encoders. If you want to see the encoders counting, go to Mach4's Menu -> Diagnostic -> ESS, and then look at the lower middle of that window for the 10 encoders (the spindle had counted up to 52).
Encoder 0 is mapped to Motor 0.
Encoder 1 is mapped to Motor 1.
Encoder 2 is mapped to Motor 2.
Encoder 3 is mapped to Motor 3.
Encoder 4 is mapped to Motor 4.
Encoder 5 is mapped to Motor 5.
Aux Encoder 0, 1, and 2 can be used anywhere you want to.
You use the Mach Config MPG window to assign the Encoders to the MPGs.
You need lua to assign a MPG to an axis.
MPG0 is assigned to the X Axis
MPG1 is assigned to the Y Axis
MPG2 is assigned to the Z Axis
This screen shot is just meant to show the MPGs, you will want to set yours up according to your needs.
Mach4 Step 8 - Spindle Tab:
Mach's Spindle tab. This is similar to the pulley window in Mach3. Typically, you will only need to configure Row 0, and your settings at the bottom of the window.
Spindle speed is fully adjustable between 0% and 100% (this would be duty cycle in PWM mode), using the M3 S### command etc. within Mach4. In Step and Direction mode we would generate between 0 and 24,000 pulses per second. In the example shown below M3 S24000 will generate a full on signal, M3 S12000 will generate a half speed signal and M3 S0 will stop it (as would the M5 command).
We covered the initial ESS setup of the Spindle back in step #10.
Here is a video on YouTube showing how to set up Spindle PWM with a FWD and Reverse output as well.
The Spindle works withStep/Dir mode. You will need to set it up as an OB motor, which is shown here.
Here is a short FAQ article on the Mach4 Spindle buttons.
Mach4 Step 9 - Tool Path Tab:
Mach's Tool Path tab has nothing to do with the SmoothStepper setup, but it may be relevant to your application.
Mach4 Step 10 - Plugins Tab:
You may enable any plugins you need in this tab.
Mach4 Step 11 - Mach Config Completed:
Press 'OK' to save and exit the Mach Configuration.
Mach4 Step 12 - G61 Exact Stop Mode / G64 Cutting Mode (Constant Velocity) Tuning:
G61 Exact Stop mode makes sure that you come to a full stop at the end of each G0/G1/G2/G3 motion command, before the next motion command is started.
G64 Cutting Mode (Constant Velocity) blends one G0/G1/G2/G3 motion command into the next motion command to keep a constant velocity while also holding a specific distance tolerance. Photoshop offline setup.
You should select one mode or the other (back in the Mach4 General Tab), but you should always include a G61 or a G64 in EVERY GCode file you generate!
You may use G64 Cutting Mode (Constant Velocity) intentionally or accidentally, in either case, you should have it tuned to operate correctly with your hardware! If you ever change your motor tuning, you should rerun the CV (Constant Velocity) tuning wizard.
a) Mach4 Menu -> Wizard -> Select Wizard.
b) Load Wizard-> mcCvDistToleranceV001 (use a newer version if available).
c) Read the info and click Next.
d) Select the axes where the blended motion needs to occur. Typically this will be the X and Y axes and not the Z axis, rotational axes or O.B. axes. Click Next.
e) Enter the tolerance you wish to maintain. Click Next.
f) Click Finished once it tells you that you CV Feed Rate table has been populated.
g) Mach4 Menu -> Wizard -> Select Wizard.
h) Load Wizard-> CV_Feedrate (use a newer version if available). You will see that your CV Feed Rate table has now been populated. There is nothing to do here other than click the X to close it.
Mach4 Step 13 - Backing Up:
Once you have Mach4 running the way you want it to, make a copy (or many copies) of your whole 'C:Mach4' or 'C:Mach4Hobby' or 'C:Mach4Industrial' folder and store it somewhere safe. I have one copy at a relative's house on a USB stick, and another copy on DropBox.com If I ever need to restore or replace my computer, I can just install Mach4, and then use my copy of the 'Mach4' folder to replace the one on the PC and I am all set to run. It can save hours and hours. You should also back up your G-Code projects as well.
Mach4 Step 14 - Wrapping Up:
You are now ready to load a G-Code program and run it! We suggest to practice running with an air cut first (no tools in your spindle) so you can see exactly what the machine will do, and make corrections to your program if necessary. Also you should re-read all of the safety information you have, including ours.
Documentation (Manual) pages:
This concludes the Getting Started walk through. If you need more help, please look at our Troubleshooting guide and our Help page.