sv08 pause cancels printing

I set a pause at layer 30 in Orcaslicer (the machine’s Gcode is set to “pause”) to change the material. The printer head moves to the pause coordinates, and the print is canceled. The printer configuration is factory default; nothing needs to be edited. Pausing via the printer screen works correctly, but if the print is long, I have to wait for the right moment to pause. How can I use the pause command?

From memory, to insert a pause in your gcode, you need to write an M601 instruction.

The printer doesn’t recognize the m601 commands. I thought I wouldn’t encounter such problems after purchasing it. My Q1 Pro pauses right out of the box.

I don’t find a M601 at Gcode | Marlin Firmware

M600 is “filament_change” which is supported by the stock SV08 configuration.

If you want to pause make sure your machine g-code is all uppercase on Orca. In linux Pause does not match PAUSE.

M600 causes printing to be cancelled

The ORIGONAL Macro.cfg supplied with the SV08 contains the following:

[gcode_macro M600]
gcode:
    PAUSE STATE=filament_change

Which then calls the Pause macro as follows:

[gcode_macro PAUSE]
rename_existing: PAUSE_BASE
variable_state: 'normal'
gcode:
    {% if printer.pause_resume.is_paused == False %}
        {% set x_park = printer['gcode_macro _global_var'].pause_park.x|float %}
        {% set y_park = printer['gcode_macro _global_var'].pause_park.y|float %}
        {% set e_restract = printer['gcode_macro _global_var'].pause_park.e|float %}
        {% set z_lift_max = printer['gcode_macro _global_var'].z_maximum_lifting_distance %}

        {% set state = params.STATE if 'filament_change' in params.STATE else 'normal' %}
        
        {action_respond_info("Pause Print!")}
        
        PAUSE_BASE
        M117 Pause Print!!!
        G91
        {% if (printer.gcode_move.position.z + 5) < z_lift_max %}
            G1 Z+5 F3000
        {% else %}
            G1 Z+{(z_lift_max - printer.gcode_move.position.z)} F3000
        {% endif %}
        G90
        {% if printer.gcode_move.position.x != x_park and
                printer.gcode_move.position.y != y_park     
        %}
            G1 X{x_park} Y{y_park} F{printer["gcode_macro _global_var"].pause_resume_travel_speed * 60}
        {% endif %}

        M104 S{printer.extruder.target}
    
        {% if state == 'normal' %}
            {% if (printer.extruder.temperature + 5 >= printer.extruder.target) and (printer.extruder.temperature >= printer.configfile.settings['extruder'].min_extrude_temp) %}
                {% if printer['filament_switch_sensor filament_sensor'].enabled == True and 
                    printer['filament_switch_sensor filament_sensor'].filament_detected == True
                %}
                    G91
                    G1 E-{e_restract} F300
                    G90
                {% elif printer['filament_switch_sensor filament_sensor'].enabled == True and 
                        printer['filament_switch_sensor filament_sensor'].filament_detected != True %}
                    G91
                    G1 E+95 F300
                    G1 E-10 F1500
                    G1 E-20 F600
                    M400
                    G4 P3000
                    G1 E-50 F300 
                    G90
                {% endif %}
            {% endif %}
        {% elif state == 'filament_change' %}
            {% if (printer.extruder.temperature + 5 >= printer.extruder.target) and (printer.extruder.temperature >= printer.configfile.settings['extruder'].min_extrude_temp) %}
                G91
                G1 E+25 F300
                G1 E-10 F1500
                G1 E-20 F600
                M400
                G4 P3000
                G1 E-50 F300 
                G90
            {% endif %}
        {% endif %}
    {% endif %}


[delayed_gcode _resume_wait]
gcode:
    {% if printer['gcode_macro RESUME'].execute|lower != 'false' %}
        RESUME
    {% endif %}

Upload your klippy.log and I’ll look and see if I can find where the cancel command is getting triggered

I don’t understand what was wrong. I replaced the macros with yours and everything worked. They look identical when compared. Thank you.