mirror of
https://github.com/bassamanator/Sovol-SV06-firmware.git
synced 2025-11-08 21:41:15 +00:00
Merge branch 'master' into skr-mini-e3-v3
This commit is contained in:
@@ -14,16 +14,64 @@ path: /home/pi/printer_data/gcodes
|
||||
[pause_resume]
|
||||
[display_status]
|
||||
|
||||
[delayed_gcode DISABLEFILAMENTSENSOR]
|
||||
initial_duration: 1
|
||||
gcode:
|
||||
SET_FILAMENT_SENSOR SENSOR=filament_sensor ENABLE=0
|
||||
|
||||
[gcode_macro _globals]
|
||||
variable_filament_sensor_enabled: 0 # NOTE Enable(1) or disable(0) the filament sensor, if one is connected
|
||||
variable_beeping_enabled: 1 # NOTE Enable(1) or disable(0) beeping everywhere except during gantry calibration
|
||||
variable_pre_purge_prime_length: 1.4
|
||||
gcode:
|
||||
SET_GCODE_VARIABLE MACRO=_globals VARIABLE=pre_purge_prime_length VALUE={ variable_pre_purge_prime_length }
|
||||
SET_GCODE_VARIABLE MACRO=_globals VARIABLE=filament_sensor_enabled VALUE={ variable_filament_sensor_enabled }
|
||||
SET_GCODE_VARIABLE MACRO=_globals VARIABLE=beeping_enabled VALUE={ variable_beeping_enabled }
|
||||
|
||||
[gcode_macro CHECK_PRE_PURGE_PRIME_LENGTH]
|
||||
[gcode_macro CONDITIONAL_BEEP]
|
||||
gcode:
|
||||
{% set PRE_PURGE_PRIME_LENGTH=printer["gcode_macro _globals"].pre_purge_prime_length %}
|
||||
{% if not PRE_PURGE_PRIME_LENGTH %}
|
||||
{action_raise_error('Pre purge prime length not found')}
|
||||
# Parameters
|
||||
{% set i = params.I|default(1)|int %} ; Iterations (number of times to beep).
|
||||
{% set dur = params.DUR|default(100)|int %} ; Duration/wait of each beep in ms. Default 100ms.
|
||||
{% set freq = params.FREQ|default(2000)|int %} ; Frequency in Hz. Default 2kHz.
|
||||
|
||||
{% set BEEPING_ENABLED=printer["gcode_macro _globals"].beeping_enabled|default(-1)|int %}
|
||||
|
||||
{% if BEEPING_ENABLED == 1 %}
|
||||
BEEP I={i} DUR={dur} FREQ={freq}
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro ADJUST_FILAMENT_SENSOR_STATUS]
|
||||
gcode:
|
||||
# Parameters
|
||||
{% set NEWSTATUS = params.ENABLE|default(-1)|int %}
|
||||
|
||||
{% set FILAMENT_SENSOR_ENABLED=printer["gcode_macro _globals"].filament_sensor_enabled|default(-1)|int %}
|
||||
|
||||
{% if FILAMENT_SENSOR_ENABLED == 1 and NEWSTATUS != -1 %}
|
||||
SET_FILAMENT_SENSOR SENSOR=filament_sensor ENABLE={NEWSTATUS}
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro M109]
|
||||
rename_existing: M99109
|
||||
gcode:
|
||||
#Parameters
|
||||
{% set s = params.S|float %}
|
||||
|
||||
M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} ; Set hotend temp
|
||||
{% if s != 0 %}
|
||||
TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} ; Wait for hotend temp (within 1 degree)
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro M190]
|
||||
rename_existing: M99190
|
||||
gcode:
|
||||
#Parameters
|
||||
{% set s = params.S|float %}
|
||||
|
||||
M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} ; Set bed temp
|
||||
{% if s != 0 %}
|
||||
TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} ; Wait for bed temp (within 1 degree)
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro M109]
|
||||
@@ -52,8 +100,8 @@ gcode:
|
||||
# https://github.com/JoeCat1207/V0.1-Purge-line-SuperSlicer/blob/main/Purgeline.txt
|
||||
# https://github.com/VoronDesign/Voron-Switchwire/blob/200cdae033c59ef81f67c4235469da7ca66d53a1/Firmware/skr_mini_e3_v2_config.cfg
|
||||
gcode:
|
||||
{% set PRE_PURGE_PRIME_LENGTH=printer["gcode_macro _globals"].pre_purge_prime_length %}
|
||||
CHECK_PRE_PURGE_PRIME_LENGTH
|
||||
{% set PRE_PURGE_PRIME_LENGTH=printer["gcode_macro _globals"].pre_purge_prime_length|default(1.40)|float %}
|
||||
ADJUST_FILAMENT_SENSOR_STATUS ENABLE=1
|
||||
G0 Y0 X0 F4000 ; go to tongue of print bed
|
||||
G1 Z0.4 F500.0 ; move bed to nozzle
|
||||
G92 E0.0 ; reset extruder
|
||||
@@ -72,16 +120,14 @@ gcode:
|
||||
BASE_CANCEL_PRINT
|
||||
|
||||
[gcode_macro PRINT_START]
|
||||
# Use PRINT_START for the slicer starting script - please customize for your slicer of choice
|
||||
#gcode:
|
||||
# G28 ; home all axes
|
||||
# G1 Z20 F3000 ; move nozzle away from bed
|
||||
gcode:
|
||||
gcode:
|
||||
# Parameters
|
||||
{% set bedtemp = params.BED|int %}
|
||||
{% set hotendtemp = params.HOTEND|int %}
|
||||
{% set chambertemp = params.CHAMBER|default(0)|int %}
|
||||
|
||||
ADJUST_FILAMENT_SENSOR_STATUS ENABLE=1
|
||||
|
||||
G28 X Y
|
||||
# <insert your routines here>
|
||||
M140 S{bedtemp} ; set & don't wait for bed temp
|
||||
@@ -97,9 +143,9 @@ gcode:
|
||||
G1 Z20 F3000 ; move nozzle away from bed
|
||||
|
||||
[gcode_macro PRINT_END]
|
||||
# Use PRINT_END for the slicer ending script - please customize for your slicer of choice
|
||||
gcode:
|
||||
BEEP I=2 DUR=30 FREQ=8500 ; NOTE Comment out this line to stop the beeps at the end of a print
|
||||
ADJUST_FILAMENT_SENSOR_STATUS ENABLE=0
|
||||
CONDITIONAL_BEEP I=2 DUR=30 FREQ=8500 ; NOTE Comment out this line to stop the beeps at the end of a print
|
||||
{% set PRE_PURGE_PRIME_LENGTH=printer["gcode_macro _globals"].pre_purge_prime_length|default(1.40)|float %}
|
||||
M400 ; wait for buffer to clear
|
||||
G92 E0 ; zero the extruder
|
||||
@@ -154,6 +200,9 @@ gcode:
|
||||
|
||||
[gcode_macro M600]
|
||||
gcode:
|
||||
CONDITIONAL_BEEP i=1 dur=300
|
||||
CONDITIONAL_BEEP i=1 dur=100
|
||||
CONDITIONAL_BEEP i=1 dur=100
|
||||
PAUSE ; Pause
|
||||
|
||||
[gcode_macro PAUSE]
|
||||
@@ -166,7 +215,8 @@ gcode:
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=zhop VALUE={z} ; set z hop variable for reference in resume macro
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=etemp VALUE={printer['extruder'].target} ; set hotend temp variable for reference in resume macro
|
||||
|
||||
# SET_FILAMENT_SENSOR SENSOR=filament_sensor ENABLE=0 ; disable filament sensor
|
||||
ADJUST_FILAMENT_SENSOR_STATUS ENABLE=0
|
||||
|
||||
SAVE_GCODE_STATE NAME=PAUSE ; save current print position for resume
|
||||
BASE_PAUSE ; pause print
|
||||
{% if (printer.gcode_move.position.z + z) < printer.toolhead.axis_maximum.z %} ; check that zhop doesn't exceed z max
|
||||
@@ -192,8 +242,8 @@ gcode:
|
||||
{% set e = params.E|default(2.5)|int %} ; hotend prime amount (in mm)
|
||||
|
||||
{% if printer['pause_resume'].is_paused|int == 1 %}
|
||||
# SET_FILAMENT_SENSOR SENSOR=filament_sensor ENABLE=1 ; enable filament sensor
|
||||
#INITIAL_RGB ; reset LCD color
|
||||
ADJUST_FILAMENT_SENSOR_STATUS ENABLE=1
|
||||
|
||||
SET_IDLE_TIMEOUT TIMEOUT={printer.configfile.settings.idle_timeout.timeout} ; set timeout back to configured value
|
||||
{% if etemp > 0 %}
|
||||
M109 S{etemp|int} ; wait for hotend to heat back up
|
||||
@@ -215,4 +265,19 @@ gcode:
|
||||
gcode:
|
||||
{% if "xyz" not in printer.toolhead.homed_axes %}
|
||||
G28
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro BEEP]
|
||||
description: BEEP I=3 DUR=200 FREQ=2000: Beep 3 times, for 200ms each, at 2kHz frequency.
|
||||
gcode:
|
||||
# Parameters
|
||||
{% set i = params.I|default(1)|int %} ; Iterations (number of times to beep).
|
||||
{% set dur = params.DUR|default(100)|int %} ; Duration/wait of each beep in ms. Default 100ms.
|
||||
{% set freq = params.FREQ|default(2000)|int %} ; Frequency in Hz. Default 2kHz.
|
||||
|
||||
{% for iteration in range(i|int) %}
|
||||
SET_PIN PIN=beeper VALUE=0.8 CYCLE_TIME={ 1.0/freq if freq > 0 else 1 }
|
||||
G4 P{dur}
|
||||
SET_PIN PIN=beeper VALUE=0
|
||||
G4 P{dur}
|
||||
{% endfor %}
|
||||
Reference in New Issue
Block a user