Clear all


1 Posts
1 Users
Posts: 318
Topic starter
Joined: 3 years ago



G0 & G1: Move

G0: Rapid move

G1: Controlled *(linear) move


G2 & G3: Controlled Arc Move

G2: Clockwise arc move

G3: Counter-clockwise arc move


G4: Dwell

G4: Pause the machine for a period of time, in milliseconds or seconds


G10: Tool Temperature Setting

G10: (P parameter with R or S parameter) Sets active and standby tool temperatures


G10: Set workplace coordinate offset or tool offset

G10: (XYZUVWABC and L parameters) Sets tool offset or coordinate system origin (absolute or relative current position) for specific tool


G10: Retract

G10: (no parameters) Retracts filament then performs any zlift/hop according to settings of M207


G11: Unretract

G11: Unretracts/recovers filament after undoing any zlift/hop according to settings of M207


G17: Select XY plane for arc moves

G17: Sets XY as the active plane for interpreting the tool path of an arc (G2 or G3)


G18: Select XZ plane for arc moves

G18: Sets XZ as the active plane for interpreting the tool path of an arc (G2 or G3)


G19: Select YZ plane for arc moves

G19: Sets YZ as the active plane for interpreting the tool path of an arc (G2 or G3)


G20: Set Units to Inches

G20: Units from this command onwards are in inches


G21: Set Units to Millimeters

G21: Units from this command onwards are in millimeters


G28: Home

G28: Move all axes, or the specified ones, to establish a known position for them, for example by moving an axis motor until an endstop switch is triggered


G29: Mesh bed probe

G29: Uses a Z probe to measure the bed height at 4 or more points to determine its tilt and overall flatness, then enables mesh compensation so that the nozzle will remain parallel to the bed


G30: Single Z-Probe

G30: Uses a Z probe to measure bed height at a single point


G31: Set or Report Current Probe status

G31: Sets Z probe parameters or reports status


G32: Run bed.g macro

G32: Runs macro file bed.g. This macro can be used to probe the bed and then perform auto calibration of a delta printer, perform bed levelling by moving the Z leadscrews independently, or display the manual corrections needed to the bed levelling screws.


G38.2 to G38.5: Straight Probe

G38.2: Probe toward workpiece, stop on contact, signal error if failure

G38.3: Probe toward workpiece, stop on contact

G38.4: Probe away from workpiece, stop on loss of contact, signal error if failure

G38.5: Probe away from workpiece, stop on loss of contact


G53: Use machine coordinates

G53: Causes all coordinates in movement commands on the remainder of the current line of GCode to be interpreted as machine coordinates, ignoring any coordinate offset of the workplace coordinate system currently in use, and also ignoring any tool offsets


G54 to G59.3: Select coordinate system

G54: selects coordinate system 1

G55: selects coordinate system 2

G56: selects coordinate system 3

G57: selects coordinate system 4

G58: selects coordinate system 5

G59: selects coordinate system 6

G59.1: selects coordinate system 7

G59.2: selects coordinate system 8

G59.3: selects coordinate system 9


G60: Save current position to slot

G60: Saves current position to slots 0, 1 or 2


G90: Set to Absolute Positioning

G90: All coordinates from this command onwards are absolute, relative to the origin of the machine


G91: Set to Relative Positioning

G91: All coordinates from this command onwards are relative to the last position.


G92: Set Position

G92: Sets position of axes by manually specifying values for the axis positions




M0: Stop or Unconditional stop

M0: After finishing any moves left in buffer, runs either cancel.g or stop.g, then sets motors to idle and turns heaters off (unless specified not to)


M1: Sleep or Conditional stop

M1: After finishing any moves left in buffer, runs either cancel.g or sleep.g, then turns off all motors and heaters


M3: Spindle On, Clockwise (CNC specific)/ Laser on (Laser specific)

M3: In CNC mode turns on spindle clockwise, in Laser mode turns on laser power


M4: Spindle On, Counterclockwise (CNC specific)

M4: Turns on spindle counterclockwise


M5: Spindle Off (CNC specific), laser off (Laser specific)

M5: In CNC mode turns off spindle, in Laser mode turns off laser power


M17: Enable all stepper motors

