The FAQ Mach3 page may also be of some help to understand basic concepts.


FAQ Mach4



How do I set up Mach4 and the SmoothStepper?

Please visit our Mach4 Getting Started Page.


Where do I learn more about Mach4 itself?

The best place is on the Mach Support website itself! 



How do the Spindle buttons work in Mach4?

In the wx4 screenset, the lower right corner of the main Mach window looks like this:

Spindle Buttons

When you press the Spindle CW button you see the LED light up, but nothing happens. When you press the Spindle CCW button you see the LED light up, but nothing happens.  It should be working, but why isn't it?  When you press Spindle CW or Spindle CCW you are turning the spindle on, but with the last commanded speed.  Upon startup of Mach4, the last commanded speed is set to a default value of 0 RPM.  Only after you issue a new speed command will the CW or CCW buttons start at that speed. If you go to the MDI tab and type in a command similar to this, you should get Spindle movement:  M3 S1000

The buttons on the screen call lua script functions (Menu -> Operator -> Lua Script).

MDI and G-Code use Macros, some of which are standard macros (M3, M4 and M5), and custom macros that you can create and place in your "C:\Mach4Hobby\Profiles\YOUR PROFILE\Macros\" folder.   Here is an example of how to create a macro in Mach3, but it is essentially the same here in Mach4, you just save it to this folder path instead.


My Spindle (or something else) should be working, but it isn't!

This might have to do with a missing Macros folder in your "C:\Mach4\Profiles\YOUR PROFILE NAME\" folder.



Setting Up Step Dir Spindle as an OB axis.

We do have Step/Dir Spindle working if you use an OB motor. This is a work around that should be addressed in the next release.

Here are the images that should allow you to get it running.








OB means an Out of Band motor.   If you read about the Spindle section on page 24 (Mach4 CNC Controller Software Installation and Configuration Guide Version 1.0): Essentially you are using a motor output and disregarding the ‘position’ the motor is at (x = 27.1” or x = 48.567”).  Instead you are just using the motor’s acceleration settings to generate a velocity (step pulses), and you are feeding that output signal into your VFD.





Why doesn't Goto Zero work for the Z axis in Mach4?

For safety, the Z axis "Goto Zero" is disabled by default; to modify this, edit this section of the Screen Load Script:

function GoToWorkZero()
    mc.mcCntlMdiExecute(inst, "G00 X0 Y0 A0")--Without Z moves
    --mc.mcCntlMdiExecute(inst, "G00 G53 Z0\nG00 X0 Y0 A0\nG00 Z0")--With Z moves




Go to top