更新配置文件 新增开门检测文件
This commit is contained in:
parent
812c10499e
commit
28884f05d0
1
printer_config/D1000/1.1/door_detect.cfg
Symbolic link
1
printer_config/D1000/1.1/door_detect.cfg
Symbolic link
@ -0,0 +1 @@
|
||||
../../module/door_detect.cfg
|
@ -9,6 +9,10 @@ filename: ~/printer_data/config/config_variables.cfg
|
||||
|
||||
[exclude_object]
|
||||
|
||||
[board_pins]
|
||||
aliases:
|
||||
DOOR_PIN=PC5
|
||||
|
||||
[gcode_arcs]
|
||||
resolution: 1.0
|
||||
|
||||
@ -103,14 +107,16 @@ position_min: -4
|
||||
homing_speed: 10
|
||||
second_homing_speed: 1
|
||||
homing_retract_dist: 2.0
|
||||
step_pulse_duration: 0.000005
|
||||
|
||||
[heater_bed]
|
||||
heater_pin: PD12
|
||||
sensor_type: Generic 3950
|
||||
sensor_pin: PC0
|
||||
max_power: 1.0
|
||||
min_temp: 0
|
||||
max_temp: 130
|
||||
min_temp: -20
|
||||
max_temp: 100
|
||||
overshoot: 10
|
||||
# control: pid
|
||||
# pid_kp: 17.22
|
||||
# pid_ki: 0.9
|
||||
@ -127,8 +133,9 @@ heater_pin:PD15
|
||||
max_power:1.0
|
||||
sensor_type: Generic 3950
|
||||
sensor_pin:PC3
|
||||
min_temp: 0
|
||||
max_temp: 70
|
||||
min_temp: -20
|
||||
max_temp: 60
|
||||
overshoot: 10
|
||||
pwm_cycle_time: 0.3
|
||||
# control: pid
|
||||
# pid_kp: 30.68
|
||||
@ -246,8 +253,9 @@ max_extrude_only_accel: 1000.0
|
||||
max_extrude_cross_section:5
|
||||
heater_pin: tool:PC6
|
||||
max_power: 1.0
|
||||
min_temp: 0
|
||||
max_temp: 435
|
||||
min_temp: -20
|
||||
max_temp: 420
|
||||
overshoot: 20
|
||||
min_extrude_temp: 180
|
||||
pressure_advance: 0.03
|
||||
pressure_advance_smooth_time:0.040
|
||||
@ -295,8 +303,9 @@ max_extrude_only_accel: 1000.0
|
||||
max_extrude_cross_section:5
|
||||
heater_pin: tool:PC7
|
||||
max_power: 1.0
|
||||
min_temp: 0
|
||||
max_temp: 435
|
||||
min_temp: -20
|
||||
max_temp: 420
|
||||
overshoot: 20
|
||||
min_extrude_temp: 180
|
||||
pressure_advance: 0.032
|
||||
pressure_advance_smooth_time:0.040
|
||||
@ -363,7 +372,10 @@ gcode:
|
||||
|
||||
[gcode_macro T0]
|
||||
gcode:
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor|default("") == ""
|
||||
else True if not printer[client.filament_sensor].enabled
|
||||
else printer[client.filament_sensor].filament_detected|default(False) %}
|
||||
{% set printing = printer.print_stats.state == "printing" %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
@ -390,7 +402,10 @@ gcode:
|
||||
{% set y_offset = sv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = sv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set x_offset = x_offset - 59 %}
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder1"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor1|default("") == ""
|
||||
else True if not printer[client.filament_sensor1].enabled
|
||||
else printer[client.filament_sensor1].filament_detected|default(False) %}
|
||||
{% set printing = (printer.print_stats.state == "printing") %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
@ -654,13 +669,14 @@ gcode:
|
||||
|
||||
[gcode_macro _USER_PAUSE]
|
||||
gcode:
|
||||
{% set extruderTools = [('extruder', 'last_extruder_temp'),
|
||||
('extruder1', 'last_extruder1_temp')] %}
|
||||
{% set heaters = [('extruder', 'last_extruder_temp'),
|
||||
('extruder1', 'last_extruder1_temp'),
|
||||
('heater_bed', 'last_bed_temp')] %}
|
||||
{% set act = printer.gcode_move.gcode_position %}
|
||||
SAVE_VARIABLE VARIABLE=power_resume_z VALUE={act.z}
|
||||
{% for extruder_name, name in extruderTools %}
|
||||
{% set temp = printer[extruder_name].target if extruder_name in printer else 0 %}
|
||||
{% set restore = False if printer[extruder_name] == ''
|
||||
{% for heater, name in heaters %}
|
||||
{% set temp = printer[heater].target if heater in printer else 0 %}
|
||||
{% set restore = False if printer[heater] == ''
|
||||
else True if params.RESTORE|default(1)|int == 1 else False %}
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE={name} VALUE="{{'restore': restore, 'temp': temp}}"
|
||||
{% endfor %}
|
||||
@ -711,6 +727,10 @@ gcode:
|
||||
{% set extruder_info = [
|
||||
{'index': 0, 'name': 'last_extruder_temp'},
|
||||
{'index': 1, 'name': 'last_extruder1_temp'}] %}
|
||||
{% set value = printer["gcode_macro RESUME"]["last_bed_temp"].temp %}
|
||||
{% if value != 0 %}
|
||||
M190 S{value}
|
||||
{% endif %}
|
||||
{% set temperature = "last_extruder_temp" if printer.toolhead.extruder == "extruder" else "last_extruder1_temp" %}
|
||||
{% set value = printer["gcode_macro RESUME"][temperature].temp %}
|
||||
{% if printer[printer.toolhead.extruder].temperature < value-3 %}
|
||||
@ -770,11 +790,28 @@ gcode:
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro _REAPPLY_OFFSET]
|
||||
gcode:
|
||||
{% set re_extruder = printer['gcode_macro RESUME'].resume_extruder|default("extruder") %}
|
||||
{% set svv = printer.save_variables.variables %}
|
||||
{% set x_offset = svv.nozzle_x_offset_val|default(0)|float %}
|
||||
{% set y_offset = svv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = svv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set x_offset = x_offset - 59 %}
|
||||
{% set is_extruder = printer.toolhead.extruder == "extruder" %}
|
||||
|
||||
{% if printer.toolhead.extruder!= re_extruder %}
|
||||
SET_GCODE_OFFSET Z={0 if is_extruder else z_offset} MOVE=1
|
||||
SET_GCODE_OFFSET Y={0 if is_extruder else y_offset}
|
||||
SET_GCODE_OFFSET X={0 if is_extruder else x_offset}
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro RESUME]
|
||||
description: Resume the actual running print
|
||||
rename_existing: RESUME_BASE
|
||||
variable_last_extruder_temp: {'restore': False, 'temp': 0}
|
||||
variable_last_extruder1_temp: {'restore': False, 'temp': 0}
|
||||
variable_last_bed_temp: {'restore': False, 'temp': 0}
|
||||
variable_restore_idle_timeout: 0
|
||||
variable_idle_state: False
|
||||
variable_filament_state: ""
|
||||
@ -786,28 +823,41 @@ gcode:
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set do_resume = False %}
|
||||
{% set runout = True %}
|
||||
##### end of definitions #####
|
||||
_FILAMENT_UPDATE
|
||||
_RESUME_EXTRUDER AUTOSHIFT={autoshift}
|
||||
_EXTRUDER_TEMPERATURE_HANDLE
|
||||
{% macro resume_action() %}
|
||||
_FILAMENT_UPDATE
|
||||
_RESUME_EXTRUDER AUTOSHIFT={autoshift}
|
||||
_EXTRUDER_TEMPERATURE_HANDLE
|
||||
|
||||
{% set can_extrude = True if printer.toolhead.extruder == '' # no extruder defined in config
|
||||
else printer[printer.toolhead.extruder].can_extrude %} # status of active extruder
|
||||
#### Printer comming from timeout idle state ####
|
||||
{% if printer.idle_timeout.state|upper == "IDLE" or idle_state or autoshift %}
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=idle_state VALUE=False
|
||||
{% set can_extrude = True if printer.toolhead.extruder == '' # no extruder defined in config
|
||||
else printer[printer.toolhead.extruder].can_extrude %} # status of active extruder
|
||||
#### Printer comming from timeout idle state ####
|
||||
{% if printer.idle_timeout.state|upper == "IDLE" or idle_state or autoshift %}
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=idle_state VALUE=False
|
||||
{% endif %}
|
||||
{% if last_extruder_temp.restore or last_extruder1_temp.restore %}
|
||||
# we need to use the unicode (\u00B0) for the ° as py2 env's would throw an error otherwise
|
||||
{client.user_temp_macro|default("")}
|
||||
{ client.user_temp_macro|default("") }
|
||||
{% set do_resume = True %}
|
||||
{% elif can_extrude %}
|
||||
{% set do_resume = True %}
|
||||
{% endif %}
|
||||
#### Printer comming out of regular PAUSE state ####
|
||||
{% elif can_extrude %}
|
||||
{% set do_resume = True %}
|
||||
_ACT_RESUME DO_RESUME={ do_resume }
|
||||
{% endmacro %}
|
||||
{% if printer['gcode_button _door_detection'] %}
|
||||
{% set sv = printer.save_variables.variables %}
|
||||
{% set door_function = sv.door_detect|default("Disabled") %}
|
||||
{% set door_state = printer['gcode_button _door_detection'].state|default('released')|lower %}
|
||||
|
||||
{% if door_function == 'Pause Print' and door_state == 'released' %}
|
||||
RESPOND TYPE=command MSG="action:prompt_begin"
|
||||
RESPOND TYPE=command MSG="action:prompt_text Please close the door and click Resume to proceed."
|
||||
RESPOND TYPE=command MSG="action:prompt_footer_button Ok|RESPOND TYPE=command MSG=action:prompt_end"
|
||||
RESPOND TYPE=command MSG="action:prompt_show"
|
||||
{% else %}
|
||||
{ resume_action() }
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{ resume_action() }
|
||||
{% endif %}
|
||||
_ACT_RESUME DO_RESUME={do_resume}
|
||||
|
||||
[gcode_macro _ACT_RESUME]
|
||||
gcode:
|
||||
@ -826,6 +876,7 @@ gcode:
|
||||
{client.user_resume_macro|default("")}
|
||||
_CLIENT_EXTRUDE
|
||||
RESUME_BASE VELOCITY={params.VELOCITY|default(sp_move)}
|
||||
_REAPPLY_OFFSET
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=change_runout VALUE="None"
|
||||
{% else %}
|
||||
{% set msg = "Left" if printer.toolhead.extruder == "extruder" else "Right" %}
|
||||
@ -928,9 +979,9 @@ gcode:
|
||||
RUN_SHELL_COMMAND CMD=_CLEAR_PLR
|
||||
SAVE_VARIABLE VARIABLE=last_file VALUE='"{ filename }"'
|
||||
SAVE_VARIABLE VARIABLE=filepath VALUE='"{ filepath }"'
|
||||
{% set zero_vars = ['power_resume_x', 'power_resume_y', 'power_resume_z'] %}
|
||||
{% set zero_vars = ['power_resume_position', 'power_resume_line'] %}
|
||||
{% for var in zero_vars %}
|
||||
SAVE_VARIABLE VARIABLE={var} VALUE=0
|
||||
SAVE_VARIABLE VARIABLE={var} VALUE=0
|
||||
{% endfor %}
|
||||
SAVE_VARIABLE VARIABLE=was_interrupted VALUE=False
|
||||
|
||||
@ -946,9 +997,9 @@ gcode:
|
||||
{% set park_dz = client.custom_park_dz|default(2.0)|abs %}
|
||||
RESPOND TYPE=command MSG="action:prompt_end"
|
||||
SET_GCODE_OFFSET Z=0 MOVE=0
|
||||
{% set z_height = params.Z_HEIGHT|default(sv.power_resume_z)|float %}
|
||||
{% set is_paused = sv.power_loss_paused|default(False) %}
|
||||
{% set last_file = params.GCODE_FILE|default(sv.last_file)|string %}
|
||||
{% set filepath = params.GCODE_FILE|default(sv.filepath)|string %}
|
||||
{% set last_file = filepath.split('/')[-1] %}
|
||||
{% set hotend = sv.power_resume_extruder|default("extruder")%}
|
||||
{% set z_offset = sv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set z_offset_total = park_dz if is_paused else 0 %}
|
||||
@ -958,7 +1009,7 @@ gcode:
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_z ENABLE=1
|
||||
G4 P300
|
||||
M118 Recovery in progress, please wait
|
||||
RUN_SHELL_COMMAND CMD=_POWER_LOSS_RECOVERY PARAMS="{z_height} \"{last_file}\" \"{z_offset_total}\""
|
||||
RUN_SHELL_COMMAND CMD=_POWER_LOSS_RECOVERY PARAMS="{z_offset_total}"
|
||||
SDCARD_PRINT_FILE FILENAME=.plr/"{last_file}"
|
||||
SAVE_VARIABLE VARIABLE=was_interrupted VALUE=False
|
||||
|
||||
@ -1140,4 +1191,6 @@ gcode:
|
||||
[gcode_macro _NOZZLE_XY_OFFSET_CALIBRATE]
|
||||
gcode:
|
||||
RUN_SHELL_COMMAND CMD=fetch_assets PARAMS="\"Gcode\" \"D1000HS\" \"NozzleAglin.zip\""
|
||||
SDCARD_PRINT_FILE FILENAME=".PresetModel/NozzleAglin.gcode"
|
||||
SDCARD_PRINT_FILE FILENAME=".PresetModel/NozzleAglin.gcode"
|
||||
|
||||
[include module/*.cfg]
|
||||
|
1
printer_config/D600Pro2/1.1/door_detect.cfg
Symbolic link
1
printer_config/D600Pro2/1.1/door_detect.cfg
Symbolic link
@ -0,0 +1 @@
|
||||
../../module/door_detect.cfg
|
@ -9,6 +9,10 @@ filename: ~/printer_data/config/config_variables.cfg
|
||||
|
||||
[exclude_object]
|
||||
|
||||
[board_pins]
|
||||
aliases:
|
||||
DOOR_PIN=PC5
|
||||
|
||||
[gcode_arcs]
|
||||
resolution: 1.0
|
||||
|
||||
@ -103,14 +107,16 @@ position_min: -4
|
||||
homing_speed: 10
|
||||
second_homing_speed: 1
|
||||
homing_retract_dist: 2.0
|
||||
step_pulse_duration: 0.000005
|
||||
|
||||
[heater_bed]
|
||||
heater_pin: PD12
|
||||
sensor_type: Generic 3950
|
||||
sensor_pin: PC0
|
||||
max_power: 1.0
|
||||
min_temp: 0
|
||||
max_temp: 130
|
||||
min_temp: -20
|
||||
max_temp: 100
|
||||
overshoot: 10
|
||||
# control: pid
|
||||
# pid_kp: 59.368
|
||||
# pid_ki: 1.656
|
||||
@ -127,8 +133,9 @@ heater_pin:PD15
|
||||
max_power:1.0
|
||||
sensor_type: Generic 3950
|
||||
sensor_pin:PC3
|
||||
min_temp: 0
|
||||
max_temp: 80
|
||||
min_temp: -20
|
||||
max_temp: 70
|
||||
overshoot: 10
|
||||
pwm_cycle_time: 0.3
|
||||
# control: pid
|
||||
# pid_kp: 30.68
|
||||
@ -246,8 +253,9 @@ max_extrude_only_accel: 1000.0
|
||||
max_extrude_cross_section:5
|
||||
heater_pin: tool:PC6
|
||||
max_power: 1.0
|
||||
min_temp: 0
|
||||
max_temp: 435
|
||||
min_temp: -20
|
||||
max_temp: 420
|
||||
overshoot: 20
|
||||
min_extrude_temp: 180
|
||||
pressure_advance: 0.03
|
||||
pressure_advance_smooth_time:0.040
|
||||
@ -295,8 +303,9 @@ max_extrude_only_accel: 1000.0
|
||||
max_extrude_cross_section:5
|
||||
heater_pin: tool:PC7
|
||||
max_power: 1.0
|
||||
min_temp: 0
|
||||
max_temp: 435
|
||||
min_temp: -20
|
||||
max_temp: 420
|
||||
overshoot: 20
|
||||
min_extrude_temp: 180
|
||||
pressure_advance: 0.032
|
||||
pressure_advance_smooth_time:0.040
|
||||
@ -363,7 +372,10 @@ gcode:
|
||||
|
||||
[gcode_macro T0]
|
||||
gcode:
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor|default("") == ""
|
||||
else True if not printer[client.filament_sensor].enabled
|
||||
else printer[client.filament_sensor].filament_detected|default(False) %}
|
||||
{% set printing = printer.print_stats.state == "printing" %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
@ -390,7 +402,10 @@ gcode:
|
||||
{% set y_offset = sv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = sv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set x_offset = x_offset - 59 %}
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder1"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor1|default("") == ""
|
||||
else True if not printer[client.filament_sensor1].enabled
|
||||
else printer[client.filament_sensor1].filament_detected|default(False) %}
|
||||
{% set printing = (printer.print_stats.state == "printing") %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
@ -417,7 +432,7 @@ gcode:
|
||||
|
||||
[gcode_macro PROBE_SERVO_CLOSE]
|
||||
gcode:
|
||||
SET_SERVO SERVO=probe_servo angle=130
|
||||
SET_SERVO SERVO=probe_servo angle=170
|
||||
G4 P2000
|
||||
|
||||
[gcode_macro _START_PRINT_BASE]
|
||||
@ -538,12 +553,18 @@ gcode:
|
||||
{% set do_z = 'Z' in params|string %}
|
||||
|
||||
{% if do_x %}
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_x ENABLE=1
|
||||
G4 P300
|
||||
{% set homing_cmd = 'X ' %}
|
||||
{% endif %}
|
||||
{% if do_y %}
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_y ENABLE=1
|
||||
G4 P300
|
||||
{% set homing_cmd = homing_cmd + 'Y ' %}
|
||||
{% endif %}
|
||||
{% if do_z %}
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_z ENABLE=1
|
||||
G4 P300
|
||||
{% if 'x' not in printer.toolhead.homed_axes|lower or 'y' not in printer.toolhead.homed_axes|lower %}
|
||||
{% set homing_cmd = 'X Y Z' %}
|
||||
{% else %}
|
||||
@ -551,6 +572,10 @@ gcode:
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if not homing_cmd %}
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_x ENABLE=1
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_y ENABLE=1
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_z ENABLE=1
|
||||
G4 P300
|
||||
C28
|
||||
_ACTIVATE_DEFAULT_EXTRUDER
|
||||
{% else %}
|
||||
@ -645,13 +670,14 @@ gcode:
|
||||
|
||||
[gcode_macro _USER_PAUSE]
|
||||
gcode:
|
||||
{% set extruderTools = [('extruder', 'last_extruder_temp'),
|
||||
('extruder1', 'last_extruder1_temp')] %}
|
||||
{% set heaters = [('extruder', 'last_extruder_temp'),
|
||||
('extruder1', 'last_extruder1_temp'),
|
||||
('heater_bed', 'last_bed_temp')] %}
|
||||
{% set act = printer.gcode_move.gcode_position %}
|
||||
SAVE_VARIABLE VARIABLE=power_resume_z VALUE={act.z}
|
||||
{% for extruder_name, name in extruderTools %}
|
||||
{% set temp = printer[extruder_name].target if extruder_name in printer else 0 %}
|
||||
{% set restore = False if printer[extruder_name] == ''
|
||||
{% for heater, name in heaters %}
|
||||
{% set temp = printer[heater].target if heater in printer else 0 %}
|
||||
{% set restore = False if printer[heater] == ''
|
||||
else True if params.RESTORE|default(1)|int == 1 else False %}
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE={name} VALUE="{{'restore': restore, 'temp': temp}}"
|
||||
{% endfor %}
|
||||
@ -702,6 +728,10 @@ gcode:
|
||||
{% set extruder_info = [
|
||||
{'index': 0, 'name': 'last_extruder_temp'},
|
||||
{'index': 1, 'name': 'last_extruder1_temp'}] %}
|
||||
{% set value = printer["gcode_macro RESUME"]["last_bed_temp"].temp %}
|
||||
{% if value != 0 %}
|
||||
M190 S{value}
|
||||
{% endif %}
|
||||
{% set temperature = "last_extruder_temp" if printer.toolhead.extruder == "extruder" else "last_extruder1_temp" %}
|
||||
{% set value = printer["gcode_macro RESUME"][temperature].temp %}
|
||||
{% if printer[printer.toolhead.extruder].temperature < value-3 %}
|
||||
@ -761,11 +791,28 @@ gcode:
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro _REAPPLY_OFFSET]
|
||||
gcode:
|
||||
{% set re_extruder = printer['gcode_macro RESUME'].resume_extruder|default("extruder") %}
|
||||
{% set svv = printer.save_variables.variables %}
|
||||
{% set x_offset = svv.nozzle_x_offset_val|default(0)|float %}
|
||||
{% set y_offset = svv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = svv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set x_offset = x_offset - 59 %}
|
||||
{% set is_extruder = printer.toolhead.extruder == "extruder" %}
|
||||
|
||||
{% if printer.toolhead.extruder!= re_extruder %}
|
||||
SET_GCODE_OFFSET Z={0 if is_extruder else z_offset} MOVE=1
|
||||
SET_GCODE_OFFSET Y={0 if is_extruder else y_offset}
|
||||
SET_GCODE_OFFSET X={0 if is_extruder else x_offset}
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro RESUME]
|
||||
description: Resume the actual running print
|
||||
rename_existing: RESUME_BASE
|
||||
variable_last_extruder_temp: {'restore': False, 'temp': 0}
|
||||
variable_last_extruder1_temp: {'restore': False, 'temp': 0}
|
||||
variable_last_bed_temp: {'restore': False, 'temp': 0}
|
||||
variable_restore_idle_timeout: 0
|
||||
variable_idle_state: False
|
||||
variable_filament_state: ""
|
||||
@ -777,29 +824,41 @@ gcode:
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set do_resume = False %}
|
||||
{% set runout = True %}
|
||||
##### end of definitions #####
|
||||
_FILAMENT_UPDATE
|
||||
_RESUME_EXTRUDER AUTOSHIFT={autoshift}
|
||||
_EXTRUDER_TEMPERATURE_HANDLE
|
||||
{% macro resume_action() %}
|
||||
_FILAMENT_UPDATE
|
||||
_RESUME_EXTRUDER AUTOSHIFT={autoshift}
|
||||
_EXTRUDER_TEMPERATURE_HANDLE
|
||||
|
||||
{% set can_extrude = True if printer.toolhead.extruder == '' # no extruder defined in config
|
||||
else printer[printer.toolhead.extruder].can_extrude %} # status of active extruder
|
||||
|
||||
#### Printer comming from timeout idle state ####
|
||||
{% if printer.idle_timeout.state|upper == "IDLE" or idle_state or autoshift %}
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=idle_state VALUE=False
|
||||
{% set can_extrude = True if printer.toolhead.extruder == '' # no extruder defined in config
|
||||
else printer[printer.toolhead.extruder].can_extrude %} # status of active extruder
|
||||
#### Printer comming from timeout idle state ####
|
||||
{% if printer.idle_timeout.state|upper == "IDLE" or idle_state or autoshift %}
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=idle_state VALUE=False
|
||||
{% endif %}
|
||||
{% if last_extruder_temp.restore or last_extruder1_temp.restore %}
|
||||
# we need to use the unicode (\u00B0) for the ° as py2 env's would throw an error otherwise
|
||||
{client.user_temp_macro|default("")}
|
||||
{ client.user_temp_macro|default("") }
|
||||
{% set do_resume = True %}
|
||||
{% elif can_extrude %}
|
||||
{% set do_resume = True %}
|
||||
{% endif %}
|
||||
#### Printer comming out of regular PAUSE state ####
|
||||
{% elif can_extrude %}
|
||||
{% set do_resume = True %}
|
||||
_ACT_RESUME DO_RESUME={ do_resume }
|
||||
{% endmacro %}
|
||||
{% if printer['gcode_button _door_detection'] %}
|
||||
{% set sv = printer.save_variables.variables %}
|
||||
{% set door_function = sv.door_detect|default("Disabled") %}
|
||||
{% set door_state = printer['gcode_button _door_detection'].state|default('released')|lower %}
|
||||
|
||||
{% if door_function == 'Pause Print' and door_state == 'released' %}
|
||||
RESPOND TYPE=command MSG="action:prompt_begin"
|
||||
RESPOND TYPE=command MSG="action:prompt_text Please close the door and click Resume to proceed."
|
||||
RESPOND TYPE=command MSG="action:prompt_footer_button Ok|RESPOND TYPE=command MSG=action:prompt_end"
|
||||
RESPOND TYPE=command MSG="action:prompt_show"
|
||||
{% else %}
|
||||
{ resume_action() }
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{ resume_action() }
|
||||
{% endif %}
|
||||
_ACT_RESUME DO_RESUME={do_resume}
|
||||
|
||||
[gcode_macro _ACT_RESUME]
|
||||
gcode:
|
||||
@ -818,6 +877,7 @@ gcode:
|
||||
{client.user_resume_macro|default("")}
|
||||
_CLIENT_EXTRUDE
|
||||
RESUME_BASE VELOCITY={params.VELOCITY|default(sp_move)}
|
||||
_REAPPLY_OFFSET
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE=change_runout VALUE="None"
|
||||
{% else %}
|
||||
{% set msg = "Left" if printer.toolhead.extruder == "extruder" else "Right" %}
|
||||
@ -920,9 +980,9 @@ gcode:
|
||||
RUN_SHELL_COMMAND CMD=_CLEAR_PLR
|
||||
SAVE_VARIABLE VARIABLE=last_file VALUE='"{ filename }"'
|
||||
SAVE_VARIABLE VARIABLE=filepath VALUE='"{ filepath }"'
|
||||
{% set zero_vars = ['power_resume_x', 'power_resume_y', 'power_resume_z'] %}
|
||||
{% set zero_vars = ['power_resume_position', 'power_resume_line'] %}
|
||||
{% for var in zero_vars %}
|
||||
SAVE_VARIABLE VARIABLE={var} VALUE=0
|
||||
SAVE_VARIABLE VARIABLE={var} VALUE=0
|
||||
{% endfor %}
|
||||
SAVE_VARIABLE VARIABLE=was_interrupted VALUE=False
|
||||
|
||||
@ -938,9 +998,9 @@ gcode:
|
||||
{% set park_dz = client.custom_park_dz|default(2.0)|abs %}
|
||||
RESPOND TYPE=command MSG="action:prompt_end"
|
||||
SET_GCODE_OFFSET Z=0 MOVE=0
|
||||
{% set z_height = params.Z_HEIGHT|default(sv.power_resume_z)|float %}
|
||||
{% set is_paused = sv.power_loss_paused|default(False) %}
|
||||
{% set last_file = params.GCODE_FILE|default(sv.last_file)|string %}
|
||||
{% set filepath = params.GCODE_FILE|default(sv.filepath)|string %}
|
||||
{% set last_file = filepath.split('/')[-1] %}
|
||||
{% set hotend = sv.power_resume_extruder|default("extruder")%}
|
||||
{% set z_offset = sv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set z_offset_total = park_dz if is_paused else 0 %}
|
||||
@ -950,7 +1010,7 @@ gcode:
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_z ENABLE=1
|
||||
G4 P300
|
||||
M118 Recovery in progress, please wait
|
||||
RUN_SHELL_COMMAND CMD=_POWER_LOSS_RECOVERY PARAMS="{z_height} \"{last_file}\" \"{z_offset_total}\""
|
||||
RUN_SHELL_COMMAND CMD=_POWER_LOSS_RECOVERY PARAMS="{z_offset_total}"
|
||||
SDCARD_PRINT_FILE FILENAME=.plr/"{last_file}"
|
||||
SAVE_VARIABLE VARIABLE=was_interrupted VALUE=False
|
||||
|
||||
@ -1132,4 +1192,6 @@ gcode:
|
||||
[gcode_macro _NOZZLE_XY_OFFSET_CALIBRATE]
|
||||
gcode:
|
||||
RUN_SHELL_COMMAND CMD=fetch_assets PARAMS="\"Gcode\" \"D600Pro2HS\" \"NozzleAglin.zip\""
|
||||
SDCARD_PRINT_FILE FILENAME=".PresetModel/NozzleAglin.gcode"
|
||||
SDCARD_PRINT_FILE FILENAME=".PresetModel/NozzleAglin.gcode"
|
||||
|
||||
[include module/*.cfg]
|
||||
|
@ -48,7 +48,7 @@ square_corner_velocity: 5.0
|
||||
speed: 100
|
||||
horizontal_move_z: 7
|
||||
mesh_min: 34.6,17.4
|
||||
mesh_max: 420, 300
|
||||
mesh_max: 420, 290
|
||||
probe_count: 5,4
|
||||
mesh_pps: 2,2
|
||||
fade_end: 5
|
||||
@ -65,7 +65,7 @@ full_steps_per_rotation: 200
|
||||
endstop_pin: ^PC10
|
||||
position_min: -20
|
||||
position_endstop: -20
|
||||
position_max: 475
|
||||
position_max: 400
|
||||
homing_speed: 100
|
||||
homing_retract_dist: 10
|
||||
step_pulse_duration:0.0000025
|
||||
@ -152,8 +152,9 @@ heater_pin: PD12
|
||||
sensor_type: Generic 3950
|
||||
sensor_pin: PC0
|
||||
max_power: 1.0
|
||||
min_temp: 0
|
||||
max_temp: 150
|
||||
min_temp: -20
|
||||
max_temp: 140
|
||||
overshoot: 10
|
||||
# control: pid
|
||||
# pid_kp: 40.673
|
||||
# pid_ki: 0.837
|
||||
@ -170,8 +171,9 @@ heater_pin: PD15
|
||||
max_power: 1.0
|
||||
sensor_type: Generic 3950
|
||||
sensor_pin: PC3
|
||||
min_temp: 0
|
||||
max_temp: 80
|
||||
min_temp: -20
|
||||
max_temp: 70
|
||||
overshoot: 10
|
||||
# control: pid
|
||||
# pid_kp: 30.68
|
||||
# pid_ki: 0.21
|
||||
@ -203,7 +205,7 @@ kick_start_time: 1.0
|
||||
pin: PC6
|
||||
max_power: 0.8
|
||||
heater:
|
||||
stepper: stepper_x, stepper_z, dual_carriage
|
||||
stepper: stepper_x, stepper_z, dual_carriage
|
||||
idle_speed: 0.5
|
||||
|
||||
[delayed_gcode INIT_LIGHT]
|
||||
@ -298,8 +300,9 @@ max_extrude_only_accel: 1000.0
|
||||
max_extrude_cross_section:5
|
||||
heater_pin: L_tool:PA8
|
||||
max_power: 1.0
|
||||
min_temp: 0
|
||||
min_temp: -20
|
||||
max_temp: 450
|
||||
overshoot: 20
|
||||
min_extrude_temp: 150
|
||||
pressure_advance: 0.032
|
||||
pressure_advance_smooth_time:0.040
|
||||
@ -391,8 +394,9 @@ max_extrude_only_accel: 1000.0
|
||||
max_extrude_cross_section:5
|
||||
heater_pin: R_tool:PA8
|
||||
max_power: 1.0
|
||||
min_temp: 0
|
||||
min_temp: -20
|
||||
max_temp: 450
|
||||
overshoot: 20
|
||||
min_extrude_temp: 150
|
||||
pressure_advance: 0.032
|
||||
pressure_advance_smooth_time:0.040
|
||||
@ -442,7 +446,10 @@ gcode:
|
||||
|
||||
[gcode_macro T0]
|
||||
gcode:
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor|default("") == ""
|
||||
else True if not printer[client.filament_sensor].enabled
|
||||
else printer[client.filament_sensor].filament_detected|default(False) %}
|
||||
{% set printing = printer.print_stats.state == "printing" %}
|
||||
{% if filament_insert or printing == False %}
|
||||
{% if "x" not in printer.toolhead.homed_axes %}
|
||||
@ -490,7 +497,10 @@ gcode:
|
||||
{% set y_offset = svv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = svv.nozzle_z_offset_val|default(0)|float %}
|
||||
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder1"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor1|default("") == ""
|
||||
else True if not printer[client.filament_sensor1].enabled
|
||||
else printer[client.filament_sensor1].filament_detected|default(False) %}
|
||||
{% set printing = (printer.print_stats.state == "printing") %}
|
||||
{% if filament_insert or printing == False %}
|
||||
{% if "x" not in printer.toolhead.homed_axes %}
|
||||
@ -838,13 +848,14 @@ gcode:
|
||||
|
||||
[gcode_macro _USER_PAUSE]
|
||||
gcode:
|
||||
{% set extruderTools = [('extruder', 'last_extruder_temp'),
|
||||
('extruder1', 'last_extruder1_temp')] %}
|
||||
{% set heaters = [('extruder', 'last_extruder_temp'),
|
||||
('extruder1', 'last_extruder1_temp'),
|
||||
('heater_bed', 'last_bed_temp')] %}
|
||||
{% set act = printer.gcode_move.gcode_position %}
|
||||
SAVE_VARIABLE VARIABLE=power_resume_z VALUE={act.z}
|
||||
{% for extruder_name, name in extruderTools %}
|
||||
{% set temp = printer[extruder_name].target if extruder_name in printer else 0 %}
|
||||
{% set restore = False if printer[extruder_name] == ''
|
||||
{% for heater, name in heaters %}
|
||||
{% set temp = printer[heater].target if heater in printer else 0 %}
|
||||
{% set restore = False if printer[heater] == ''
|
||||
else True if params.RESTORE|default(1)|int == 1 else False %}
|
||||
SET_GCODE_VARIABLE MACRO=RESUME VARIABLE={name} VALUE="{{'restore': restore, 'temp': temp}}"
|
||||
{% endfor %}
|
||||
@ -864,6 +875,10 @@ gcode:
|
||||
{% set extruder_info = [
|
||||
{'index': 0, 'name': 'last_extruder_temp'},
|
||||
{'index': 1, 'name': 'last_extruder1_temp'}] %}
|
||||
{% set value = printer["gcode_macro RESUME"]["last_bed_temp"].temp %}
|
||||
{% if value != 0 %}
|
||||
M190 S{value}
|
||||
{% endif %}
|
||||
{% set temperature = "last_extruder_temp" if printer.toolhead.extruder == "extruder" else "last_extruder1_temp" %}
|
||||
{% set value = printer["gcode_macro RESUME"][temperature].temp %}
|
||||
{% for info in extruder_info %}
|
||||
@ -980,6 +995,7 @@ description: Resume the actual running print
|
||||
rename_existing: RESUME_BASE
|
||||
variable_last_extruder_temp: {'restore': False, 'temp': 0}
|
||||
variable_last_extruder1_temp: {'restore': False, 'temp': 0}
|
||||
variable_last_bed_temp: {'restore': False, 'temp': 0}
|
||||
variable_restore_idle_timeout: 0
|
||||
variable_idle_state: False
|
||||
variable_resume_dual: False
|
||||
@ -1146,9 +1162,9 @@ gcode:
|
||||
RUN_SHELL_COMMAND CMD=_CLEAR_PLR
|
||||
SAVE_VARIABLE VARIABLE=last_file VALUE='"{ filename }"'
|
||||
SAVE_VARIABLE VARIABLE=filepath VALUE='"{ filepath }"'
|
||||
{% set zero_vars = ['power_resume_x', 'power_resume_y', 'power_resume_z'] %}
|
||||
{% set zero_vars = ['power_resume_position', 'power_resume_line'] %}
|
||||
{% for var in zero_vars %}
|
||||
SAVE_VARIABLE VARIABLE={var} VALUE=0
|
||||
SAVE_VARIABLE VARIABLE={var} VALUE=0
|
||||
{% endfor %}
|
||||
SAVE_VARIABLE VARIABLE=was_interrupted VALUE=False
|
||||
|
||||
@ -1164,9 +1180,9 @@ gcode:
|
||||
{% set park_dz = client.custom_park_dz|default(2.0)|abs %}
|
||||
RESPOND TYPE=command MSG="action:prompt_end"
|
||||
SET_GCODE_OFFSET Z=0 MOVE=0
|
||||
{% set z_height = params.Z_HEIGHT|default(sv.power_resume_z)|float %}
|
||||
{% set is_paused = sv.power_loss_paused|default(False) %}
|
||||
{% set last_file = params.GCODE_FILE|default(sv.last_file)|string %}
|
||||
{% set filepath = params.GCODE_FILE|default(sv.filepath)|string %}
|
||||
{% set last_file = filepath.split('/')[-1] %}
|
||||
{% set hotend = sv.power_resume_extruder|default("extruder")%}
|
||||
{% set z_offset = sv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set z_offset_total = park_dz if is_paused else 0 %}
|
||||
@ -1176,7 +1192,7 @@ gcode:
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_z ENABLE=1
|
||||
G4 P300
|
||||
M118 Recovery in progress, please wait
|
||||
RUN_SHELL_COMMAND CMD=_POWER_LOSS_RECOVERY PARAMS="{z_height} \"{last_file}\" \"{z_offset_total}\""
|
||||
RUN_SHELL_COMMAND CMD=_POWER_LOSS_RECOVERY PARAMS="{z_offset_total}"
|
||||
SDCARD_PRINT_FILE FILENAME=.plr/"{last_file}"
|
||||
SAVE_VARIABLE VARIABLE=was_interrupted VALUE=False
|
||||
|
||||
|
32
printer_config/module/door_detect.cfg
Normal file
32
printer_config/module/door_detect.cfg
Normal file
@ -0,0 +1,32 @@
|
||||
[gcode_button _door_detection]
|
||||
pin: DOOR_PIN
|
||||
press_gcode:
|
||||
release_gcode:
|
||||
{% set sv = printer.save_variables.variables %}
|
||||
{% set door_function = sv.door_detect|default("Disabled") %}
|
||||
{% if door_function != "Disabled" %}
|
||||
M118 Printer door is opening!
|
||||
{% endif %}
|
||||
_DOOR_DETECTION_HANDLE STATUS='open'
|
||||
|
||||
[gcode_macro _DOOR_DETECTION_HANDLE]
|
||||
gcode:
|
||||
{% set sv = printer.save_variables.variables %}
|
||||
{% set door_function = sv.door_detect|default("Disabled") %}
|
||||
{% set status = params.STATUS|default("close") %}
|
||||
{% set printing_state = printer.print_stats.state %}
|
||||
{% if status=='open' and printing_state == 'printing' %}
|
||||
{% if door_function == 'Emergency Stop' %}
|
||||
M112
|
||||
{% elif door_function == 'Pause Print' %}
|
||||
PAUSE
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro _DOOR_START_PRINT_BASE]
|
||||
description: Call handle door is open when starting to print
|
||||
gcode:
|
||||
RESPOND TYPE=command MSG="action:prompt_begin"
|
||||
RESPOND TYPE=command MSG="action:prompt_text Printer door is opened. Please close the door and then start printing."
|
||||
RESPOND TYPE=command MSG="action:prompt_footer_button Ok|RESPOND TYPE=command MSG=action:prompt_end"
|
||||
RESPOND TYPE=command MSG="action:prompt_show"
|
Loading…
x
Reference in New Issue
Block a user