M17: Enables all stepper motors when used without parameters, or use axes parameters to enable selectively


M18: Disable all stepper motors

M18: Disables all stepper motors when used without parameters, or use axes parameters to enable selectively


M20: List SD card

M20: Lists files on the SD card. Use parameters to list files in subdirectories or on secondary SD card


M21: Initialize SD card

M21: The specified SD card is initialized. If an SD card is loaded when the machine is switched on, this will happen by default. SD card must be initialized for the other SD functions to work.


M22: Release SD card

M22: The specified SD card is released, so further (accidental) attempts to read from it are guaranteed to fail. Helpful, but not mandatory before removing the card physically.


M23: Select SD file

M23: The specified file is selected ready for printing.


M24: Start/resume SD print

M24: The machine prints from the file selected with the M23 command. If the print was previously paused with M25, printing is resumed from that point.


M25: Pause SD print

M25: The machine pauses printing at the current position within the file.


M26: Set SD position

M26: Set the file offset in bytes from the start of the SD card file selected by M23.


M27: Report SD print status

M27: Reports the number of bytes processed in the format bytes processed / bytes total in file


M28: Begin write to SD card

M28: The specified file is created (or overwritten if it exists) on the SD card and all subsequent commands sent to the machine are written to that file.


M29: Stop writing to SD card

M29: File opened by M28 command is closed, and all subsequent commands sent to the machine are executed as normal.


M30: Delete a file on the SD card

M30: The specified file is deleted.


M32: Select file and start SD print

M32: The specified file is selected from the SD card and starts printing. Does the same as M23 and M24.


M36: Return file information

M36: Returns information for the specified SD card file in JSON format.


M37: Simulation mode

M37: Enters/leaves simulation mode, or runs the specified file in simulation mode allows the electronics to compute an accurate printing time, taking into account the maximum speeds, accelerations etc. that are configured.


M38: Compute SHA1 hash of target file

M38: Used to compute a hash of a file on the SD card and returns a hexadecimal string which is the SHA1 of the file.


M39: Report SD card information

M39: Returns information about the SD card in the specified slot in the requested format.


M42: Switch I/O pin

M42: Switches a general purpose I/O pin.


M73: Set remaining print time

M73: Generated by some slicers to inform the firmware about the state of the print so that it can provide a better estimate of the remaining print time.


M80: ATX Power On

M80: Turns on the ATX power supply from standby mode to fully operational mode using the power supply control pin on the External 5V header.


M81: ATX Power Off

M81: Turns off the ATX power supply. Counterpart to M80.


M82: Set extruder to absolute mode

M82: Makes the extruder interpret extrusion as absolute positions.


M83: Set extruder to relative mode

M83: Makes the extruder interpret extrusion values as relative positions.


M84: Stop idle hold

M84: Stop the stepper motor idle hold on all axes and extruder.


M92: Set axis steps per unit

M92: Allows programming of steps per mm for motor drives.


M98: Call Macro/Subprogram

M98: Runs the macro in the specified file.


M99: Return from Macro/Subprogram

M99: Returns from an M98 call. This is not required to return from the end of a macro and the macro naturally returns at the end of file.


M101: Un-retract filament

M101: Same behaviour as G11 (unretract). Supported for compatibility with Simplify3D.


M102: Turn extruder on (ignored)

M102: Command ignored as it is unnecessary in RRF. Supported for compatibility with Simplify3D.


M103: Retract filament

M103: Same behaviour as G10 without parameters (retract). Supported for compatibility with Simplify3D.


M104: Set Extruder Temperature

M104: Sets the active and standby temperature of the current or specified tool to the temperature specified, and returns control to the host immediately (i.e. before that temperature has been reached by the extruder).


M105: Get Extruder Temperature

M105: Reports the current and target temperatures of all active heaters.


M106: Fan On

M106: Sets fan parameters and turns them on and off.


M107: Fan Off

M107: Deprecated in RepRapFirmware. Use M106 S0 instead.


M108: Cancel Heating

M108: Breaks out of an M109 or M190 wait-for-temperature loop, continuing the print job.


M109: Set Extruder Temperature and Wait

M109: Sets extruder temperature and waits until within 2.5°C of target.


