Rotrics Manual
ROTRICS.COMDownload CenterGet Help in ForumSubmit a Ticket
English
English
  • Rotrics DexArm User Manual V1.2
  • ✨Getting Started
    • 🎮Hands-on Guide
    • 🎨Writing/Drawing
      • Generate G-code with third-party software
    • 🎇Laser Engraving
      • ❗Important - Safety Guideline
    • 🛸3D Printing
      • Generate 3D Printing G-code with Cura
    • 🦾Teach & Pneumatic
    • 📷Computer Vision
    • 🔄Rotary Module
    • Sliding Rail Kit
      • Sliding Rail Kit Installation Guide
    • Conveyor Belt Kit
      • Conveyor Belt Kit Installation Guide
  • 💻Product Overview
    • 🗺️Product Overview
    • 💾Software - Rotrics Studio
    • 🍴Accessories
      • Touchscreen
  • 🔧FAQ & Troubleshooting
    • ❓FAQs
      • Received an Error message in Rotrics Studio?
      • How to toggle developer tools on Rotrics Studio
      • How to re-calibrated DexArm or reset encoder values?
      • How to upgrade DexArm's firmware?
      • How to upgrade the touchscreen firmware?
      • How to send third-party G-code files with Rotrics Studio?
      • How to replace filament?
      • How to set Wi-Fi?
      • How to change touchscreen language?
      • How to execute SD card files?
      • Why can't I copy G-code files to the Touchscreen directly?
      • How to write/draw with different colors?
      • Why it misses part of the image when drawing?
      • How to level DexArm manually?
      • Why my 3D printing module is clogged?
    • 🔑Troubleshooting
      • “G-code sending task started...” Error
      • Laser module won't light
      • Rotrics Studio "Internal error occurred"
      • Failed to upgrade Rotrics DexArm's Firmware
      • Fix the clogged 3D printing nozzle
      • Replace the cracked case
      • How to Fix a Black Screen after upgrading the firmware?
      • DexArm couldn't connect to my computer
      • DexArm beyond limits/stuck problem
      • DexArm movement accuracy problem
      • The pen doesn't write with ink
      • 3D printing module won't heat up
      • The Arm doesn't move, only filament comes out
      • Software connect problem after safety enclosure installed
      • Safety enclosure wiring changes
  • ⌨API(G-code)
    • Introduction
    • Marlin Original Commands
      • [Marlin] G000-G001 - Linear Move
      • [Marlin] G002-G003 - Arc or Circle Move
      • [Marlin] G004 - Dwell
      • [Marlin] G020 - Inch Units
      • [Marlin] G021 - Millimeter Units
      • [Marlin] G028 - Home and StallGuard
      • [Marlin] G029 - Bed Leveling Manual
      • [Marlin] G090 - Absolute Positioning
      • [Marlin] G091- Relative Positioning
      • [Marlin] G092 - Set Position
      • [Marlin] M003 - Laser On
      • [Marlin] M005 - Laser Off
      • [Marlin] M082 - E Absolute
      • [Marlin] M083 - E Relative
      • [Marlin] M092 - Set Axis Steps-per-unit
      • [Marlin] M104 - Set Hotend Temperature
      • [Marlin] M105 - Report Temperatures
      • [Marlin] M106 - Set Fan Speed
      • [Marlin] M107 - Fan Off
      • [Marlin] M108 - Break and Continue
      • [Marlin] M109 - Wait for Hotend Temperature
      • [Marlin] M114 - Get Current Position
      • [Marlin] M200 - Set Filament Diameter
      • [Marlin] M201 - Set Print Max Acceleration
      • [Marlin] M203 - Set Max Feedrate
      • [Marlin] M204 - Set Starting Acceleration
      • [Marlin] M205 - Set Advanced Settings
      • [Marlin] M400 - Finish Moves
      • [Marlin] M410 - Quickstop
      • [Marlin] M420 - Bed Leveling State
      • [Marlin] M500 - Save Settings
      • [Marlin] M501 - Restore Settings
      • [Marlin] M502 - Factory Reset
      • [Marlin] M503 - Report Settings
      • [Marlin] M504 - Validate EEPROM contents
      • [Marlin] M906 - TMC Motor Current
Powered by GitBook
On this page
  • Description
  • Notes
  • Developer Notes
  • Usage
  • Parameters
  • Examples

Was this helpful?

  1. ⌨API(G-code)
  2. Marlin Original Commands

[Marlin] G000-G001 - Linear Move

📅Update: 2020/09/18

Description

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!

Notes

  • Coordinates are given in millimeters by default. Units may be set to inches by G20.

  • In Relative Mode (G91) all coordinates are interpreted as relative, adding onto the previous position.

  • A single linear move may generate several smaller moves to the planner due to kinematics and bed leveling compensation. Printing performance can be tuned by adjusting segments-per-second.

Developer Notes

  • Developers: Keep using G0 for non-print moves. It makes G-code more adaptable to lasers, engravers, etc.

Usage

G0 [E(pos)] [F(rate)] [X(pos)] [Y(pos)] [Z(pos)]

Parameters

  • [E(pos)] The length of filament to feed into the extruder between the start and end point

  • [F(rate)] The maximum movement rate of the move between the start and end point. The feedrate set here applies to subsequent moves that omit this parameter.

  • [X<pos>] A coordinate on the X axis

  • [Y<pos>] A coordinate on the Y axis

  • [Z<pos>] A coordinate on the Z axis

Examples

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 1500mm/m
G1 X90.6 Y13.8 ; move to 90.6mm on the X axis and 13.8mm on the Y axis

There are some caveats related with feedrates. Consider the following:

G1 F1500 ; set the feedrate to 1500mm/m
G92 E0
G1 X50 Y25.3 E22.4 ; move while extruding

In the above example the feedrate is set to 1500mm/m, 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 1500mm/m on line 1 then do the move described above, accelerating to a feedrate of 3000mm/m (if possible). The extrusion will accelerate along with the X and Y movement, so everything stays synchronized.

PreviousMarlin Original CommandsNext[Marlin] G002-G003 - Arc or Circle Move

Last updated 4 years ago

Was this helpful?