Typical digital machine tools are controlled by a software language that tells them how to make something through a series of commands. The WAZER is no different and it relies on a language called G-code to know what to do. This language has been used by many machine tools before it. However, being a tool with a number of unique functions, WAZER uses a custom flavor of G-code that includes many WAZER specific commands. At the moment, WAM is the only program that generates WAZER approved gcode that the WAZER controller can correctly read and respond to. As a result, it is imperative that only Wam generated G-code files be used with a WAZER machine. This is because an incorrectly generated G-code file, like many other tools, can cause the machine to damage itself and your property, as well as hurt you. As a result, using any edited or non-Wam generated G-code files will void your warranty and the WAZER TOS.

IMPORTANT: Editing or using non-Wam generated G-code can cause your WAZER to damage itself and your property. As a result, this will void your warranty and violates the WAZER TOS.

Below is an explanation and dissection of the WAZER G-code structure so that you can understand how WAZER is interpreting the series of commands that Wam generates. These are all critical for your WAZER to function corrrectly and safely:

  • G90 - Absolute Mode: All of your coordinates and movements are referenced from the top left corner of the cutting area. This is why the WAZER goes through the homing routine at the start of your. The WAZER controller does NOT support any other modes besides G90 (absolute).

  • G21 - Millimeter mode: All coordinates will be interpreted as millimeters. We recommend to keep this as this is the default for WAM. The WAZER controller does NOT support any other modes besides G21 (mm).

  • M1403 - WAZER Initialization: This calls critical startup subroutines built into the WAZER firmware that allow it to correctly function.

  • M1405 X##.## Y##.## - This defines the bounding box top left corner used in the “Cut Extents” option before a cut. This aids you in making sure that the cut will be correctly located on your material.

  • M1406 X##.## Y##.## - This defines the bounding box bottom right corner used in the “Cut Extents” option before a cut. This aids you in making sure your cut will fit on your material.

  • M1407 S##.# - This defines the re-pierce time after a pause or unexpected stoppage.

  • M1410 #.#; Generated on Wam - This lets the firmware know which version of Wam the g-code was generated with. This assures compatibility between the version of Wam you generated your G-code file with and the current version of your WAZER machine firmware. This is critical, as the M-codes we use can change over time as well as how the firmware interprets them

  • G0 X#.## Y-#.## - Rapid movement. This will move the the specified coordinates at the predefined rapid speed.

  • G1 X#.## Y#.## F##.## - Move to specified coordinates at the speed of F#.## (in mm/min)

  • M3 - Opens the high pressure valve

  • M5 - Closes the high pressure valve

  • M8 - Opens the abrasive valve - this starts the flow of abrasive

  • M9 - Closes the abrasive valve

  • G4 S##.# - Pause for S##.# seconds. This is used in multiple occasions throughout the G-code file. It can function as a:

    • pierce time

    • dynamic catchup for the jet to produce a cleaner cut on your part

    • required delay between on/off or off/on of certain peripherals due to the machine’s dynamics

    • a method to ensure safe operation and shutdown of components

  • M1404 - WAZER shutdown: This calls critical shut down subroutines built into the WAZER firmware that allow it to correctly function.