M110: Set Current Line Number

M110: Sets the current line number in the running Gcode file.


M111: Set Debug Level

M111: Enables or disables debugging features, for the module number specified by the P parameter.


M112: Emergency Stop

M112: Any moves in progress are immediately terminated, then RepRap shuts down. All motors and heaters are turned off. It can be started again by pressing the reset button or power cycling the board.


M114: Get Current Position

M114: Reports the X, Y, Z and E (and U, V, W, A, B, C if configured) coordinates to the host. The coordinates reported are those at the end of the last completed move.


M115: Get Firmware Version and Capabilities

M115: Request the Firmware Version and Capabilities of the current microcontroller.


M116: Wait

M116: waits for all temperatures, or a specified tool or heater's temperature, and other slowly-changing variables to arrive at their set values.


M117: Display Message

M117: Causes the given message to be shown in the status line on an attached LCD or if no LCD is attached, this message will be reported on the web interface.


M118: Send Message to Specific Target

M118: Used to send messages to a specific target: USB, PanelDue/UART, HTTP or Telnet


M119: Get Endstop Status

M119: Returns the current state of the configured endstops.


M120: Push

M120: Push the state of the machine onto a stack. Called automatically when a macro file is run.


M121: Pop

M121: Recover the last state pushed onto the stack.


M122: Diagnose

M122: Reports firmware diagnostic information.


M135: Set PID sample interval

M135: Deprecated. Sets the PID to measure temperatures and calculate the power to send to the heaters


M140: Set Bed Temperature (Fast) or Configure Bed Heater

M140: Configures heaters as bed heaters and sets active and standby temperatures, turns heaters on and returns control to the host immediately.


M141: Set Chamber Temperature (Fast) or Configure Chamber Heater

M141: Configures heaters as chamber heaters and sets active and standby temperatures, turns heaters on and returns control to the host immediately.


M143: Maximum heater temperature

M143: Configures heater maximum temperatures. When the temperature of the heater exceeds this value a heater error will be triggered.


M144: Bed Standby

M144: Switch the bed to its standby temperature.


M150: Set LED colours

M150: Sets RGB colours and brightness for Dotstar and NeoPixel LEDs.


M190: Wait for bed temperature to reach target temp

M190: Sets the temperature of the bed and waits for the temperature to be reached.


M191: Wait for chamber temperature to reach target temp

M191: Set the temperature of the build chamber and waits for the temperature to be reached.


M200: Set filament diameter

M200: Enables or disables volumetric extrusion per extruder, and sets the filament diameter.


M201: Set max acceleration

M201: Sets the acceleration that axes can do in mm/second^2 for print moves.


M203: Set maximum feedrate

M203: Sets the maximum feedrates that axes can do in mm/min.


M204: Set printing and travel accelerations

M204: Sets the maximum acceleration for printing and/or travel moves as a whole.


M205: Set max instantaneous speed change in mm/sec

M205: Sets the maximum allowable speed change (sometimes called 'jerk speed') of each motor when changing direction, in mm/sec.


M206: Offset axes

M206: Deprecated. The specified values will be subtracted from the coordinates given in G0, G1 and related commands.


M207: Set retract length

M207: Sets the retract length used by the G10 and G11 firmware retraction and reprime commands.


M208: Set axis max travel

M208: The specified values set the software limits for axis travel in the specified direction. The axis limits are also the positions assumed when an endstop is triggered.


M220: Set speed factor override percentage

M220: Sets the speed factor override percentage.


M221: Set extrude factor override percentage

M221: Sets extrude factor override percentage for the specified extruder.


M226: Synchronous Pause

M226: Initiates a pause in the same way as if the pause button is pressed, except that execution of all prior GCode commands in the same input stream is completed first.


M260: i2c Send and/or request Data

M260: Send and/or receive data over the i2c bus.


M261: i2c Request Data

M261: Deprecated. Requests data over the i2c bus.


M280: Set servo position

M280: Set absolute servo position.


M290: Baby stepping

M290: Applies the specified additional offset to the Z coordinate for all future moves, and to apply the offset to moves that have already been queued if this can be done.


M291: Display message and optionally wait for response

