Help With START_PRINT

Basic Information:

Printer Model: Ender 3 Original (2018)
MCU / Printerboard: MKS min e3 v1.2 klipper
Host / SBC
Slicer: Orca Slicer
klippy.log
klippy.zip (1.1 MB)

Hello,
I need I just installed Klipper and have been messing around with it. I have been able to get BLtouch working and have had my first prints with difficulties. I have managed to print with some manual interventions but I can’t seem to solve the START_PRINT issue I’m having.

I have set the following START_PRINT configuration in my printer.cfg (also see attached)

[gcode_macro START_PRINT]
gcode:
G92 E0 ; Reset Extruder
{% set BED_TEMP = params.BED_TEMP|default(60)|float %}
{% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(150)|float %}
M140 S{BED_TEMP} ;Start heating bed
G28 ; Home all axes
M190 S{BED_TEMP} ;Wait for bed to reach temp before proceeding
M104 S{EXTRUDER_TEMP} ;Start heating extruder
BED_MESH_CALIBRATE
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position
M109 S{EXTRUDER_TEMP} ;Wait for extruder to reach temp before proceeding
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line
G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little
G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line
G92 E0 ; Reset Extruder
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish

My issue is that my nozzle and bed temp from my slicer is not being passed when print starts, the temp remains at 150 for nozzle and 60 for bed.

here is what I would like for it to do.

  1. Resert exctruder
  2. get first initial bed layer temp from slicer and set to that temp
  3. heat nozzle to 150 to prevent ozzing
  4. once bed temp is reached start bed mesh calibration
  5. get first layer nozzle and set temp for nozzle
  6. move nozzle to start of position and then lower so it touched the bed Z0
  7. wait for the nozzle temp to settle at the first layer temp
  8. dra first line
  9. move side a little
  10. draw second line
  11. move z up to prevent scratching
  12. move to prevent blob squish
  13. begin print

in orca slicer all i have for my start Gcode is :START_PRINT

see pictures below, please help me with a code to get this working. I have been trying for two days.

Hello @AJprints !

The [gcode_macro START_PRINT] expects parametesr sto set bed and extruder to.

	{% set BED_TEMP = params.BED_TEMP|default(60)|float %}
	{% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(150)|float %}

This does not happen:
grafik

See Using START_PRINT and END_PRINT Macros

Hi EddyMI3D

So then do I need to change my slicer’s start G-code to this?

Yes and take care that they are one line, no line breaks.

1 Like

The line break was the issue! Thank you so much.
I still have a little problem.

My nozzle is setting the temp to the slicer temp while doing the bed mesh leveling.

How can I make it do the bed mesh level at nozzle temp 150 and then when it moves to start location, wait for first layer temp from slicer and then start drawings the purge lines?

Thank you, I was able to use the slicer start code to make this semi-work.
see my reply below for the issue I have now.

Hello i copied your custom gcode for orca because Im having the same issue with the nozzle and bed tempnot changing to slicer set temps when print starts. Even though i copied orca is telling me “machine_start_gcode Parsing error at line 2: Not a variable name
BED_TEMP={bed_temperature_intial_layer[current_extruder]}”.
not sure what to do, i dont know much about code but im trying to understand