*Slicer - Start/End Code einrichten / oder Fehler beheben
Probleme und Fehler
Ihr habt das Problem, dass euer Startcode nicht funktioniert?
- Bedmesh wird nicht geladen
- Temperaturen werden nicht übergeben
- Er funktioniert gar nicht
Parameter und Platzhalter
Bei dem Startcode ist es wichtig, dass die sogenannten Parameter und Placeholder sauber definiert sind. Ihr solltet diesen dann im Gcode kontrollieren
Beispiel:
START_PRINT BED=[first_layer_bed_temperature] EXTRUDER=[first_layer_temperature]
START_PRINT Paramter=[Placeholder] .....
Paramter
Mit einem Parameter kannst du einen Zahlenwert einem "Wort"(Platzhalter) zuweisen und abfragen.
Im Falle des Startcodes sind es meinst Variablen wie:
BED / EXTRUDER / BED_TEMP / EXTRUDER_TEMP / CHAMBER_TEMP / SHEET / AREA_START / AREA_END
Placeholder (Platzhalter) im Slicer
Mit den sogenannten Placeholder kannst du Werte aus dem Slicer abfragen und einer Variable zuweisen.
Prusa / Super Slicer Placeholder:
https://help.prusa3d.com/article/list-of-placeholders_205643
Beispiel:
Extruder Temperatur des First Layers: "first_layer_temperature"
Cura Platzhalter:
http://files.fieldofview.com/cura/Replacement_Patterns.html
Startcode Beispiele:
Hier findest du Beispiele unserer Startcodes, passend zu den Slicern.
Bitte gleiche diese mit deinen Variablen im Makro ab.
Ebenfalls sind die Klammern wichtig {} []
Cura Startcode:
START_PRINT BED={material_bed_temperature_layer_0} EXTRUDER={material_initial_print_temperature}
Prusa Startcode:
START_PRINT BED=[first_layer_bed_temperature] EXTRUDER=[first_layer_temperature]
Super Slicer Startcode:
START_PRINT BED={first_layer_bed_temperature} EXTRUDER={first_layer_temperature}
Orca Slicer Startcode:
START_PRINT EXTRUDER=[nozzle_temperature_initial_layer] BED=[hot_plate_temp_initial_layer]
Wie wird eine Varibale mit Parametern beschrieben
Annahmen:
- Startcode im Slicer : START_PRINT BED={first_layer_bed_temperature} EXTRUDER={first_layer_temperature}
- Schreibbfehel im Start_Print:
{% set extruder = params.EXTRUDER|default(0) %}
{% set bed = params.BED|default(0) %}
Vom Slicer werden die Parameter BED und EXTRUDER dem Start_Print Makro zur Verfügung gestellt.
Beispiel aus Gcode:
Das Makro mach folgendes:
set xyz = setzte oder beschreibene in die variable xyz
extruder/bed = Variablenname
params.EXTRUDER|default(0) = Die Werte aus dem Paramter (params) Extruder
Komplettes Beispiel
Quelle:
Crydteam - Vyper Extended Github - marcos.cfg
[gcode_macro START_PRINT]
description: All what needs to be done at print start
gcode:
#### set defaults ####
{% set extruder = params.EXTRUDER|default(0) %}
{% set bed = params.BED|default(0) %}
#### end off definition ###
G28 ; Home
M83 ; Extruder relative mode
M104 S140 ; Extruder heat up standby temp 140
M190 S{bed} ; Bed heat up
G1 X0 Y0 F2200 ; Go to front
M109 S{extruder} ; Extruder heat up to target temp
G92 E0.0 ; Reset extruder length
G90 ; Absolute positioning
BED_MESH_PROFILE LOAD="default"
PRIME_LINE ; First move
Überprüfung ob der Slicer Werte in die Parameter schreibt:
- Ein Objekt slicen und Gcode Exportieren
- Gcode mit einem Editor öffnen
- Mit der Sucher (STRG+F) nach eurem Start_Print Startcode suchen
- Prüfen ob für Extruder und Bed auch eine Temperatur eingetragen wurde
No Comments