M291: Provides a more flexible alternative to M117, in particular messages that time out, messages that suspend execution until the user acknowledges them, and messages that allow the user to adjust axis positions before acknowledging them.


M292: Acknowledge message

M292: Sent by the user interface when the user acknowledges a message that was displayed because of a blocking M291 command.


M300: Play beep sound

M300: Play beep sound via connected LCD, or if no LCD, via web interface.


M301: Set PID parameters

M301: Sets Proportional (P), Integral (I) and Derivative (D) values for hot end.


M302: Allow cold extrudes

M302: Disables temperature restrictions on extrusion and retraction, or sets these temperatures.


M303: Run heater tuning

M303: This command computes the process model parameters (see M307), which are in turn used to calculate the PID constants.


M304: Set PID parameters - Bed

M304: Sets Proportional, Integral and Derivative values for bed.


M305: Set temperature sensor parameters

M305: Sets or reports the parameters for each temperature sensor. If using RRF 3, use M308 instead.


M307: Set or report heating process parameters

M307: Sets or reports the parameters for the heating process model, for each heater.


M308: Set or report sensor parameters

M308: Sets or reports the parameters for each connected sensor. If using RRF 2, use M305 instead.


M309: Set or report heater feedforward

M309: Sets or reports the feedforward PWM setting for a specified tool. Supported in RepRapFirmware v3.4 and later


M350: Set microstepping mode

M350: Sets or reports the microstepping mode for each defined axis.


M374: Save height map

M374: Saves the mesh grid parameters and height map into the specified file, or the default file heightmap.csv if no filename was specified.


M375: Load height map

M375: Loads the default grid (without parameters), or grid specified by filename. Equivalent to G29 S1.


M376: Set bed compensation taper

M376: When using bed mesh compensation, specifies the height over which bed compensation tapers. Full bed compensation is applied at Z=0, tapering down to no bed compensation by the specified height.


M400: Wait for current moves to finish

M400: Finishes all current moves and and thus clears the buffer. Same as G4 P0.


M401: Deploy z-probe

M401: Runs macro file sys/deployprobe#.g (where # is the specified probe number) if it exists, otherwise sys/deployprobe.g if it exists.


M402: Retract z-probe

M402: Runs macro file sys/retractprobe#.g (where # is the specified probe number) if it exists, otherwise sys/retractprobe.g if it exists.


M404: Filament width and nozzle diameter

M404: Sets filament width and nozzle diameter. Used for slicers that report filament volume, from which RRF calculates length for job status reporting.


M408: Report JSON-style response

M408: Reports system parameters in a JSON-style response. Different levels of reporting are available.


M409: Query object model

M409: Reports parameters from the Object Model of RepRapFirmware, which includes firmware configuration, Duet hardware information, and the state of the machine that RRF is controlling.


M450: Report Printer Mode

M450: Report mode the machine is running; FFF (ie 3D printer), Laser or CNC.


M451: Select FFF Printer Mode

M451: Switches to Fused Filament Fabrication mode for filament printing.


M452: Select Laser DeviceMode

M452: Switches to laser mode and configures laser parameters.


M453: Select CNC Device Mode

M453: Switches to CNC mode.


M470: Create Directory on SD-Card

M470: Creates a new directory on the SD-Card, using the specified (or default) path.


M471: Rename File/Directory on SD-Card

M471: Rename or move a file or directory.


M486: Object cancellation

M486: Used to identify objects on the print bed and selectively cancel them if necessary.


M500: Store parameters

M500: Saves current parameters to the sys/config-override.g on the SD card.


M501: Read stored parameters

M501: Set the active parameters to those stored in sys/config-override.g on the SD card.


M502: Revert stored parameters

M502: Sets all machine parameters to the values defined in config.g, ignoring the config-override.g file so that any changes that were saved by M500 are not applied.


M503: Print settings

M503: Reports the current print settings stored in sys/config.g.


M505: Set configuration file folder

M505: Following this command, files that would normally be fetched from /sys/ (for example, homing files and system macro files in RepRapFirmware) are fetched from the specified folder instead. This command can be used to allow multiple configurations to be maintained easily.


M540: Set MAC address

