Make Custom M-Codes with our USB IO Interface Module

“How do I add additional accessory automation to my PCNC mill?”  This question comes up if someone wants to automate or integrate a vacuum table, shop-vac dust collector, mist coolant, or anything else that may help their manufacturing processes.  Integration is not trivial.  It requires some knowledge of Visual Basic programming, some electrical engineering, and diving into Mach3 customization.

Our newest product, a USB M-Code IO Interface module makes it a great deal easier to add inputs or outputs to your PCNC mill.  You can integrate up to 4 inputs and 4 relay outputs without any changes to the standard Tormach PCNC software configuration files and talk to them using simple M-Code commands.  The only connection to your controller is a standard USB cable.


The inputs and outputs of the USB IO are controlled with custom M-Codes via a software plugin that we provide with the product.  The M-Codes can be read from a G-Code file or they can be used directly in a MDI (manual data input) line.

For example, if you want to turn on the first output you simply add one line in your G code file:

M64 P0

If you want to turn off the output, the line would be:

M65 P0

It’s just that simple.  No Visual Basic, no configuration files, and no modification to Mach3.  The initial release of this product is going out as a beta model since we cannot possibly test to all applications the people might envision.

Using the device does entail interfacing to relays.  That requires proper considerations for fusing, wiring, and electromagnetic interference.  The user guide provides an application example which can be used as guidance to create your own interface project.

While we cannot help debug whatever accessories you invent, your inventions or additions do not require any modifications to the basic control software or machine wiring.  If you have problems with control simply unplug the USB M-Code IO Interface Module and you will be back to standard stock controller configuration that is shipped with each PCNC.

Download the user guide here: Application Example Guide


2 thoughts on “Make Custom M-Codes with our USB IO Interface Module

  • Avatar
    September 17, 2013 at 8:03 am

    Is there any way to setup SprutCam to convert the “mist” setting to a M64/65 P# instead of the native M7/9? would this require modifying the “coolnt” post program?
    It would be fairly easy to add custom code to each op, but being able to use the integrated check boxes to switch from flood to mist would be ideal.

  • Andrew Grevstad
    September 17, 2013 at 11:34 am

    You can do this fairly easily in SprutCAM by creating a custom “Auxiliary Operation” in SprutCAM that is defined as M64 P#. Make one for “Mist Coolant ON” and a second for “Mist Coolant OFF”

Comments are closed.