技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
troubleshoot-print-issues【数据与研究】Diagnose and fix common 3D printing failures through systematic symptom analysis. Covers adhesion, stringing, layer shifts, warping, and under/over-extrusion issues. Use when a print fails during the first layer or partway through, finished prints have quality defects (stringing, blobs, gaps), dimensional accuracy issues occur (warping, elephant foot…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Diag + fix 3D print failures via systematic symptom analysis. Covers FDM + SLA: bed adhesion, stringing, layer shifts, warping, under-extrusion, over-extrusion, quality defects. Structured: ID symptom → root cause → iterative fix.
Doc observable symptoms specifically:
Visual:
Env:
Print params:
# Extract from G-code metadata
grep "^;MAXX\|^;MINX\|^;MAXZ" failed_print.gcode # Print dimensions
grep "^;PRINT_TIME:" failed_print.gcode # Estimated time
grep "^M104\|^M140" failed_print.gcode | head -5 # Temperatures
grep "^;generated by" failed_print.gcode # Slicer version
Got: Detailed symptom desc w/ photos, params, env ctx.
If err: Symptoms unclear → print calibration test (temp tower, stringing test, benchy) → reproduce + observe systematically.
Match symptoms → common failure modes:
| Symptom | Likely Causes | Quick Check | Priority Fix |
|---|---|---|---|
| Poor bed adhesion | Dirty bed, wrong temp, too high Z | Wipe bed, level bed | Clean bed, adjust Z-offset down 0.05mm |
| Stringing | Too hot, insufficient retraction | Check nozzle temp | Lower temp 5°C, increase retraction +0.5mm |
| Layer shifts | Loose belts, too fast, collision | Check belt tension | Tighten belts, reduce speed 20% |
| Warping | Poor adhesion, fast cooling | Check corners lifting | Add brim, enclose printer, increase bed temp |
| Under-extrusion | Clog, low temp, wrong flow | Check extrusion consistency | Clean nozzle, increase temp 5°C, calibrate e-steps |
| Over-extrusion | High flow rate, wrong e-steps | Check blob formation | Reduce flow 2-5%, calibrate e-steps |
| Elephant foot | First layer squish, bed too hot | Measure base width | Raise Z-offset +0.05mm, lower bed temp 5°C |
| Gaps in walls | Thin walls, under-extrusion | Check wall thickness | Enable thin wall detection, increase flow |
| Layer delamination | Low temp, poor cooling, contamination | Check layer lines | Increase temp 5-10°C, check wet filament |
| Blobs/zits | Retraction, coast settings | Check seam alignment | Tune retraction, enable coasting |
| Rough top surface | Insufficient top layers, ironing | Count solid top layers | Add 2 top layers, enable ironing |
| Sagging overhangs | Insufficient cooling, too hot | Check part cooling fan | Increase cooling, lower temp, add supports |
Got: Failure → 1-3 most likely categories.
If err: Multi categories → prioritize by failure timing (first layer first → midprint → top surface).
Investigate underlying cause, not just symptoms:
5 Whys:
Symptom: Print warping and lifting from bed
Why? → Poor bed adhesion in corners
Why? → Corners cooling faster than center
Why? → Room draft from AC vent
Why? → No enclosure to maintain stable temperature
Why? → ABS requires heated chamber for uniform cooling
Root cause: Material choice (ABS) incompatible with open printer in drafty room
Common root causes by category:
Mechanical:
Thermal:
Material:
Config:
Got: Root cause ID'd w/ supporting evidence (measured temps, belt tension, visual).
If err: Root cause unclear → elimination: fix most likely → re-test → repeat.
Immediate:
Clean bed thoroughly Glass/PEI: Isopropyl alcohol 90%+ BuildTak: Warm water and dish soap
Level bed (paper test at 4 corners + center) Paper should drag slightly
Adjust Z-offset down (squish first layer more) Start: -0.05mm increments until lines fuse
Increase bed temperature +5°C
Add adhesion aid:
Slicer:
Got: First layer adheres no lifting.
If err: Check bed flatness w/ feeler gauge|mesh level → warped bed needs glass/PEI or mesh comp.
Temp-first:
1. Print temperature tower (180-220°C in 5° steps for PLA)
2. Identify lowest temperature that extrudes cleanly
3. Use that temperature -5°C to minimize stringing
Retraction:
# Direct drive extruder:
retraction_distance: 1.0-2.0mm
retraction_speed: 40-50mm/s
# Bowden extruder:
retraction_distance: 4.0-6.0mm
retraction_speed: 40-60mm/s
# If stringing persists:
- Enable z-hop: 0.2-0.4mm (lifts nozzle during travel)
- Reduce travel speed (paradoxically helps)
- Enable combing mode (travels within infill)
Got: Minimal stringing, thin strings hand-removable.
If err: Check nozzle partial clog|wet filament (both cause oozing).
Mech checks:
Check belt tension (should twang like guitar string) Tighten if loose
Check pulley set screws (motor shafts) Must align with flat on motor shaft
Check for mechanical resistance Manually move X/Y axes - should glide smoothly Binding indicates dirty rods, worn bearings, or misalignment
Check stepper motor current (advanced) Too low → skipping; too high → overheating
Speed reduction:
# Reduce these speeds:
perimeter_speed: 40mm/s (from 50)
travel_speed: 120mm/s (from 150)
acceleration: 500mm/s² (from 1000)
jerk: 8mm/s (from 15)
Got: No shifts in re-print w/ tightened belts + reduced speeds.
If err: Slicer-gen collisions (cooling fan hitting model)|electrical (stepper driver overheating).
Thermal:
# Increase bed temperature:
PLA: 60°C → 65°C
PETG: 80°C → 85°C
ABS: 100°C → 110°C
# Disable/reduce part cooling:
first_layer_fan: 0%
regular_fan: 25% max (ABS), 50% (PETG), 100% (PLA)
# Enclose printer (critical for ABS/ASA):
- Cardboard box (temporary)
- Acrylic panels (permanent)
- Target chamber temp: 40-50°C
Adhesion enhancement:
Got: Part stays flat, no corner lifting.
If err: Material unsuitable for printer (ABS unenclosed) → switch PETG|ASA.
Quick:
Check for nozzle clog Heat to print temp, manually push filament Should extrude smoothly
Cold pull cleaning (if partial clog) Heat to 220°C, push cleaning filament through Cool to 90°C, pull sharply - should remove debris
Increase temperature +5-10°C Higher temp = better flow
Increase flow rate 2-5% Slicer: Filament settings → Flow → 102-105%
E-steps cal:
M92 E<new_steps>; M500 (save to EEPROM)Got: Consistent extrusion, no gaps in perimeters|infill.
If err: Heat creep (cooling fan fail)|worn extruder gear|cracked extruder arm.
Flow reduction:
# Reduce flow in 2% increments:
extrusion_multiplier: 0.98 → 0.96 → 0.94
# Signs of correct flow:
- Smooth top surface (not overstuffed)
- Perimeters don't bulge outward
- Infill doesn't overfill and push layers apart
Dim accuracy test: Print 20mm calibration cube Measure with calipers: X/Y dimensions should be 20.0mm ± 0.1mm If consistently oversized → reduce flow If undersized → increase flow
Got: Accurate dims, smooth surfaces, no bulging.
If err: Re-cal e-steps (may be too high).
Confirm before full print:
Test selection:
Got: Test succeeds, issue resolved.
If err: Test fails → not fully resolved or multi issues → repeat diagnosis on remaining symptoms.
Issue log template:
date: 2026-02-16
issue: "Layer shifts at 50mm height"
symptoms: "X-axis shifts 10mm, happens consistently at same height"
printer: "Ender 3 V2"
material: "PETG, PolyMaker PolyLite"
root_cause: "Loose X-axis belt, pulley set screw not on flat"
solution:
- "Tightened X-axis belt to 120Hz resonance"
- "Realigned pulley set screw on motor shaft flat"
- "Reduced print speed to 40mm/s perimeter"
verification: "Printed 100mm test cylinder - no shifts"
notes: "Check belt tension monthly, pulley tends to slip"
Got: Issue documented w/ root cause + solution → knowledge base.
If err: Even unsuccessful attempts logged → avoid repeating failed solutions.