List of system .g files

  • Is there a master list of .g files the Duet uses? Many of them exist already in the distribution, but some (for example cancel.g) will be used if they exist but are absent.

    Ones I have:

    • config.g - main configuration; run on boot

    • bed.g - run to probe the bed and execute calibration

    • deployprobe.g - run from bed.g (?)

    • retractprobe.g - run from bed.g (?)

    • homedelta.g - run for G28

    • pause.g - pauses printer; some kind of magic saves the position as a "pause point"

    • resume.g - resumes print; G1 R1 lets it go back to the pause point

    Ones I know a little about:

    • trigger0.g - special trigger that interrups whatever's happening; intended for commands before(?) an emergency stop; do you have to include an M112 at the end?

    • trigger_n_.g - trigger you can map to a button to do whatever; doesn't interrupt actions

    • cancel.g - what to do when the cancel button is pressed on the web interface; button also does some magic to let the printer cancel the pending job

    Do any of the non-existent ones have default actions that disappear if the files exist?

    Are there others? start.g/finish.g, perhaps, for start and successful finish of a print? I realize most slicers let you add start/end g-code files, but it would be nice for more printer-specific code to live on the printer. fault.g, perhaps, to define what to do when a heater fault occurs? Macros let you create files that get run when you click on custom buttons, so the question is really about binding actions to firmware events.

    Incidentally, is there an easy way to create a new file in the user settings tab? It's not obvious that it can be done without plugging the SD card into another machine.

  • I should add that there is a plan to add another:

    • config-override.g - generated by M500

    Presumably this will contain giant "DO NOT EDIT - will be overwritten" warnings. Presumably also it will (optionally) be run from within config.g, overwriting any settings before it is run, and being overwritten by any settings afterward.

  • administrators

    There is also stop.g which is run when M0 is executed while printing a file.

Log in to reply