M540: Sets the MAC address of the machine, creating a unique identifier for the Duet on the network.


M550: Set Name

M550: Sets the name of the machine. Also used for mDNS local network discovery.


M551: Set Password

M551: Sets the password for network access to the machine.


M552: Set IP address, enable/disable network interface

M552: Sets the IP address of the machine and enables/disables network access.


M553: Set Netmask

M553: Sets the network mask of the machine.


M554: Set Gateway and/or DNS server

M554: Sets the Gateway IP address of the machine.


M555: Set compatibility

M555: Sets the firmware to a mode where its input and (especially) output behaves similar to other established firmware.


M556: Axis skew compensation

M556: This tells firmware the tangents of the angles between the axes of the machine. Obtained by printing then measuring a test part.


M557: Set Z probe point or define probing grid

M557: Defines the grid used by G29 to create a bed height mesh.


M558: Set Z probe type

M558: Defines the Z probe type and parameters of operation.


M559: Upload file

M559: Upload file, with parameters for file size and CRC-32 check. Was used in RRF 3.1 and earlier to upload files to /sys.


M560: Upload file

M560: Upload file, as M559, with terminating string. Was used in RRF 3.1 and earlier to upload files to /www.


M561: Set Identity Transform

M561: Cancels any bed-plane fitting as the result of probing (or anything else) and returns the machine to moving in the user's coordinate system.


M562: Reset temperature fault

M562: If the heater has switched off and locked because it has detected a fault, this will reset the fault condition and allow you to use the heater again.


M563: Define or remove a tool

M563: Defines a tool with the specified parameters.


M564: Limit axes

M564: Allows or forbids movement of axes that have not been homed and/or limits movement to within axis boundaries.


M566: Set allowable instantaneous speed change

M566: Sets the maximum allowable speed change (sometimes called 'jerk speed') of each motor when changing direction.


M567: Set tool mix ratios

M567: Sets the mix ratio for a tool. When a move command contains a single E value but the current tool uses multiple extruders, each extruder will extrude the amount specified in the E parameter times the mix value for that tool.


M568: Set Tool Settings

M568: Set tool parameters to values specified. Active and standby temperatures, spindle RPM and heater state.


M569: Set motor driver direction, enable polarity, mode and step pulse timing

M569: Sets stepper driver parameters to values specified. Parameters include motor direction, enable, minimum step pulse width, interval, direction setup and hold time, and other stepper driver features.


M569.1: Stepper driver closed loop configuration

M569.1: Set the configuration parameters of a closed loop driver. Supported for drivers attached to Duet 3 Expansion 1HCL board.


M569.2: Read or write stepper driver register

M569.2: Reads the specified register and returns the value of that register, or if a value is specified, that value is written to the specified register.


M569.3: Read Motor Driver Encoder

