Warnings reference
The Custom G-code Editor automatically scans your file for potential print issues. Each warning includes the exact line number, a clear explanation, and a suggested fix. Warnings appear in the app's warning system and support jump-to-line navigation.
Severity levels
| Level | Meaning | Effect |
|---|---|---|
| Block | Serious issue in the file (homing, Z collision) | Error diagnostics in the editor. Custom G-code export still writes the edited source; printer-level export blocks still require confirm. |
| Warn | Potential problem that may affect print quality | Export allowed; review recommended |
| Info | Informational observation, not necessarily a problem | No action required |
COLD_EXTRUSION
Severity: Warn
What it detects: An extrusion move (positive E delta) where the nozzle target temperature is below 150°C. Extruding cold filament jams the hotend. Skipped when Print → Process is Clay or Plotter.
Example that triggers this warning:
M104 S0 ; nozzle target is 0°C
G1 X50 Y50 E1.0 F1200 ; extrusion with cold nozzle!
How to fix:
M109 S200 ; heat nozzle to 200°C and wait
G1 X50 Y50 E1.0 F1200 ; now safe to extrude
FLOW_LIMIT_EXCEEDED
Severity: Warn
What it detects: A move where the computed volumetric flow rate (mm3/s) exceeds the printer's maxFlowRate setting. Pushing filament faster than the hotend can melt it causes under-extrusion or skipped steps.
Example that triggers this warning:
; With maxFlowRate = 15 mm3/s and 0.4mm nozzle:
G1 X100 Y0 E2.5 F6000 ; high speed + high extrusion = flow > 15 mm3/s
How to fix: Reduce the feedrate or the extrusion amount for that move. In practice, slowing the speed is the easiest fix:
G1 X100 Y0 E2.5 F3000 ; half the speed, half the flow rate
Z_COLLISION_RISK
Severity: Block
What it detects: A move where the Z position decreases during the print body (not during homing or Z-hop return). Lowering the nozzle into previously printed layers will collide with the print.
Example that triggers this warning:
G1 Z10.200 ; layer at Z=10.2
G1 Z10.000 ; DANGER: moving nozzle down into previous layer
How to fix: This usually indicates a G-code error or an unsafe reorder. Either remove the Z decrease or ensure there's a reason for it (e.g. it's a Z-hop return within the allowed hop distance).
RETRACTION_INEFFECTIVE
Severity: Warn
What it detects: A retraction (negative E move or G10) immediately followed by an unretraction (positive E move or G11) with no travel between them. This wastes time without achieving any stringing reduction.
Example that triggers this warning:
G1 E-1.0 F2400 ; retract
G1 E1.0 F2400 ; unretract immediately — no travel happened!
G1 X50 Y50 E2.0 ; actual move
How to fix: Remove the unnecessary retract/unretract pair:
G1 X50 Y50 E2.0 ; just move — no pointless retraction
MISSING_HOMING
Severity: Block
What it detects: A motion command (G0 or G1) with movement before any G28 (home) command appears in the file. Without homing, the printer doesn't know its position.
Example that triggers this warning:
G1 X50 Y50 F3000 ; moving without knowing where we are!
; ... later ...
G28 ; homing should come FIRST
How to fix: Move the homing command before any motion:
G28 ; home first
G1 X50 Y50 F3000 ; now the printer knows where it is
TEMP_NOT_REACHED
Severity: Warn
What it detects: An M104 (set temperature, no wait) followed by an extrusion move within the next 5 lines. M104 starts heating but doesn't wait — the nozzle may not be at temperature when extrusion begins.
Example that triggers this warning:
M104 S210 ; start heating, don't wait
G1 X50 Y50 E1.0 F1200 ; extruding immediately — nozzle may be cold!
How to fix: Use M109 instead to wait for the temperature:
M109 S210 ; heat AND wait until 210°C reached
G1 X50 Y50 E1.0 F1200 ; safe to extrude
EXTRUSION_MODE_MISMATCH
Severity: Warn
What it detects: A switch between M82 (absolute extrusion) and M83 (relative extrusion) without a G92 E0 reset nearby. Without resetting the E position, the first extrusion after the mode switch may produce an unexpected amount of filament.
Example that triggers this warning:
M82 ; absolute extrusion
G1 E100.5 F1200 ; E at 100.5mm
M83 ; switch to relative — but E is still at 100.5!
G1 E1.0 F1200 ; is this 1.0mm relative, or does firmware interpret it differently?
How to fix: Add a G92 E0 after the mode switch:
M83 ; switch to relative
G92 E0 ; reset E position to zero
G1 E1.0 F1200 ; clearly 1.0mm of relative extrusion
FEEDRATE_ZERO
Severity: Warn
What it detects: A G1 move where the feedrate is zero or has never been set. A zero feedrate may cause the printer to halt or move at an undefined speed.
Example that triggers this warning:
G1 X50 Y50 E1.0 ; no F parameter, and no previous F set!
How to fix: Add an explicit feedrate:
G1 X50 Y50 E1.0 F1200 ; now the printer knows how fast to move
OUT_OF_BOUNDS
Severity: Warn
What it detects: A move where X, Y, or Z exceeds the printer's build volume (defined in your machine profile). Movements outside the build area may crash into physical limits.
Example that triggers this warning:
; Printer build volume: 220 x 220 x 250 mm
G1 X250 Y150 F3000 ; X=250 exceeds 220mm limit!
How to fix: Check that the G-code matches your printer profile. If the file was sliced for a different printer, either re-slice or adjust the printer profile in 3dSynth.
HEATER_IN_CLAY_JOB
Severity: Warn
What it detects: M104 / M109 / M140 / M190 in a job whose Process dialect is Clay or Plotter. Heaters are usually unused for paste and pen.
How to fix: Remove the heater commands, or switch Process back to Filament if this is an FDM file.
FAN_BEFORE_LAYER
Severity: Info
What it detects: An M106 (fan on) command that appears before the nozzle reaches a height of 2 times the layer height. Turning the fan on too early can reduce first-layer adhesion to the bed.
Example that triggers this warning:
; Layer height: 0.2mm
M106 S255 ; fan on at full speed
G1 Z0.200 ; still on first layer!
G1 X50 Y50 E1.0 ; printing with fan on — may lift from bed
How to fix: This is usually harmless with good bed adhesion. If you experience first-layer lifting, delay the fan:
G1 Z0.200 ; first layer
G1 X50 Y50 E1.0 ; print without fan
G1 Z0.400 ; second layer
G1 Z0.600 ; third layer
M106 S255 ; now turn fan on