Here are some important notes that you must read before jumping to the detailed G-code references.
-
The J1 series currently includes the J1 and J1s models, both of which use the unified J1 firmware. Therefore, the J1 series products will be collectively referred to as J1 in the following text.
-
The J1 firmware is based on Marlin v2.0.x. Therefore, its supported G-code commands are mostly the same as the official G-code commands of Marlin. For specifics, please refer to Marlin official documentation.
-
This article is based on J1 v2.7.2 and later versions. If there are any discrepancies, it is recommended to upgrade the J1 firmware to the latest version.
-
This article describes the J1 G-code commands by dividing them into three sub-commands:
(1) Supported and Verified Commands -- recommended for use.
(2) Supported but Unverified Commands -- not recommended for use.
(3) Incompatible or Unadapted Commands -- please do not use.
-
Marking Instructions:
(1) For commands that have both the same name and behavior as those supported by Marlin, the command description will also be almost consistent with Marlin, without any special markings. For example: G4
.
(2) For commands that have the same name as those supported by Marlin but exhibit different behavior, the command description will be marked with 'Modified'. For example: M109 (Modified)
.
(3) For commands that are unique to Artisan, the command description will be marked with 'J1'. For example: M101 (J1)
.
¶ Supported And Verified Commands
The commands described in this section are all normally supported and have been rigorously tested and verified. They are recommended for use.
- The
G0
and G1
commands add a linear move to the queue to be performed after all previous moves are completed. These commands yield control back to the command parser as soon as the move is queued, but they may delay the command parser while awaiting a slot in the queue.
- A linear move traces a straight line from one point to another, ensuring that the specified axes will arrive simultaneously at the given coordinates (by linear interpolation). The speed may change over time following an acceleration curve, according to the acceleration and jerk settings of the given axes.
- A command like
G1 F1000
sets the feedrate for all subsequent moves.
- By convention, most G-code generators use
G0
for non-extrusion movements (those without the E axis) and G1
for moves that include extrusion. This is meant to allow a kinematic system to, optionally, do a more rapid uninterpolated movement requiring much less calculation.
- For Cartesians and Deltas the
G0
(rapid linear movement) command is (and must be) a direct alias for G1
(rapid movement). On SCARA machines G0
does a fast non-linear move. Marlin 2.0 introduces an option to maintain a separate default feedrate for G0
. Note: Slicers tend to override firmware feedrates!
- Coordinates are given in millimeters by default.
- In Relative Mode (
G91
) all coordinates are interpreted as relative, adding onto the previous position.
- In Extruder Relative Mode (
M83
) the E coordinate is interpreted as relative, adding onto the previous E position.
- Before moving, ensure that the target toolhead has been selected. Please refer to T0-T1 for details.
G0 [E<pos>] [F<rate>] [X<pos>] [Y<pos>] [Z<pos>] ...
G1 [E<pos>] [F<rate>] [X<pos>] [Y<pos>] [Z<pos>] ...
- Parameters
- E: An absolute or relative coordinate on the E (extruder) axis (in current units). The E axis describes the position of the filament in terms of input to the extruder feeder.
- F: The maximum movement rate of the movement between the start and end point. The feedrate set here applies to subsequent moves that omit this parameter.
- X: An absolute or relative coordinate on the X axis (in current units).
- Y: An absolute or relative coordinate on the Y axis (in current units).
- Z: An absolute or relative coordinate on the Z axis (in current units).
-
The most basic move sets a feedrate and moves the tool to the given position.
G0 X12 ; Move to 12mm on the X axis
G0 F1500 ; Set the feedrate to 1500 mm/min
G0 X90.6 Y13.8 ; Move to 90.6mm on the X axis and 13.8mm on the Y axis
-
There are some caveats related to feedrates. Consider the following:
G1 F1500 ; Set the feedrate to 1500 mm/min
G92 E0
G1 X50 Y25.3 E22.4 ; Move while extruding
-
In the above example the feedrate is set to 1500 mm/min, then the tool is moved 50mm on the X axis and 25.3mm on the Y axis while extruding 22.4mm of filament between the two points.
G1 F1500
G92 E0
G1 X50 Y25.3 E22.4 F3000
- However, in the above example, we set a feedrate of 1500 mm/min on line 1 then do the move described above, accelerating to a feedrate of 3000 mm/min (if possible). The extrusion will accelerate along with the X and Y movement, so everything stays synchronized.
- Dwell pauses the command queue and waits for a period of time.
- If both S and P are included, S takes precedence.
G4
with no arguments is effectively the same as M400.
G4 [P<time(ms)>] [S<time(sec)>]
- Parameters
- P :Amount of time to dwell.
- S :Amount of time to dwell.
G4 P500 ; Dwell for 1/2 second
- Set units to millimeters. In this mode, all positions, offsets, rates, accelerations, etc., specified in G-code parameters are interpreted as millimeters.
- Since J1 does not support
G20
currently, the unit used within J1 remains millimeters, regardless of whether G21
is set.
G21
G21 ; set units to millimeters
- When you first start up your machine, it has no idea where the toolhead is positioned, so Marlin needs to use a procedure called “homing” to establish a known position. To do this, it moves each axis towards one end of its track until it triggers a switch, commonly called an “endstop”. Marlin knows where the endstops are, so once all the endstops have been triggered, the position is known.
- The
G28
command is used to home one or more axes. The default behavior with no parameters is to home all axes.
- The position is easy to lose when the steppers are turned off, so homing may be required or advised after the machine has been sitting idle for a period of time.
G28 [O] [X] [Y] [Z]
- Parameters
- O: Flag to skip homing if the position is already trusted.
- X: Flag to home the X axis.
- Y: Flag to home the Y axis.
- Z: Flag to home the Z axis.
- In absolute mode, all coordinates given in G-code are interpreted as positions in the logical coordinate space. This includes the extruder position unless overridden by
M83
.
- Absolute positioning is the default.
G90
Examples
- Set relative position mode. In this mode, all coordinates are interpreted as relative to the last position. This includes the extruder position unless overridden by
M82
.
G91
- Set the current position to the values specified, and the software endstops are adjusted to preserve the physical movement limits. Thus, you could use
G92
to set the middle of the bed to (0,0,0) and then run .gcode.
G92 [E<pos>] [X<pos>] [Y<pos>] [Z<pos>]
- Parameters
- E: New extruder position.
- X: New X axis position.
- Y: New Y axis position.
- Z: New Z axis position.
- Specify that the nozzle's current E position is 90.
G92 E90
- Specify that the nozzle’s current XYZ position is 0, 0, 0.
G92 X0 Y0 Z0
- This command can be used to enable one or more steppers (
X
, Y
, Z
, …, E
).
- If no steppers are specified, this command enables all steppers immediately.
- If one or more axes are specified, this command enables the specified steppers immediately.
M17 [X, Y, Z, E]
- Parameters
- X, Y, Z, E: Disable Axes such as X, Y, Z, E.
- Enable power on all stepper motors
M17
- Enable X and Y steppers immediately
M17 X Y
- This command can be used to disable one or more steppers (
X
, Y
, Z
, …, E
).
- If no steppers are given, this command immediately disables all steppers on all axes.
- If any axes are specified, this command immediately disables all steppers on the specified axes.
- Imcompatible with
S
parameter in official Marlin documentation.
M18 [X, Y, Z, E]
M84 [X, Y, Z, E]
- Parameters
- X, Y, Z, E: Disable Axes such as X, Y, Z, E.
- Disable all steppers immediately
M18
- Disable X and Y steppers immediately
M18 X Y
- This command is used to override
G91
and put the E axis into absolute mode independent of the other axes.
G90
and G91
clear this mode.
M82
- Set E to Absolute Positioning.
M82
- This command is used to override
G90
and put the E axis into relative mode independent of the other axes.
G90
and G91
clear this mode.
M83
- Set E to Relative Positioning.
M83
- Use
M92
to set the steps-per-unit for one or more axes. This setting affects how many steps will be done for each unit of movement.
- In the current version, the unit on the XYZE axis is set in steps-per-millimeter.
- These are saved with
M500
and loaded with M501
and reset with M502
.
- Get the current settings using
M92
with no parameters or M503
.
M92 [E] [X] [Y] [Z]
- Parameters
- E: E steps per unit.
- X: X steps per unit.
- Y: Y steps per unit.
- Z: Z steps per unit.
- Set E steps for a new extruder.
M92 E688.4
- Obtain FreeRTOS task information, such as remaining available memory information.
M101
M101
- Set a new target hot end temperature and continue without waiting. The firmware will continue to try to reach and hold the temperature in the background.
- Use
M109
to wait for the hot end to reach the target temperature.
- When the machine is printing in Duplication Mode or Mirror Mode, the hotend temperature can only be effectively set if one of the following conditions is met:
- If the hotend is specified using the
T
parameter, it must be T0
.
- If the hotend is not specified using the
T
parameter, the current active hotend must be the one associated with the left toolhead.
- If the hotend is in the process of PID autotuning, the hotend temperature cannot be set.
M104 [T] [S]
- Parameters
- T: Hotend index. If omitted, the currently active hotend will be used.
- S: Target temperature.
- Set target temperature for the active hotend.
M104 S185
- Set target temperature for E1.
M104 T1 S205
- Request a temperature report to be sent to the host as soon as possible.
- A better way for hosts to get regular temperature updates is to use
M155
. Hosts then no longer need to run an extra process or use up slots in the command buffer to receive temperatures.
M105 [T<index>]
- Get a temperature report.
M105
- Turn on one of the fans and set its speed. If no fan index is given, the print cooling fan is selected. The fan speed applies to the next block added to the planner, so it will not take effect until previous moves in the planner are done. Under manual control with an idle machine,
M106
will change the fan speed immediately.
M106
with no speed sets the fan to full speed.
- Turn off fans with
M107
.
M106 [P<index>] [S<speed>]
- Parameters
- P: Fan index.
- S: Speed, from 0 to 255. S255 provides 100% duty cycle; S128 produces 50%.
- Turn on the fan at 200/255 DC
M106 S200
- Turn off one of the fans. If no fan index is given, the print cooling fan.
M107 [P<index>]
M107
¶ M108 - Break and Continue
- Some G-code commands cause Marlin to go into a closed loop, waiting indefinitely for a certain state or event. For example,
M109
waits for the target temperature to be reached.
- In the case of
M109
, the M108
command stops waiting for the target temperature and continues processing G-code. This may result in “cold extrude” messages.
M108
M108
- This command optionally sets a new target hot end temperature and waits for the target temperature to be reached before proceeding. If the temperature is set with S then
M109
waits only when heating. If the temperature is set with R then M109
will also wait for the temperature to go down.
- To optimize temperature control performance and ensure the stability of the hot end temperature, two concepts, the temperature window and the temperature residency time, are used in the machine's firmware.
- The temperature window refers to the maximum allowable deviation between the actual temperature of the hot end and the target temperature, measured in ℃, and is specified by the C parameter. For example, C3 represents a maximum allowable deviation of ±3℃. This means that when the actual temperature of the hot end is within ±3℃ of its target temperature, the machine considers the hot end to have reached the target temperature.
- The temperature residency time refers to the duration that the actual temperature of the hot end needs to remain within the configured temperature window, measured in seconds, and is specified by the W parameter. For instance, W1 indicates that when the actual temperature of the hot end remains within its target temperature window for 1 second, the machine considers the actual temperature of the hot end to have reached and stabilized at its target temperature.
- Only when the actual temperature of the hot end falls within the specified temperature window and maintains the specified temperature residency time, the machine considers the hot end to have truly reached the target temperature, thus ending the wait.
- To set the hot end temperature and proceed without waiting, use
M104
.
- When the machine is printing in Duplication Mode or Mirror Mode, the hotend temperature can only be effectively set if one of the following conditions is met:
- If the hotend is specified using the T parameter, it must be
T0
.
- If the hotend is not specified using the T parameter, the current active hotend must be the one associated with the left toolhead.
- If the hotend is in the process of PID autotuning, the hotend temperature cannot be set.
M109 [T] [S] [R] [C] [W]
- Parameters
- T: Hotend index. If omitted, the currently active hotend will be used.
- S: Target temperature (wait only when heating).
- R: Target temperature (wait for cooling or heating).
- C: the temperature window. If omitted, it is 3.
- W: the temperature residency time. If omitted, it is 10.
- Set target temperature and wait (if heating up).
M109 S180
- Set target temperature, wait even if cooling.
M109 R120
- Set target temperature, temperature window, and temperature residency time for the hotend E1.
M109 T1 S185 C1 W3
Marlin has several debug bits that can be set, in combination, to help configure, troubleshoot, and debug the firmware. Add up the debug bits you need:
Mask |
Name |
Description |
1 |
ECHO |
Echo all commands sent to the parser. |
2 |
INFO |
Print extra informational messages. |
4 |
ERRORS |
Print extra error messages. |
8 |
DRYRUN |
Don’t extrude, don’t save leveling data, etc. |
16 |
COMMUNICATION |
Not currently used. |
32 |
LEVELING |
Detailed messages for homing, probing, and leveling. (Requires DEBUG_LEVELING_FEATURE.) |
64 |
Reserved |
Reserved for future usage. |
128 |
Reserved |
Reserved for future usage |
M111 [S]
M111 S38
- Get the “current position” of the active tool. Stepper values are included.
M114
M114
M115
M115
- Send a message to the connected host for display in the host console or to perform a host action.
- The
E
and A
parameters must precede the message.
- Can also send the message to the serial port for hosts to display.
M118 [A1] [E1] [string]
- Parameters
- A1: Prepend
//
to denote a comment or action command. Hosts like OctoPrint can interpret such commands to perform special actions. See your host’s documentation.
- E1: Prepend
echo
: to the message. Some hosts will display echo messages differently when preceded by echo:
.
- string: Message string. If omitted, a blank line will be sent.
M118 E1 Hello World!
M118 A1 action:cancel
- Use this command to get the current state of all endstops, useful for setup and troubleshooting. Endstops are reported as either “
open
” or “TRIGGERED
”.
- The state of the Z probe and filament runout sensors are also reported with this command.
M119
- Set a new target temperature for the heated bed and continue without waiting. The firmware manages heating in the background.
- Use
M190
to set the bed temperature and pause until the target is reached.
M140 [S<temp>]
- Set target temperature, no waiting
M140 S50
- It can be useful for host software to track temperatures, display and graph them over time, but polling with
M105
is less than optimal. With M155
hosts simply set an interval and Marlin will keep sending data automatically. This method is preferred over polling with M105
.
M155 S<seconds>
- Parameters
- S: Interval in seconds between auto-reports. S0 to disable.
- Report temperatures every 4 seconds
M155 S4
- Stop reporting temperatures
M155 S0
- This command optionally sets a new target temperature for the heated bed and waits for the target temperature to be reached before proceeding. If the temperature is set with S, then it waits only when heating.
- This command may block the command queue. And hosts can break in using
M108
.
- Use
M140
to set the bed temperature and proceed without waiting.
M190 [R<temp>] [S<temp>]
- Parameters
- S: Target temperature (wait only when heating).
- R: Target temperature (wait for cooling or heating).
- Set target bed temperature and wait (if heating).
M190 S80
- Set target bed temperature and wait even if cooling.
M190 R40
- Set the max acceleration for one or more axes (in current units-per-second per-second). The acceleration limit for extruder(s) only applies for print moves where at least one other axis is also in motion.
- To set the acceleration limit for retract / recover in which only the E axis is moving use
M204 R
instead.
- These are saved with
M500
and loaded with M501
and reset with M502
.
- Get the current settings using
M503
.
M201 [E<accel>] [X<accel>] [Y<accel>] [Z<accel>]
- Parameters
- E: E axis max acceleration.
- X: X axis max acceleration.
- Y: Y axis max acceleration.
- Z: Z axis max acceleration.
M201 X2000.000
M201 X2000.000 Y2000.000 Z500.000 E5000.000
- Set the max feedrate for one or more axes (in current units-per-second).
- These are saved with
M500
and loaded with M501
and reset with M502
.
- Get the current settings using
M503
.
M203 [E<units/s>] [X<units/s>] [Y<units/s>] [Z<units/s>]
- Parameters
- E: E axis max feedrate.
- X: X axis max feedrate
- Y: Y axis max feedrate.
- Z: Z axis max feedrate.
- Set max feedrate for XY
M203 X100 Y100
- Set the preferred starting acceleration (in units/s/s) for moves of different types.
- These are saved with
M500
and loaded with M501
and reset with M502
.
- Get the current settings using
M204
with no parameters or M503
.
M204 [P<accel>] [R<accel>] [T<accel>] [D<rate>]
- Parameters
- P: Printing acceleration. Used for moves that include extrusion (i.e., which employ the current tool).
- R: Retract acceleration. Used for extruder retract / recover moves.
- T: Travel acceleration. Used for moves that include no extrusion.
- D: J1 has implemented a mechanism similar to that used on Klipper for smoothing short zigzag movements. In this mechanism, "virtual acceleration" is used to adjust the nominal speed (i.e., the target maximum speed) for related short-distance movements. The D parameter in
M204
(with a unit of 1%) is used to calculate the "virtual acceleration" rate. The relationship is: virtual acceleration = acceleration * D * 0.01. For more details on the mechanism used on Klipper to smooth short zigzag movements, please refer to: https://www.klipper3d.org/zh/Kinematics.html#minimum-cruise-ratio.
- Set acceleration for printing moves to 2400mm/s/s.
M204 P2400
- Set various motion settings. See parameters for details.
- These are saved with
M500
and loaded with M501
and reset with M502
.
- Get the current settings using
M503
.
M205 [B<µs>] [S<units/s>] [T<units/s>] [V<units/s>]
- Parameters
- B: Minimum segment time (µs).
- S: Minimum feedrate for print moves (units/s).
- T: Minimum feedrate for travel moves (units/s).
- V: Corner velocity. It can be used to calculate Junction_deviation in the planner.
M205 T40 ; Travel feedrate = 40mm/s
- Optionally enable/disable software endstops, then report the current state.With software endstops enabled, moves will be clipped to the physical boundaries from
[XYZ]_MIN_POS
to [XYZ]_MAX_POS
.
M211 [S<flag>]
- Parameters
- S: Software endstops state (S1=enable S0=disable).
M211
M211 S1
- Set speed percentage factor, aka “Feed Rate” which applies to all G-code-based moves in all (X, Y, Z, and E) axes. Report the current speed percentage factor if no parameter is specified.
M220 [B<flag>] [R<flag>] [S<percent>]
- Parameters
- B: Back up current factor.
- R: Restore the last-saved factor.
- S: Feedrate percentage.
- Set feedrate to 80%.
M220 S80
- Get the current set speed percentage.
M220
- Backup the current set speed percentage.
M220 B
- Set the flow percentage, which applies to all E moves added to the planner.
M221 [S<percent>] [T<index>]
- Parameters
- S: Flow percentage.
- T: Target extruder.
- Set the flow rate to 150%.
M221 S150
- Set the values that control the PID loop for a hotend.
- These are saved with
M500
, loaded with M501
, and reset with M502
.
- Get the current settings using
M301
with no parameters or M503
.
M301 [E<index>] [D<value>] [I<value>] [P<value>]
- Parameters
- E: Extruder index to set. Default 0.
- D: Derivative value.
- I: Integral value.
- P: Proportional value.
M301
M301 E0 P18.30 I1.09 D76.75
- This command initiates a process of heating and cooling to determine the proper PID values for the specified hotend or the heated bed.
- View current PID values with
M503
.
- All PID values are saved with
M500
, loaded with M501
, and reset with M502
.
M303 [C<count>] [D] [E<index>] [S<temp>] [U<bool>]
- Parameters
- C: Cycles. At least 3 cycles are required. Default 5.
- D: Toggle PID debug output on / off (and take no further action).
- E: Hotend index (-1 for heated bed). Default 0.
- S: Target temperature.
- U: Use PID result. (Otherwise just print it out.)
- Auto-tune hotend at 210 °C for 8 cycles:
M303 E0 C8 S210
- Auto-tune bed at 60 °C for 8 cycles:
M303 E-1 C8 S60
- Set the values that control the PID loop for the heated bed.
- These are saved with M500, loaded with
M501
, and reset with M502
.
- Get the current settings using
M304
with no parameters or M503
.
M304 [D<value>] [I<value>] [P<value>]
- Parameters
- D: Derivative value
- I: Integral value
- P: Proportional value
M304
M304 P49.96 I4.59 D362.77
- Set the case light power state and/or brightness.
M355 [P<byte>] [S<bool>]
- Parameters
- P: Set the brightness factor from 0 to 255.
- S: Turn the case light on or off.
- Turn the case light on at half brightness
M355 S1 P128
- This command causes G-code processing to pause and wait in a loop until all moves in the planner are completed.
M400
M400
- Get or set filament runout status and distance. Omit all parameters to get a report of the current stats. Enable or disable filament runout detection with
S
and set distance with D
. When filament sensors are enabled, Marlin will respond to a filament runout by running the configured G-code. When filament runout detection is disabled, Marlin will take no action for filament runout.
M412 [T<index>] [D<linear>] [R<bool>] [S<bool>]
- Parameters
- T: Hotend index.
- D: Set the filament runout distance.
- R: Flag to reset the filament runout sensor. Not needed with S.
- S: Flag to enable or disable Filament Runout Detection. If omitted, the current enabled state will be reported.
- Enable (and reset) filament runout detection.
M412 S1
- Disable filament runout detection.
M412 S0
- Report filament runout state.
M412
- Save all configurable settings to EEPROM.
M500
M500
- Load all saved settings from EEPROM.
M501
M501
- Reset all configurable settings to their factory defaults. This only changes the settings in memory, not on EEPROM.
- To also reset settings in EEPROM, follow with
M500
.
M502
- Print a concise report of all runtime-configurable settings (in SRAM) to the host console. This command reports the active settings which may or may not be the same as those stored in the EEPROM.
M503 [S]
- Parameters
- S: Detailed output flag. (true if omitted.)
M503
- Validate the contents of the EEPROM.
M504
- Validate EEPROM contents.
M504
M593
is used to set relevant parameters of the input shaping function, such as the type of input shaper, the frequency of the input shaper, damping ratio, etc.
- Use
M593
with no parameters to report the current settings.
M593 [X] [Y] [I] [R] [F<Hz>] [P] [D]
- Parameters
- X: Flag to set the X axis value. If X and Y are omitted, both will be set.
- Y: Flag to set the Y axis value. If X and Y are omitted, both will be set.
- I: Print debugging information.
- R: Reset debugging information.
- F: Set the frequency of the input shaper, in Hz.
- P: Set the type of input shaper.
- 0 : Disable the input shaping function.
- 1 : ei.
- 2 : ei2.
- 3 : ei3.
- 4 : mzv.
- 5 : zv.
- 6 : zvd.
- 7 : zvdd.
- 8 : zvddd.
- D: Damping ratio of vibrations used by input shapers to improve vibration suppression. Default value is 0.1 which is a good all-round value for most printers. In most circumstances, this parameter requires no tuning and should not be changed.
M593
M593 X F50 P1
- Actively pause the job to perform operations such as filament change.
M600
M600
- Set the behavior mode for multiple fixed nozzles, such as a Dual Extruder or
DUAL_X_CARRIAGE
machine.
- J1 utilizes the dual X mode, also known as the idex system. Therefore,
M605
solely describes the relevant content of the dual X mode.
M605 [R<temp>] S<0|1|2|3> [X<linear>] [W]
- Parameters
- R: Temperature difference to apply to E1.
- S: Mode selection
- S0: Full control mode. Both carriages are free to move, constrained by safe distance.
- S1: Auto-park mode. One carriage parks while the other moves.
- S2: Duplication mode. Carriages and extruders move in unison.
- S3: Mirrored mode. The second extruder duplicates the motions of the first, but reversed in the X axis.
- X: X distance between dual X carriages.
- W: Show the relevant configuration information.
- Set duplication mode
M605 S2
- Show the relevant configuration information
M605 W
- This command sets and/or reports the Linear Advance K factors.
- Setting the K factor to 0 disables Linear Advance.
- See Linear Advance for details on how to determine the K factor and a link to our calibration tool.
M900 [K<kfactor>] [T<index>]
- Parameters
- K: The K factor to set for the specified extruder. Unchanged if omitted. Set this value higher for more flexible filament or a longer filament path.
- T: Target extruder.
- Switch or select the toolhead.
T0
represents selecting the left toolhead, and T1
represents selecting the right toolhead.
- The machine can only switch toolheads normally after homed.
T0
T1
T0
T1
¶ Supported But Unverified Commands
(1) The commands described in this section, although supported by the code and expected to behave consistently with official Marlin, are not recommended for use due to lack of rigorous validation. If you really need to use them, please refer to the Marlin official documentation for relevant command details.
(2) Snapmaker Luban will not actively use the commands described in this chapter.
¶ Commands
- G2 - G3
- M110
- M113
- M122
- M569
- M906
¶ Incompatible Or Unadapted Commands
(1) The commands described in this section have not been adapted for J1 or may be incompatible with other functions. If used, they may cause unexpected issues/exceptions, and it is strongly recommended not to use them. If you use them, you should be responsible for any actual effects or consequences.
(2) In the later versions, code support for these commands may be gradually removed.
¶ Commands
- M31
- M75
- M76
- M77
- M81
- M85
- M112
- M120
- M121
- M141
- M191
- M200
- M206
- M217
- M218
- M410
- M428
- M999