Start Code and Config - Cura, Voron with tap

Basic Information:

Printer Model: Voron 2.4
MCU / Printerboard: Octopus V1.1
Host / SBC Mainsail
klippy.log

klippy (5).log (1.8 MB)

Fill out above information and in all cases attach your klippy.log file (use zip to compress it, if too big). Pasting your printer.cfg is not needed
Be sure to check our “Knowledge Base” Category first. Most relevant items, e.g. error messages, are covered there

Describe your issue:

So, I got my printer working with LDO Nitehawk and Voron Tap and was able to get everything to function properly, but now I’m all knotted up trying to figure out my start_print process and setting up my config files properly. I feel like I’m in an endless loop…

I’ve had my printer working for quite a while before these upgrades, but I think I just bootlegged it into working and didn’t really create my start codes properly or even understand what I was doing.

The most recent update to my config file was the section copied from GitHub - jontek2/A-better-print_start-macro: This document aims to help you get a simple but powerful start_macro for your voron printer! towards the end of my config file from lines 895 to 984

I use Cura as my slicer, btw. Any help would be appreciated.

Thank you.

Are you sure that you call your PRINT_START macro correctly?
In the slicer it needs to be something like:

PRINT_START EXTRUDER={material_print_temperature_layer_0} BED={material_bed_temperature_layer_0} CHAMBER={build_volume_temperature}

Check your sliced files. It needs to have the command in there with the variables replaced by your actual settings.

I used the start macro you suggested and I ended up with this error:

Error evaluating ‘gcode_macro PRINT_START:gcode’: jinja2.exceptions.UndefinedError: ‘dict object’ has no attribute ‘BED’

And then "‘extruder’ not hot enough

Please provide a new klippy.log.

If it helps you at all, I have a Voron 2.4 with a tap and here’s my start gcode:

In my cfg file it’s simply:

[gcode_macro START]
gcode:
      {% set SKIP = printer["gcode_macro SKIPHOME"].skiphome %}
      {% if SKIP %}
        SET_GCODE_VARIABLE MACRO=SKIPHOME VARIABLE=skiphome VALUE=0
      {% else %}
        G32
      {% endif %}

where skiphome is just:

[gcode_macro SKIPHOME]
variable_skiphome: 0
gcode:
  {% set skip = params.SKIPHOMING|default(0)|int %}
  SET_GCODE_VARIABLE MACRO=SKIPHOME VARIABLE=skiphome VALUE={skip}

In case I have an issue right at the start of a print and I pause and restart it without the motors turning off. I don’t want to wait for QGL to cycle through again cause I’m lazy and impatient.

My slicer starting gcode is just:

M140 S[bed0_temperature] ; start heating the bed
M190 S[bed0_temperature] ; wait until bed heated
START
M104 S[extruder0_temperature] ; start heating extruder
M109 S[extruder0_temperature] ; wait for extruder temperature
BED_MESH_PROFILE LOAD=default
SET_PRESSURE_ADVANCE ADVANCE=0.025 SMOOTH_TIME=0.03
SET_LED LED="sb_leds" RED=1 GREEN=1 BLUE=1 WHITE=1 TRANSMIT=1

Note that I use Simplify3D not Cura, so you’d have to adjust for that.