M569.3: Report a current motors encoder position to the host in units of arc degrees (1/360'ths of turns), relative to set reference position.


M569.4: Set Motor Driver Torque Mode

M569.4: Tell one or more motor drivers to apply a specified torque regardless of position.


M569.5: Closed loop data collection

M569.5: Collect performance data from a drive whilst in closed loop mode.


M569.6: Execute closed loop tuning move

M569.6: Perform a runtime tuning manoeuvre with a closed loop drive.


M569.7: Configure motor brake port

M569.7: Specifies the output port that controls a brake.


M570: Configure heater fault detection

M570: Sets time and temperature parameters for the detection of heater anomalies.


M571: Set output on extrude

M571: Turns on the defined output pin whenever extrusion is being done, and turns it off when the extrusion is finished.


M572: Set or report extruder pressure advance

M572: Sets the pressure advance coefficient for the specified extruder.


M573: Report heater PWM

M573: Gives a running average (usually taken over about five seconds) of the PWM to the specified heater.


M574: Set endstop configuration

M574: Defines the pin name, position and type of endstop or sensor that the machine has for an axis.


M575: Set serial comms parameters

M575: Sets the communications parameters of the serial comms channel specified.


M576: Set SPI comms parameters

M576: Sets the communications parameters of the SPI channel.


M577: Wait until endstop is triggered

M577:Wait for a specified endstop switch or input to be triggered.


M578: Fire inkjet bits

M578: Fires specified inkjet head using the specified bit pattern. Not enabled in firmware by default.


M579: Scale Cartesian axes

M579: Scales the specified axes by the given amount, to get prints exactly the right size.


M580: Select Roland

M580: Enables/disables Roland mode, which changes output to Roland Machine Language (RML).


M581: Configure external trigger

M581: Defines parameters for external triggers.


M582: Check external trigger

M582: Checks state of specified trigger.


M584: Set drive mapping

M584: Assigns stepper driver numbers to axes, and defines axes as linear or rotational.


M585: Probe Tool

M585: Allows the current tool's offset to be updated by driving it into a given endstop, on machines with at least one tool probe.


M586: Configure network protocols

M586: Enables/disables network protocols (HTTP, HTTPS, FTP, Telnet, SSH) and configures parameters.


M587: Add WiFi host network to remembered list, or list remembered networks

M587: Adds WiFi network SSID and password to the remembered networks list. Optionally sets IP address, gateway, netmask, DNS server and country code.


M588: Forget WiFi host network

M588: Removes the specified network SSID from the remembered networks list.


M589: Configure access point parameters

M589: Configures the Duet to allow WiFi devices to connect directly, as an access point. Settings for SSID, password, IP address and optionally the WiFi channel.


M591: Configure filament sensing

M591: Configures filament sensing for the specified extruder. The sensor may be a simple filament presence detector, a device that measures movement of filament, or both.


M592: Configure nonlinear extrusion

M592: Nonlinear extrusion is a feature that compensates for the increased back pressure from the hot end as extrusion speed increases.


M593: Configure Input Shaping

M593: Configures the parameters for input shaping, which is used to reduce ringing (also called ghosting).


M594: Enter/Leave Height Following mode

M594: Height following mode allows the Z position of the tool to be controlled by a PID controller using feedback from a sensor. See also M951.


M595: Set movement queue length

M595: Allows the movement queue parameters to be adjusted so that the queue can be lengthened if necessary, or kept short if a long movement queue is not needed and there are other demands on RAM.


M600: Filament change pause

M600: Behaves like M226 except that if macro file filament-change.g exists in /sys on the SD card, it is run in preference to pause.g.


M650: Set peel move parameters

M650: Sent by nanoDLP to execute a peel move after exposing a layer.


M651: Execute peel move

M651: Sent by nanoDLP to execute a peel move after exposing a layer.


M665: Set delta configuration

M665: Set the delta calibration variables, including diagonal rod length, delta radius, printing radius, homed nozzle height and tower postion correction.


M666: Set delta endstop adjustment

M666: Sets delta endstops and bed tilt adjustments.


M667: Deprecated. Selects CoreXY or CoreXZ mode. Use M669.


M669: Set kinematics type and kinematics parameters

M669: Sets kinematic type (cartesian, CoreXY, CoreXZ, Delta, SCARA, Hangprinter, polar etc) and any extra kinematic parameters.


M670: Set IO port bit mapping

M670: Sets the port switching time advance for the specified pins.


M671: Define positions of Z leadscrews or bed levelling screws

M671: Sets the positions of 2 to 4 leadscrews or bed levelling screws used to raise/lower the bed or gantry. This allows the firmware to perform bed levelling by probing the bed and either automatically moving the leadscrews, or reporting the adjustment to be made. See the G32 command.


M672: Program Z probe

M672: Sends configuration data to programmable Z probes such as the Duet3D Smart Effector, for example to set the sensitivity.


M673: Align plane on rotary axis

M673: Aligns a plane that is mounted on a rotary axis. To make use of this code it is required to take two probe points via G30 P first.


M674: Set Z to center point

M674: Determines the Z center point of a stash that is mounted on a rotary axis. This code is yet to be implemented.


M675: Find center of cavity

M675: Finds the center of a cavity that can be measured using the configured axis endstop.


M701: Load filament

M701: Loads the specified material in the current active tool.


M702: Unload filament

M702: Unloads the previously loaded filament from the current tool.


M703: Configure filament

M703: After assigning a filament to a tool, this command may be used to run /filaments/<filament name>/config.g to set parameters like temperatures, extrusion factor, retract distance.


M750: Enable 3D scanner extension

M750: Used as an OEM extension to enable scanner functionality in the firmware.


M751: Register 3D scanner extension over USB

M751: Used to turn on communication between the 3D printing and a 3D scanner board, when attached to the USB port.


M752: Start 3D scan

M752: Initiates a new 3D scan and uploads it to the board's SD card


M753: Cancel current 3D scanner action

M753: Instruct the attached 3D scanner to cancel the current operation.


M754: Calibrate 3D scanner

M754: Calibrates the attached 3D scanner.


M755: Set alignment mode for 3D scanner

M755: Sends the ALIGN ON/OFF command the attached 3D scanner.


M756: Shutdown 3D scanner

M756: Sends the SHUTDOWN command the attached 3D scanner.


M851: Set Z-Probe Offset (Marlin Compatibility)

M851: Implemented for backwards compatibility with other firmware. It sets the Z probe trigger in the same way as G31 Z-nn (note the sign reversal).


M905: Set local date and time

M905: Updates the machine's local date and time or reports them if no parameters are specified.


M906: Set motor currents

M906: Sets the peak currents to send to the stepper motors for each axis.


M911: Configure auto save on loss of power

M911: When the supply voltage falls below the auto save threshold while a print from SD card is in progress, all heaters will be turned off, printing will be stopped immediately (probably in the middle of a move), the position saved, and the specified command string executed.


M912: Set electronics temperature monitor adjustment

M912: Adjusts the temperature reading offset of the MCU's on-chip temperature sensor.


M913: Set motor percentage of normal current

M913: Sets motor currents to a specified percentage of their normal values.


M914: Set/Get Expansion Voltage Level Translator

M914: This command is supported in the Alligator build of RepRapFirmware only.


M915: Configure motor stall detection

M915: Sets the stall detection parameters and optionally the low-load current reduction parameters for TMC2660, TMC2130 or similar driver chips.


M916: Resume print after power failure

M916: If the last print was not completed and resume information has been saved (either because the print was paused or because of a power failure), then the heater temperatures, tool selection, head position, mix ratio, mesh bed compensation height map etc. are restored from the saved values and printing is resumed.


M917: Set motor standstill current reduction

M917: Sets the percentage of the current set by M906 that is to be used when the motor is stationary but not idle, or moving very slowly.


M918: Configure direct-connect display

M918: Configures RepRapFirmware for a directly-connected LCD such as a 12864 or compatible display.


M929: Start/stop event logging to SD card

M929: When event logging is enabled, important events such as power up, start/finish printing and (if possible) power down will be logged to the SD card.


M950: Create heater, fan, spindle or GPIO/servo pin

M950: Used to create heaters, fans, spindles and GPIO ports, and to configure parameters.


M951: Set height following mode parameters

M951: Height following mode allows the Z position of the tool to be controlled by a PID controller using feedback from a sensor. See also M594.


M952: Set CAN-FD expansion board address and/or normal data rate

M952: Expansion boards without address selection switches use a default address. This command can change the address, and the default data rate.


M953: Set CAN-FD bus fast data rate

M953: Allows the bandwidth of the CAN bus to be optimised, by increasing the data rate during transmission of CAN-FD data packets by means of the BRS (bit rate switch) feature.


M954: Configure as CAN expansion board

M954: Used to reconfigure the board it is executed on as a CAN-connected expansion board.


M955: Configure Accelerometer

M955: Configures an accelerometer with specified parameters such as pins, orientation, sample rate, resolution, SPI clock frequency.


M956: Collect accelerometer data and write to file

M956: Causes the specified number of accelerometer samples to be collected and saved to a .csv file on the internal SD card.


M997: Perform in-application firmware update

M997: Triggers a firmware update if the necessary files are present on the SD card. Can update firmware on Duet mainboards, Duet 3 CAN-connected expansion boards, WiFi modules and PanelDue.


M998: Request resend of line

M998: Request a resend of the specified line of Gcode.


M999: Restart

M999: Restarts the firmware using a software reset. Can also reboot attached SBC.

©2022 LocalAd


We're not around right now. But you can send us an email and we'll get back to you, asap.

Log in with your credentials


Forgot your details?

Create Account