G4 S20 vs. G4 P2000

  • Given the Marlin Firmware what is the difference between the following lines of code:

    G4 S20


    G4 P2000

    You really ought to be able to look up gcode reference tables online!

    Please [edit] your question to include the firmware you are using so that people can answer the question for your specific case.

    @0scar done :) thank you

    @CarlWitthoft of course I did prior to asking.

  • 0scar

    0scar Correct answer

    4 years ago

    The answer is that it depends on the type of firmware you are using.

    Let us look at the documentation of G4 to find that G4 is valid for all the listed firmware types:
    enter image description here

    Pause the machine for a period of time.

    Furthermore it states that:


    • Pnnn Time to wait, in milliseconds (In Teacup, P0, wait until all previous moves are finished)

    • Snnn Time to wait, in seconds (Only on Repetier, Marlin, Smoothieware, and RepRapFirmware 1.16 and later)

    It clearly shows that the S parameter (which defines the pause in seconds) is only supported by a few firmware types. Do note that this documentation may not be up-to-date, so it is best to look into the source code or the users manual of the particular firmware you are using.

    E.g. if you are using Marlin Firmware, G4 S20 will pause the machine for 20 seconds while G4 P2000 will pause the machine for 2000 milliseconds which is 2 seconds. This means that a different time is requested, to have 20 seconds waiting time you could use G4 P20000

    To answer your question what the actual difference between the 2 commands is:

    • it is either 18 seconds of extra waiting time if your firmware supports the S parameter, or

    • a firmware that skips or chokes on the command because it is not supported (that also probably depends on your firmware).

License under CC-BY-SA with attribution

Content dated before 7/24/2021 11:53 AM

Tags used