G-code is the instruction set generated by the slicer which tells the printer what to do.

The AON-M2 runs using a firmware based off of the popular Marlin firmware project, and many of the G-code commands are similar in functionality, but with subtle yet important differences. Please refer to this manual for all G-code commands to be run on the M2.

While it is not necessary to be familiar with the intricacies of G-code for day-to-day usage, the aspiring power user will find it invaluable to develop a solid grasp of the fundamentals for developmental work, detailed optimization, or advanced troubleshooting.


AON3D only supports using Simplify3D to generate G-code files. However, you are free to use any slicing software of your choice.

Using a slicer other than Simplify3D to generate G-code files may cause unintended bugs or errors that may cause a print job to be unsuccessful or may cause damage to your machine.

To reduce the risk of bugs, make sure that the G-code files generated by other slicers:

  • Only contains commands listed in the G-Code Detailed Reference page.
  • Do not contain blank lines in the middle of the file.
  • The last line of the file must contain a carriage return.

How to set up Cura for the AON-M2

AON3D does not officially support Cura, and cannot guarantee that using the Cura slicing software will not damage your AON-M2 machine.

This guide is intended to help set up the Cura slicing software for use with the AON-M2, and contains a few tips for using the software with your AON-M2.


Download the Cura software.

Adding a new printer

  1. Under Settings > Printer, click “Add a Printer”
  2. Under “Add a non-networked printer”, select Custom > “Custom FFF printer”. Name it and click “Add”

Machine Settings

Cura Machine Settings

  1. Fill in the machine settings as shown above.

  2. Keep the Start G-Code empty. The recommended End G-code is copied below.

  3. The Printhead Settings distances are conservative to avoid collisions with the cooling tubes on the toolhead. This is only relevant when printing multiple parts one after the other, rather than layer-by-layer. Refer to Multi-Part Printing for additional details.

  4. Note that you should not check the “Heated Build Volume” box. This is because Cura uses a different G-code command M141 for a heated chamber than the AON-M2 M104 T2. You will have to manually set the chamber temperature. The machine should already be set to the correct chamber temperature before you start a print. You can use the End G-code in Cura to turn the chamber off at the end of the print, the same as Simplify3D.

     // End G-code
     M104 T0 S0 ;turn off T0 heater
     M104 T1 S0 ;turn off T1 heater
     M104 T2 S0 ;turn off chamber heater
     M140 S0 ;turn off bed

Extruder Settings

Cura Extruder Settings

  1. For each extruder, set the nozzle size you are most likely to use.

  2. Enter the 1.75mm filament diameter.

  3. For the Start and End G-code scripts, you can enter our generic Tool Change Scripts for T0 and T1 (copied below). Note that the material profiles we provide for Simplify3D often have optimized versions of this script for specific materials and nozzle sizes. We recommend checking the Tool Change Scripts in Simplify3D to replicate them in Cura per material.

     // T0 Start G-code
     G91 ;relative mode
     G1 E10 F60 T0;purge 10
     G1 X60 F30000 ;move T0 tool head to wipe
     G1 X-30 ;move T0 tool head to wipe
     G1 X30 ;move T0 tool head to wipe
     G1 X-30 ;move T0 tool head to wipe
     G92 E0 ;reset extruder
     G90 ;absolute mode
     // T1 Start G-code
     G91 ;relative mode
     G1 E10 F60 ;purge 10
     G1 X-60 F30000 ;move T1 tool head to wipe
     G1 X30 ;move T1 tool head to wipe
     G1 X-30 ;move T1 tool head to wipe
     G1 X30 ;move T1 tool head to wipe
     G92 E0 ;reset extruder
     G90 ;absolute mode

Notes for Use

G-code Commands

The AON-M2 uses custom firmware. Cura uses several G-code commands not supported on the AON-M2 firmware. A warning comes up when one of these commands is encountered, and the command is ignored. Generally, these commands are not necessary and ignoring them has no negative consequence, however we cannot guarantee this is always the case.

Known unsupported commands used by Cura:

  • M105
  • M107

Most settings can be manually transferred between Simplify3D and Cura, although many have different names. Cura also tends to break down settings into more granular options with more levels of control, but does not filter for relative usefulness of these options or how best to combine them.

Last modified: February 16, 2021