Merge branch 'develop'

This commit is contained in:
张开科 2024-09-07 17:22:24 +08:00
commit da791f9d98
7 changed files with 1434 additions and 647 deletions

View File

@ -0,0 +1,526 @@
# This is a configuration file for the Creatbot D1000.
[include mainsail.cfg]
[virtual_sdcard]
path: ~/printer_data/gcodes
on_error_gcode: CANCEL_PRINT
[save_variables]
filename: ~/printer_data/config/config_variables.cfg
[exclude_object]
[gcode_arcs]
resolution: 1.0
[force_move]
enable_force_move: True
[idle_timeout]
gcode:
{% if printer.webhooks.state|lower == 'ready' %}
{% if printer.pause_resume.is_paused|lower == 'false' %}
TURN_OFF_HEATERS
{% endif %}
{% endif %}
timeout: 1800 # 0.5 hour timeout
# F446 MotherBoard ID
[mcu]
canbus_uuid:000000000010
canbus_interface: can0
[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 5000
max_z_velocity: 10
max_z_accel: 100
square_corner_velocity: 2.5
[bed_mesh]
speed: 300
horizontal_move_z: 5
mesh_min: 40,60
mesh_max: 1000, 1000
probe_count: 6,6
mesh_pps: 2,2
algorithm: bicubic
bicubic_tension: 0.2
[stepper_x]
step_pin: PD1
dir_pin: PD0
enable_pin: !PA15
rotation_distance: 75
microsteps: 100
full_steps_per_rotation: 200
position_min: 0
position_endstop: 0
position_max: 1000
homing_speed: 100
homing_retract_speed: 50
second_homing_speed: 5
homing_retract_dist: 10
# homing_positive_dir: true
[stepper_y]
step_pin: PD4
dir_pin: !PD3
enable_pin: !PD2
rotation_distance: 75
microsteps: 40
full_steps_per_rotation: 200
gear_ratio: 2.5:1
endstop_pin: PC11
position_min: 0
position_endstop: 0
position_max: 1000
homing_speed: 100
homing_retract_speed: 50
second_homing_speed: 10
homing_retract_dist: 10
# homing_positive_dir: true
[stepper_z]
step_pin: PD7
dir_pin: PD6
enable_pin: !PD5
rotation_distance: 5
gear_ratio: 3:1
microsteps: 16
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
position_max: 1000
position_min: -4
homing_speed: 10
second_homing_speed: 1
homing_retract_dist: 2.0
[heater_bed]
heater_pin: PD12
sensor_type: Generic 3950
sensor_pin: PC0
max_power: 1.0
min_temp: 0
max_temp: 100
# control: pid
# pid_kp: 17.22
# pid_ki: 0.9
# pid_kd: 218.61
[verify_heater heater_bed]
max_error: 20
hysteresis: 5
check_gain_time: 120
heating_gain: 2
[heater_generic chamber]
heater_pin:PD15
max_power:1.0
sensor_type: Generic 3950
sensor_pin:PC3
min_temp: 0
max_temp: 60
pwm_cycle_time: 0.3
# control: pid
# pid_kp: 30.68
# pid_ki: 0.21
# pid_kd: 0
[verify_heater chamber]
max_error: 120
hysteresis: 5
check_gain_time:300
heating_gain: 1
[fan_generic Air_filter_fan]
pin: PC8
max_power: 1.0
shutdown_speed: 0.0
kick_start_time: 1.0
off_below: 0.10
[filament_switch_sensor extruder]
pause_on_runout: True
runout_gcode:
event_delay: 3.0
pause_delay: 0.5
switch_pin: ^PC14
[filament_switch_sensor extruder1]
pause_on_runout: True
runout_gcode:
event_delay: 3.0
pause_delay: 0.5
switch_pin: ^PC15
# F072 nozzle ID
[mcu tool]
canbus_uuid: 000000000001
canbus_interface: can0
[stepper_x]
endstop_pin: tool:PC0
[adxl345]
spi_speed: 5000000
cs_pin: tool:PB12
spi_software_sclk_pin:tool:PB13
spi_software_mosi_pin:tool:PB15
spi_software_miso_pin:tool:PB14
rate: 3200
[resonance_tester]
accel_chip: adxl345
probe_points: 300, 300, 20
min_freq: 25
max_freq: 70
accel_per_hz: 100
hz_per_sec: 1
[fan]
pin:tool:PA10
kick_start_time: 0.5
off_below: 0.10
max_power: 1.0
[heater_fan Sink_fan_0]
pin:tool:PA8
max_power: 1.0
kick_start_time: 0.5
heater: extruder
off_below: 0.10
heater_temp: 100
[heater_fan Sink_fan_1]
pin:tool:PA9
max_power: 1.0
kick_start_time: 0.5
heater: extruder1
off_below: 0.10
heater_temp: 100
[extruder]
sensor_type: MAX31855
sensor_pin: tool:PD2
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
[verify_heater extruder]
max_error: 20
check_gain_time: 60
hysteresis: 10
heating_gain: 1
[extruder]
step_pin: tool:PB1
dir_pin: tool:PB2
enable_pin: !tool:PB0
microsteps: 16
full_steps_per_rotation: 200
rotation_distance:22.9116807962642578993
gear_ratio: 48:19
nozzle_diameter: 0.8
filament_diameter: 1.750
max_extrude_only_distance: 500.0
max_extrude_only_velocity: 60.0
max_extrude_only_accel: 1000.0
max_extrude_cross_section:5
heater_pin: tool:PC6
max_power: 1.0
min_temp: 0
max_temp: 450
min_extrude_temp: 180
pressure_advance: 0.03
pressure_advance_smooth_time:0.040
# control = pid
# pid_kp = 23.904
# pid_ki = 1.476
# pid_kd = 96.810
[tmc5160 extruder]
cs_pin:tool:PB7
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
run_current: 0.8
interpolate: False
sense_resistor: 0.075
stealthchop_threshold: 0
[extruder1]
sensor_type: MAX31855
sensor_pin: tool:PC12
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
[verify_heater extruder1]
max_error: 20
check_gain_time: 60
hysteresis: 10
heating_gain: 1
[extruder1]
step_pin: tool:PC4
dir_pin: tool:PA7
enable_pin: !tool:PC5
microsteps: 16
full_steps_per_rotation: 200
rotation_distance: 22.9116807962642578993
gear_ratio: 48:19
nozzle_diameter: 0.8
filament_diameter: 1.750
max_extrude_only_distance: 500.0
max_extrude_only_velocity: 60.0
max_extrude_only_accel: 1000.0
max_extrude_cross_section:5
heater_pin: tool:PC7
max_power: 1.0
min_temp: 0
max_temp: 450
min_extrude_temp: 180
pressure_advance: 0.032
pressure_advance_smooth_time:0.040
# control = pid
# pid_kp = 23.904
# pid_ki = 1.476
# pid_kd = 96.810
[tmc5160 extruder1]
cs_pin:tool:PC11
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
run_current: 0.8
interpolate: False
sense_resistor: 0.075
stealthchop_threshold: 0
[probe]
pin: !tool:PC2
x_offset: 36
y_offset: 59
#z_offset: 4
speed: 5.0
samples: 3
samples_result: median
sample_retract_dist: 2.0
samples_tolerance: 0.05
samples_tolerance_retries: 3
deactivate_on_each_sample: False
activate_gcode: PROBE_SERVO_OPEN
deactivate_gcode: PROBE_SERVO_CLOSE
[servo probe_servo]
pin: tool:PC8
maximum_servo_angle: 180
minimum_pulse_width: 0.000900
maximum_pulse_width: 0.002100
initial_angle: 160
# initial_pulse_width:
[servo switch_nozzle]
pin: tool:PC9
maximum_servo_angle: 270
minimum_pulse_width: 0.000512
maximum_pulse_width: 0.002528
initial_angle: 135
# initial_pulse_width:
[safe_z_home]
home_xy_position: 500,500
speed:100
z_hop:5
z_hop_speed: 10
[gcode_macro T0]
gcode:
SET_SERVO SERVO=switch_nozzle angle=135
G4 P500
SET_GCODE_OFFSET Z=0
SET_GCODE_OFFSET Y=0
SET_GCODE_OFFSET X=0
SET_SERVO SERVO=switch_nozzle angle=45
ACTIVATE_EXTRUDER EXTRUDER=extruder
[gcode_macro T1]
gcode:
{% set sv = printer.save_variables.variables %}
{% set x_offset = sv.dual_x_offset|default(60)|float %}
{% set y_offset = sv.dual_y_offset|default(0)|float %}
{% set z_offset = sv.dual_z_offset|default(0)|float %}
SET_SERVO SERVO=switch_nozzle angle=135
G4 P500
SET_GCODE_OFFSET Z={z_offset}
SET_GCODE_OFFSET Y={y_offset}
SET_GCODE_OFFSET X={x_offset}
SET_SERVO SERVO=switch_nozzle angle=225
ACTIVATE_EXTRUDER EXTRUDER=extruder1
[gcode_macro PROBE_SERVO_OPEN]
gcode:
SET_SERVO SERVO=probe_servo angle=15
G4 P1000
[gcode_macro PROBE_SERVO_CLOSE]
gcode:
SET_SERVO SERVO=probe_servo angle=130
[gcode_macro START_PRINT]
gcode:
{% set BED_TEMP = params.BED|default(0)|float %}
{% set EXTRUDER_TEMP = params.EXTRUDER|default(0)|float %}
{% set EXTRUDER_TEMP1 = params.EXTRUDER1|default(0)|float %}
{% set CHAMBER_TEMP = params.CHAMBER|default(0)|float %}
{% if params.BED is defined %}
M140 S{BED_TEMP}
{% endif %}
{% if params.EXTRUDER is defined %}
M104 T0 S{EXTRUDER_TEMP}
{% endif %}
{% if params.EXTRUDER1 is defined %}
M104 T1 S{EXTRUDER_TEMP1}
{% endif %}
{% if params.CHAMBER is defined %}
M141 S{CHAMBER_TEMP}
{% endif %}
G28
#BED_MESH_CALIBRATE
{% if BED_TEMP != 0 %}
M190 S{BED_TEMP}
{% endif %}
{% if EXTRUDER_TEMP != 0 %}
M109 T0 S{EXTRUDER_TEMP}
{% endif %}
{% if EXTRUDER_TEMP1 != 0 %}
M109 T1 S{EXTRUDER_TEMP1}
{% endif %}
{% if CHAMBER_TEMP != 0 %}
M191 S{CHAMBER_TEMP}
{% endif %}
G92 E0
M117 Printing star...
[gcode_macro END_PRINT]
gcode:
M400
G92 E0
G1 E-10.0 F3600
G91
G0 Z1.00 X20.0 Y20.0 F6000
TURN_OFF_HEATERS
M107
G1 Z2 F3000
G90
G0 X590 Y590 F3600
# BED_MESH_CLEAR
[gcode_macro LOAD_FILAMENT]
variable_load_distance: 120
variable_purge_distance: 25
gcode:
{% set speed = params.SPEED|default(200) %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 20 %}
SAVE_GCODE_STATE NAME=load_state
G91
G92 E0
G1 E{load_distance} F{max_velocity} # fast-load
G1 E{purge_distance} F{speed} # purge
RESTORE_GCODE_STATE NAME=load_state
[gcode_macro UNLOAD_FILAMENT]
variable_unload_distance: 120
variable_purge_distance: 25
gcode:
{% set speed = params.SPEED|default(200) %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 20 %}
SAVE_GCODE_STATE NAME=unload_state
G91
G92 E0
G1 E{purge_distance} F{speed} # purge
G1 E-{unload_distance} F{max_velocity} # fast-unload
RESTORE_GCODE_STATE NAME=unload_state
[gcode_macro SET_X_OFFSET]
gcode:
{% set svv = printer.save_variables.variables %}
{% set dual_x_offset=params.S|default(-60)|float %}
SAVE_VARIABLE VARIABLE=dual_x_offset VALUE={dual_x_offset}
[gcode_macro SET_Y_OFFSET]
gcode:
{% set svv = printer.save_variables.variables %}
{% set dual_y_offset=params.S|default(0)|float %}
SAVE_VARIABLE VARIABLE=dual_y_offset VALUE={dual_y_offset}
[gcode_macro SET_Z_OFFSET]
gcode:
{% set svv = printer.save_variables.variables %}
{% set dual_z_offset=params.S|default(0)|float %}
SAVE_VARIABLE VARIABLE=dual_z_offset VALUE={dual_z_offset}
[gcode_macro _ACTIVATE_DEFAULT_EXTRUDER]
gcode:
{% if printer.toolhead.extruder == 'extruder' %}
T0
{% elif printer.toolhead.extruder == 'extruder1' %}
T1
{% endif %}
[gcode_macro G28]
rename_existing: C28
gcode:
{% set homing_cmd = ''%}
{% set do_x = 'X' in params|string %}
{% set do_y = 'Y' in params|string %}
{% set do_z = 'Z' in params|string %}
{% if do_x %}
{% set homing_cmd = 'X ' %}
{% endif %}
{% if do_y %}
{% set homing_cmd = homing_cmd + 'Y ' %}
{% endif %}
{% if do_z %}
{% 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 %}
{% set homing_cmd = homing_cmd + 'Z' %}
{% endif %}
{% endif %}
{% if not homing_cmd %}
C28
_ACTIVATE_DEFAULT_EXTRUDER
{% else %}
C28 {homing_cmd}
{% if 'X' in homing_cmd %}
_ACTIVATE_DEFAULT_EXTRUDER
{% endif %}
{% endif %}
[gcode_macro M141]
gcode:
{% set s = params.S|default(0)|float %}
{% if params.S is defined %}
SET_HEATER_TEMPERATURE HEATER=chamber target={s|int}
{% endif %}
[gcode_macro M191]
gcode:
{% set s = params.S|default(0)|float %}
{% if params.S is defined %}
M141 S{s}
{% if s != 0 %}
TEMPERATURE_WAIT SENSOR=chamber MINIMUM={s-1} MAXIMUM={s+2}
{% endif %}
{% endif %}
[gcode_macro M84]
rename_existing: C84
gcode:
C84
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1

View File

@ -0,0 +1,28 @@
[include base.cfg]
[extruder]
control = pid
pid_kp = 26.414
pid_ki = 1.334
pid_kd = 130.750
[extruder1]
control = pid
pid_kp = 26.414
pid_ki = 1.334
pid_kd = 130.750
[heater_bed]
control = pid
pid_kp = 52.123
pid_ki = 0.922
pid_kd = 736.891
[heater_generic chamber]
control: pid
pid_kp: 30.68
pid_ki: 0.21
pid_kd: 0
[probe]
z_offset: 4

View File

@ -1,416 +0,0 @@
# This is a configuration file for the Creatbot motherboard.
[include D600Pro2_Head.cfg]
[mcu]
canbus_uuid:000000000010
canbus_interface: can0
[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 5000
max_z_velocity: 10
max_z_accel: 100
square_corner_velocity: 2.5
[bed_mesh]
speed: 300
horizontal_move_z: 3
mesh_min: 40,60
mesh_max: 600, 600
probe_count: 6,6
mesh_pps: 2,2
algorithm: bicubic
bicubic_tension: 0.2
horizontal_move_z: 10
[stepper_x]
step_pin: PD1
dir_pin: PD0
enable_pin: !PA15
rotation_distance: 75
microsteps: 100
full_steps_per_rotation: 200
position_min: 0
position_endstop: 0
position_max: 600
homing_speed: 100
homing_retract_dist: 10
# homing_positive_dir: true
[stepper_y]
step_pin: PD4
dir_pin: !PD3
enable_pin: !PD2
rotation_distance: 75
microsteps: 40
full_steps_per_rotation: 200
gear_ratio: 2.5:1
endstop_pin: PC11
position_min: 0
position_endstop: 0
position_max: 600
homing_speed: 100
homing_retract_dist: 10
# homing_positive_dir: true
[stepper_z]
step_pin: PD7
dir_pin: PD6
enable_pin: !PD5
rotation_distance: 5
gear_ratio: 2.5:1
microsteps: 16
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
position_max: 600
position_min: 0
homing_speed: 5
second_homing_speed: 1
homing_retract_dist: 2.0
[heater_bed]
heater_pin: PD12
sensor_type: Generic 3950
sensor_pin: PC0
max_power: 1.0
min_temp: -12
max_temp: 110
control: pid
pid_kp: 17.22
pid_ki: 0.9
pid_kd: 218.61
[verify_heater heater_bed]
max_error: 20
hysteresis: 5
check_gain_time: 120
heating_gain: 2
[heater_generic chamber]
heater_pin:PD15
max_power:1.0
sensor_type:Generic 3950
sensor_pin:PC3
min_temp:-238
max_temp:80
control = pid
pid_kp: 30.68
pid_ki: 0.21
pid_kd: 0
[verify_heater chamber]
max_error: 120
hysteresis: 5
check_gain_time:300
heating_gain: 1
[fan_generic Air_filter_fan]
pin: PC8
max_power: 1.0
shutdown_speed: 0.0
kick_start_time: 1.0
off_below: 0.10
[filament_switch_sensor extruder]
pause_on_runout: True
runout_gcode:
event_delay: 3.0
pause_delay: 0.5
switch_pin:PC14
[filament_switch_sensor extruder1]
pause_on_runout: True
runout_gcode:
event_delay: 3.0
pause_delay: 0.5
switch_pin:PC15
[mcu tool]
canbus_uuid: 000000000001
canbus_interface: can0
[stepper_x]
endstop_pin: tool:PC0
[adxl345]
spi_speed: 5000000
cs_pin: tool:PB12
spi_software_sclk_pin:tool:PB13
spi_software_mosi_pin:tool:PB15
spi_software_miso_pin:tool:PB14
rate: 3200
[resonance_tester]
accel_chip: adxl345
probe_points: 300, 300, 20
min_freq: 25
max_freq: 70
accel_per_hz: 100
hz_per_sec: 1
[fan]
pin:tool:PA10
kick_start_time: 0.5
off_below: 0.10
max_power: 1.0
[heater_fan Sink_fan_0]
pin:tool:PA8
max_power: 1.0
kick_start_time: 0.5
heater: extruder
off_below: 0.10
heater_temp: 100
[heater_fan Sink_fan_1]
pin:tool:PA9
max_power: 1.0
kick_start_time: 0.5
heater: extruder1
off_below: 0.10
heater_temp: 100
[extruder]
sensor_type: MAX31855
sensor_pin: tool:PD2
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
[verify_heater extruder]
max_error: 20
check_gain_time: 30
hysteresis: 10
heating_gain: 2
[extruder]
step_pin: tool:PB1
dir_pin: tool:PB2
enable_pin: !tool:PB0
microsteps: 16
full_steps_per_rotation: 200
rotation_distance:22.9116807962642578993
gear_ratio: 48:19
nozzle_diameter: 1.00
filament_diameter: 1.750
max_extrude_only_distance: 500.0
max_extrude_only_velocity: 60.0
max_extrude_only_accel: 1000.0
max_extrude_cross_section:5
heater_pin: tool:PC6
max_power: 1.0
min_temp: -235
max_temp: 450
min_extrude_temp: 180
pressure_advance: 0.03
pressure_advance_smooth_time:0.040
control = pid
pid_kp = 23.904
pid_ki = 1.476
pid_kd = 96.810
[tmc5160 extruder]
cs_pin:tool:PB7
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
run_current: 0.5
interpolate: False
sense_resistor: 0.075
stealthchop_threshold: 0
[extruder1]
sensor_type: MAX31855
sensor_pin: tool:PC12
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
[verify_heater extruder1]
max_error: 20
check_gain_time: 30
hysteresis: 10
heating_gain: 2
[extruder1]
step_pin: tool:PC4
dir_pin: tool:PA7
enable_pin: !tool:PC5
microsteps: 16
full_steps_per_rotation: 200
rotation_distance: 22.9116807962642578993
gear_ratio: 48:19
nozzle_diameter: 0.400
filament_diameter: 1.750
max_extrude_only_distance: 500.0
max_extrude_only_velocity: 60.0
max_extrude_only_accel: 1000.0
heater_pin: tool:PC7
max_power: 1.0
min_temp: -12
max_temp: 450
min_extrude_temp: 180
pressure_advance: 0.032
pressure_advance_smooth_time:0.040
control = pid
pid_kp = 23.904
pid_ki = 1.476
pid_kd = 96.810
[tmc5160 extruder1]
cs_pin:tool:PC11
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
run_current: 0.5
interpolate: False
sense_resistor: 0.075
stealthchop_threshold: 0
[probe]
pin: !tool:PC2
x_offset: 36
y_offset: 59
#z_offset: 1.699
#speed: 10.0
#samples: 3
#samples_result: median
#sample_retract_dist: 4.0
#samples_tolerance: 0.007
#samples_tolerance_retries: 3
deactivate_on_each_sample: False
activate_gcode: probe_open
deactivate_gcode: probe_close
[safe_z_home]
home_xy_position:300,300
speed:200
z_hop:5
[servo probe_servo]
pin: tool:PC8
maximum_servo_angle: 180
minimum_pulse_width: 0.000900
maximum_pulse_width: 0.002100
initial_angle: 160
# initial_pulse_width:
[servo switch_nozzle]
pin: tool:PC9
maximum_servo_angle: 270
minimum_pulse_width: 0.000512
maximum_pulse_width: 0.002528
initial_angle: 135
# initial_pulse_width:
[gcode_macro M141]
gcode:
{% set s = params.S|default(0)|float %}
SET_HEATER_TEMPERATURE HEATER=chamber target={s}
[gcode_macro T0]
gcode:
SET_SERVO SERVO=switch_nozzle angle=135
G4 P500
SET_GCODE_OFFSET Z=0 MOVE=1 MOVE_SPEED=200
SET_GCODE_OFFSET Y=0 MOVE=1 MOVE_SPEED=200
SET_GCODE_OFFSET X=0 MOVE=1 MOVE_SPEED=200
SET_SERVO SERVO=switch_nozzle angle=45
ACTIVATE_EXTRUDER EXTRUDER=extruder
[gcode_macro T1]
gcode:
SET_SERVO SERVO=switch_nozzle angle=135
G4 P500
SET_GCODE_OFFSET Z=0.918228 MOVE=1 MOVE_SPEED=200
SET_GCODE_OFFSET Y=0.433750 MOVE=1 MOVE_SPEED=200
SET_GCODE_OFFSET X=-59.227500 MOVE=1 MOVE_SPEED=200
SET_SERVO SERVO=switch_nozzle angle=225
ACTIVATE_EXTRUDER EXTRUDER=extruder1
[gcode_macro probe_open]
gcode:
SET_SERVO SERVO=probe_servo angle=15
G4 P1000
[gcode_macro probe_close]
gcode:
SET_SERVO SERVO=probe_servo angle=130
[gcode_arcs]
resolution: 1.0
[gcode_macro PRINT_START]
gcode:
{% set BED_TEMP = params.BED|float %}
{% set EXTRUDER_TEMP = params.EXTRUDER|float %}
{% set EXTRUDER_TEMP1 = params.EXTRUDER1|default(0)|float %}
{% set CHAMBER_TEMP = params.CHAMBER|default(0)|float %}
M140 S{BED_TEMP}
M104 S{EXTRUDER_TEMP}
M104 T1 S{EXTRUDER_TEMP1}
M141 S{CHAMBER_TEMP}
T0
G28
BED_MESH_CALIBRATE
M109 S{EXTRUDER_TEMP}
M109 T1 S{EXTRUDER_TEMP1}
G92 E0
M117 Printing star...
[gcode_macro PRINT_END]
gcode:
M400
G92 E0
G1 E-10.0 F3600
G91
G0 Z1.00 X20.0 Y20.0 F6000
TURN_OFF_HEATERS
M107
G1 Z2 F3000
G90
G0 X590 Y590 F3600
BED_MESH_CLEAR
[gcode_macro M109]
rename_existing: M109109
gcode:
{% set s = params.S|float %}
M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %}
{% if s != 0 %}
TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1}
{% endif %}
[gcode_macro LOAD_FILAMENT]
variable_load_distance: 100
variable_purge_distance: 25
gcode:
{% set speed = params.SPEED|default(200) %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 60 %}
SAVE_GCODE_STATE NAME=load_state
G91
G92 E0
G1 E{load_distance} F{max_velocity} # fast-load
G1 E{purge_distance} F{speed} # purge
RESTORE_GCODE_STATE NAME=load_state
[gcode_macro UNLOAD_FILAMENT]
variable_unload_distance: 100
variable_purge_distance: 25
gcode:
{% set speed = params.SPEED|default(200) %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 60 %}
SAVE_GCODE_STATE NAME=unload_state
G91
G92 E0
G1 E{purge_distance} F{speed} # purge
G1 E-{unload_distance} F{max_velocity} # fast-unload
RESTORE_GCODE_STATE NAME=unload_state

View File

@ -0,0 +1,526 @@
# This is a configuration file for the Creatbot D600Pro2.
[include mainsail.cfg]
[virtual_sdcard]
path: ~/printer_data/gcodes
on_error_gcode: CANCEL_PRINT
[save_variables]
filename: ~/printer_data/config/config_variables.cfg
[exclude_object]
[gcode_arcs]
resolution: 1.0
[force_move]
enable_force_move: True
[idle_timeout]
gcode:
{% if printer.webhooks.state|lower == 'ready' %}
{% if printer.pause_resume.is_paused|lower == 'false' %}
TURN_OFF_HEATERS
{% endif %}
{% endif %}
timeout: 1800 # 0.5 hour timeout
# F446 MotherBoard ID
[mcu]
canbus_uuid:000000000010
canbus_interface: can0
[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 5000
max_z_velocity: 10
max_z_accel: 100
square_corner_velocity: 2.5
[bed_mesh]
speed: 300
horizontal_move_z: 5
mesh_min: 40,60
mesh_max: 600, 600
probe_count: 6,6
mesh_pps: 2,2
algorithm: bicubic
bicubic_tension: 0.2
[stepper_x]
step_pin: PD1
dir_pin: PD0
enable_pin: !PA15
rotation_distance: 75
microsteps: 100
full_steps_per_rotation: 200
position_min: 0
position_endstop: 0
position_max: 600
homing_speed: 100
homing_retract_speed: 50
second_homing_speed: 5
homing_retract_dist: 10
# homing_positive_dir: true
[stepper_y]
step_pin: PD4
dir_pin: !PD3
enable_pin: !PD2
rotation_distance: 75
microsteps: 40
full_steps_per_rotation: 200
gear_ratio: 2.5:1
endstop_pin: PC11
position_min: 0
position_endstop: 0
position_max: 600
homing_speed: 100
homing_retract_speed: 50
second_homing_speed: 10
homing_retract_dist: 10
# homing_positive_dir: true
[stepper_z]
step_pin: PD7
dir_pin: PD6
enable_pin: !PD5
rotation_distance: 5
gear_ratio: 3:1
microsteps: 16
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
position_max: 600
position_min: -4
homing_speed: 10
second_homing_speed: 1
homing_retract_dist: 2.0
[heater_bed]
heater_pin: PD12
sensor_type: Generic 3950
sensor_pin: PC0
max_power: 1.0
min_temp: 0
max_temp: 100
# control: pid
# pid_kp: 59.368
# pid_ki: 1.656
# pid_kd: 532.083
[verify_heater heater_bed]
max_error: 20
hysteresis: 5
check_gain_time: 120
heating_gain: 2
[heater_generic chamber]
heater_pin:PD15
max_power:1.0
sensor_type: Generic 3950
sensor_pin:PC3
min_temp: 0
max_temp: 70
pwm_cycle_time: 0.3
# control: pid
# pid_kp: 30.68
# pid_ki: 0.21
# pid_kd: 0
[verify_heater chamber]
max_error: 120
hysteresis: 5
check_gain_time:300
heating_gain: 1
[fan_generic Air_filter_fan]
pin: PC8
max_power: 1.0
shutdown_speed: 0.0
kick_start_time: 1.0
off_below: 0.10
[filament_switch_sensor extruder]
pause_on_runout: True
runout_gcode:
event_delay: 3.0
pause_delay: 0.5
switch_pin: ^PC14
[filament_switch_sensor extruder1]
pause_on_runout: True
runout_gcode:
event_delay: 3.0
pause_delay: 0.5
switch_pin: ^PC15
# F072 nozzle ID
[mcu tool]
canbus_uuid: 000000000001
canbus_interface: can0
[stepper_x]
endstop_pin: tool:PC0
[adxl345]
spi_speed: 5000000
cs_pin: tool:PB12
spi_software_sclk_pin:tool:PB13
spi_software_mosi_pin:tool:PB15
spi_software_miso_pin:tool:PB14
rate: 3200
[resonance_tester]
accel_chip: adxl345
probe_points: 300, 300, 20
min_freq: 25
max_freq: 70
accel_per_hz: 100
hz_per_sec: 1
[fan]
pin:tool:PA10
kick_start_time: 0.5
off_below: 0.10
max_power: 1.0
[heater_fan Sink_fan_0]
pin:tool:PA8
max_power: 1.0
kick_start_time: 0.5
heater: extruder
off_below: 0.10
heater_temp: 100
[heater_fan Sink_fan_1]
pin:tool:PA9
max_power: 1.0
kick_start_time: 0.5
heater: extruder1
off_below: 0.10
heater_temp: 100
[extruder]
sensor_type: MAX31855
sensor_pin: tool:PD2
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
[verify_heater extruder]
max_error: 20
check_gain_time: 60
hysteresis: 10
heating_gain: 1
[extruder]
step_pin: tool:PB1
dir_pin: tool:PB2
enable_pin: !tool:PB0
microsteps: 16
full_steps_per_rotation: 200
rotation_distance:22.9116807962642578993
gear_ratio: 48:19
nozzle_diameter: 0.6
filament_diameter: 1.750
max_extrude_only_distance: 500.0
max_extrude_only_velocity: 60.0
max_extrude_only_accel: 1000.0
max_extrude_cross_section:5
heater_pin: tool:PC6
max_power: 1.0
min_temp: 0
max_temp: 450
min_extrude_temp: 180
pressure_advance: 0.03
pressure_advance_smooth_time:0.040
# control = pid
# pid_kp = 24.737
# pid_ki = 1.137
# pid_kd = 134.508
[tmc5160 extruder]
cs_pin:tool:PB7
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
run_current: 0.8
interpolate: False
sense_resistor: 0.075
stealthchop_threshold: 0
[extruder1]
sensor_type: MAX31855
sensor_pin: tool:PC12
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
[verify_heater extruder1]
max_error: 20
check_gain_time: 60
hysteresis: 10
heating_gain: 1
[extruder1]
step_pin: tool:PC4
dir_pin: tool:PA7
enable_pin: !tool:PC5
microsteps: 16
full_steps_per_rotation: 200
rotation_distance: 22.9116807962642578993
gear_ratio: 48:19
nozzle_diameter: 0.6
filament_diameter: 1.750
max_extrude_only_distance: 500.0
max_extrude_only_velocity: 60.0
max_extrude_only_accel: 1000.0
max_extrude_cross_section:5
heater_pin: tool:PC7
max_power: 1.0
min_temp: 0
max_temp: 450
min_extrude_temp: 180
pressure_advance: 0.032
pressure_advance_smooth_time:0.040
# control = pid
# pid_kp = 24.737
# pid_ki = 1.137
# pid_kd = 134.508
[tmc5160 extruder1]
cs_pin:tool:PC11
spi_software_sclk_pin:tool:PB3
spi_software_mosi_pin:tool:PB5
spi_software_miso_pin:tool:PB4
run_current: 0.8
interpolate: False
sense_resistor: 0.075
stealthchop_threshold: 0
[probe]
pin: !tool:PC2
x_offset: 36
y_offset: 59
#z_offset: 4
speed: 5.0
samples: 3
samples_result: median
sample_retract_dist: 2.0
samples_tolerance: 0.05
samples_tolerance_retries: 3
deactivate_on_each_sample: False
activate_gcode: PROBE_SERVO_OPEN
deactivate_gcode: PROBE_SERVO_CLOSE
[servo probe_servo]
pin: tool:PC8
maximum_servo_angle: 180
minimum_pulse_width: 0.000900
maximum_pulse_width: 0.002100
initial_angle: 160
# initial_pulse_width:
[servo switch_nozzle]
pin: tool:PC9
maximum_servo_angle: 270
minimum_pulse_width: 0.000512
maximum_pulse_width: 0.002528
initial_angle: 135
# initial_pulse_width:
[safe_z_home]
home_xy_position: 500,500
speed:100
z_hop:5
z_hop_speed: 10
[gcode_macro T0]
gcode:
SET_SERVO SERVO=switch_nozzle angle=135
G4 P500
SET_GCODE_OFFSET Z=0
SET_GCODE_OFFSET Y=0
SET_GCODE_OFFSET X=0
SET_SERVO SERVO=switch_nozzle angle=45
ACTIVATE_EXTRUDER EXTRUDER=extruder
[gcode_macro T1]
gcode:
{% set sv = printer.save_variables.variables %}
{% set x_offset = sv.dual_x_offset|default(60)|float %}
{% set y_offset = sv.dual_y_offset|default(0)|float %}
{% set z_offset = sv.dual_z_offset|default(0)|float %}
SET_SERVO SERVO=switch_nozzle angle=135
G4 P500
SET_GCODE_OFFSET Z={z_offset}
SET_GCODE_OFFSET Y={y_offset}
SET_GCODE_OFFSET X={x_offset}
SET_SERVO SERVO=switch_nozzle angle=225
ACTIVATE_EXTRUDER EXTRUDER=extruder1
[gcode_macro PROBE_SERVO_OPEN]
gcode:
SET_SERVO SERVO=probe_servo angle=15
G4 P1000
[gcode_macro PROBE_SERVO_CLOSE]
gcode:
SET_SERVO SERVO=probe_servo angle=130
[gcode_macro START_PRINT]
gcode:
{% set BED_TEMP = params.BED|default(0)|float %}
{% set EXTRUDER_TEMP = params.EXTRUDER|default(0)|float %}
{% set EXTRUDER_TEMP1 = params.EXTRUDER1|default(0)|float %}
{% set CHAMBER_TEMP = params.CHAMBER|default(0)|float %}
{% if params.BED is defined %}
M140 S{BED_TEMP}
{% endif %}
{% if params.EXTRUDER is defined %}
M104 T0 S{EXTRUDER_TEMP}
{% endif %}
{% if params.EXTRUDER1 is defined %}
M104 T1 S{EXTRUDER_TEMP1}
{% endif %}
{% if params.CHAMBER is defined %}
M141 S{CHAMBER_TEMP}
{% endif %}
G28
#BED_MESH_CALIBRATE
{% if BED_TEMP != 0 %}
M190 S{BED_TEMP}
{% endif %}
{% if EXTRUDER_TEMP != 0 %}
M109 T0 S{EXTRUDER_TEMP}
{% endif %}
{% if EXTRUDER_TEMP1 != 0 %}
M109 T1 S{EXTRUDER_TEMP1}
{% endif %}
{% if CHAMBER_TEMP != 0 %}
M191 S{CHAMBER_TEMP}
{% endif %}
G92 E0
M117 Printing star...
[gcode_macro END_PRINT]
gcode:
M400
G92 E0
G1 E-10.0 F3600
G91
G0 Z1.00 X20.0 Y20.0 F6000
TURN_OFF_HEATERS
M107
G1 Z2 F3000
G90
G0 X590 Y590 F3600
# BED_MESH_CLEAR
[gcode_macro LOAD_FILAMENT]
variable_load_distance: 120
variable_purge_distance: 25
gcode:
{% set speed = params.SPEED|default(200) %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 20 %}
SAVE_GCODE_STATE NAME=load_state
G91
G92 E0
G1 E{load_distance} F{max_velocity} # fast-load
G1 E{purge_distance} F{speed} # purge
RESTORE_GCODE_STATE NAME=load_state
[gcode_macro UNLOAD_FILAMENT]
variable_unload_distance: 120
variable_purge_distance: 25
gcode:
{% set speed = params.SPEED|default(200) %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 20 %}
SAVE_GCODE_STATE NAME=unload_state
G91
G92 E0
G1 E{purge_distance} F{speed} # purge
G1 E-{unload_distance} F{max_velocity} # fast-unload
RESTORE_GCODE_STATE NAME=unload_state
[gcode_macro SET_X_OFFSET]
gcode:
{% set svv = printer.save_variables.variables %}
{% set dual_x_offset=params.S|default(-60)|float %}
SAVE_VARIABLE VARIABLE=dual_x_offset VALUE={dual_x_offset}
[gcode_macro SET_Y_OFFSET]
gcode:
{% set svv = printer.save_variables.variables %}
{% set dual_y_offset=params.S|default(0)|float %}
SAVE_VARIABLE VARIABLE=dual_y_offset VALUE={dual_y_offset}
[gcode_macro SET_Z_OFFSET]
gcode:
{% set svv = printer.save_variables.variables %}
{% set dual_z_offset=params.S|default(0)|float %}
SAVE_VARIABLE VARIABLE=dual_z_offset VALUE={dual_z_offset}
[gcode_macro _ACTIVATE_DEFAULT_EXTRUDER]
gcode:
{% if printer.toolhead.extruder == 'extruder' %}
T0
{% elif printer.toolhead.extruder == 'extruder1' %}
T1
{% endif %}
[gcode_macro G28]
rename_existing: C28
gcode:
{% set homing_cmd = ''%}
{% set do_x = 'X' in params|string %}
{% set do_y = 'Y' in params|string %}
{% set do_z = 'Z' in params|string %}
{% if do_x %}
{% set homing_cmd = 'X ' %}
{% endif %}
{% if do_y %}
{% set homing_cmd = homing_cmd + 'Y ' %}
{% endif %}
{% if do_z %}
{% 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 %}
{% set homing_cmd = homing_cmd + 'Z' %}
{% endif %}
{% endif %}
{% if not homing_cmd %}
C28
_ACTIVATE_DEFAULT_EXTRUDER
{% else %}
C28 {homing_cmd}
{% if 'X' in homing_cmd %}
_ACTIVATE_DEFAULT_EXTRUDER
{% endif %}
{% endif %}
[gcode_macro M141]
gcode:
{% set s = params.S|default(0)|float %}
{% if params.S is defined %}
SET_HEATER_TEMPERATURE HEATER=chamber target={s|int}
{% endif %}
[gcode_macro M191]
gcode:
{% set s = params.S|default(0)|float %}
{% if params.S is defined %}
M141 S{s}
{% if s != 0 %}
TEMPERATURE_WAIT SENSOR=chamber MINIMUM={s-1} MAXIMUM={s+2}
{% endif %}
{% endif %}
[gcode_macro M84]
rename_existing: C84
gcode:
C84
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1

View File

@ -0,0 +1,28 @@
[include base.cfg]
[extruder]
control = pid
pid_kp = 39.960
pid_ki = 2.537
pid_kd = 157.344
[extruder1]
control = pid
pid_kp = 39.960
pid_ki = 2.537
pid_kd = 157.344
[heater_bed]
control = pid
pid_kp = 40.673
pid_ki = 0.837
pid_kd = 494.176
[heater_generic chamber]
control = pid
pid_kp = 59.529
pid_ki = 0.621
pid_kd = 1426.459
[probe]
z_offset: 4

View File

@ -1,12 +1,29 @@
# This is a configuration file for the Creatbot F430NX.
[include mainsail.cfg]
[virtual_sdcard]
path: /home/klipper/printer_data/gcodes
path: ~/printer_data/gcodes
on_error_gcode: CANCEL_PRINT
[save_variables]
filename: ~/printer_data/config/config_variables.cfg
[exclude_object]
[gcode_arcs]
resolution: 1.0
[force_move]
enable_force_move: True
[idle_timeout]
timeout: 1800
gcode:
{% if printer.webhooks.state|lower == 'ready' %}
{% if printer.pause_resume.is_paused|lower == 'false' %}
TURN_OFF_HEATERS
{% endif %}
{% endif %}
timeout: 1800 # 0.5 hour timeout
# F446 MotherBoard ID
[mcu]
@ -16,13 +33,13 @@ canbus_interface: can0
[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 5000
max_z_velocity: 8
max_accel: 3000
max_z_velocity: 10
max_z_accel: 100
square_corner_velocity: 4.0
square_corner_velocity: 5.0
[bed_mesh]
speed: 200
speed: 100
horizontal_move_z: 5
mesh_min: 34.6,17.4
mesh_max: 420, 300
@ -31,28 +48,26 @@ mesh_pps: 2,2
algorithm: bicubic
bicubic_tension: 0.2
[stepper_x]
step_pin: PD1
dir_pin: !PD0
enable_pin: !PA15
rotation_distance: 50.8
microsteps: 64
full_steps_per_rotation: 200
step_pin: PD1
dir_pin: !PD0
enable_pin: !PA15
rotation_distance: 50.8
microsteps: 64
full_steps_per_rotation: 200
endstop_pin: ^PC10
position_min: -10
position_endstop: 0
position_max: 420
homing_speed: 100
homing_retract_dist: 10
position_min: -20
position_endstop: -20
position_max: 475
homing_speed: 100
homing_retract_dist: 10
[tmc5160 stepper_x]
cs_pin: PE2
spi_software_sclk_pin: PB3
spi_software_mosi_pin: PB5
spi_software_miso_pin: PB4
run_current: 1.0
hold_current: 0.5
run_current: 1.0
interpolate: True
sense_resistor: 0.075
stealthchop_threshold: 200
@ -66,26 +81,23 @@ rotation_distance: 50.8
microsteps: 64
full_steps_per_rotation: 200
endstop_pin: ^PE7
position_endstop: 495
position_min: 75
position_max: 500
position_endstop: 475
position_min: 55
position_max: 475
homing_speed: 100
homing_retract_dist: 10
safe_distance: 20
safe_distance: 75
[tmc5160 dual_carriage]
cs_pin: PE8
spi_software_sclk_pin: PB3
spi_software_mosi_pin: PB5
spi_software_miso_pin: PB4
run_current: 1.0
hold_current: 0.5
run_current: 1.0
interpolate: True
sense_resistor: 0.075
stealthchop_threshold: 200
[stepper_y]
step_pin: PD4
dir_pin: !PD3
@ -95,7 +107,7 @@ microsteps: 128
full_steps_per_rotation: 200
gear_ratio: 1:1
endstop_pin: ^PC11
position_min: -10
position_min: 0
position_endstop: 0
position_max: 300
homing_speed: 60
@ -106,8 +118,7 @@ cs_pin: PE3
spi_software_sclk_pin: PB3
spi_software_mosi_pin: PB5
spi_software_miso_pin: PB4
run_current: 2.0
hold_current: 0.5
run_current: 2.3
interpolate: True
sense_resistor: 0.075
stealthchop_threshold: 200
@ -122,7 +133,7 @@ microsteps: 16
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
position_max: 300
position_min: 0
position_min: -4
homing_speed: 10
second_homing_speed: 1
homing_retract_dist: 2.0
@ -132,23 +143,22 @@ cs_pin: PE4
spi_software_sclk_pin: PB3
spi_software_mosi_pin: PB5
spi_software_miso_pin: PB4
run_current: 1.4
hold_current: 0.5
run_current: 0.8
interpolate: True
sense_resistor: 0.075
stealthchop_threshold: 10
stealthchop_threshold: 0
[heater_bed]
heater_pin: PD12
sensor_type: Generic 3950
sensor_pin: PC0
max_power: 1.0
min_temp: -235
max_temp: 160
control: pid
pid_kp: 74.000
pid_ki: 1.965
pid_kd: 696.525
min_temp: 0
max_temp: 150
# control: pid
# pid_kp: 40.673
# pid_ki: 0.837
# pid_kd: 494.176
[verify_heater heater_bed]
max_error: 20
@ -157,20 +167,22 @@ hysteresis: 5
heating_gain: 2
[heater_generic chamber]
heater_pin:PD15
max_power:1.0
sensor_type:Generic 3950
sensor_pin:PC3
min_temp:-238
max_temp:80
control: pid
pid_kp: 30.68
pid_ki: 0.21
pid_kd: 0
heater_pin: PD15
max_power: 1.0
sensor_type: Generic 3950
sensor_pin: PC3
min_temp: 0
max_temp: 70
# control: pid
# pid_kp: 30.68
# pid_ki: 0.21
# pid_kd: 0
[verify_heater chamber]
max_error: 20
hysteresis: 2
max_error: 120
hysteresis: 5
check_gain_time: 120
heating_gain: 1
[multi_pin fan]
pins: L_tool:PA10, R_tool:PA10
@ -188,12 +200,19 @@ max_power: 1.0
shutdown_speed: 0.0
kick_start_time: 1.0
[delayed_gcode INIT_LIGHT]
initial_duration:0.01
gcode:
{% set svv = printer.save_variables.variables %}
{% set luminance = svv.interior_lighting|default(0)|float %}
SET_LED LED=Interior_lighting WHITE={luminance} TRANSMIT=1 SYNC=0
[led Interior_lighting]
white_pin: PC7
cycle_time: 0.010
initial_WHITE: 1
initial_WHITE: 0
[neopixel Status_light]
[neopixel _Status_light]
pin: PB8
chain_count: 1
color_order: RGB
@ -201,24 +220,19 @@ initial_RED: 0.3
initial_GREEN: 0.3
initial_BLUE: 0.3
[safe_z_home]
home_xy_position:200,150
speed:150
z_hop:5
[filament_switch_sensor extruder]
pause_on_runout: True
runout_gcode:
event_delay: 3.0
pause_delay: 0.5
switch_pin:PC14
switch_pin: ^PC14
[filament_switch_sensor extruder1]
pause_on_runout: True
runout_gcode:
event_delay: 3.0
pause_delay: 0.5
switch_pin:PC15
switch_pin: ^PC15
# F072 Left nozzle ID
[mcu L_tool]
@ -237,9 +251,9 @@ rate: 3200
[resonance_tester]
accel_chip: adxl345
probe_points: 200, 150, 20
min_freq: 25
min_freq: 20
max_freq: 70
accel_per_hz: 100
accel_per_hz: 200
hz_per_sec: 1
[heater_fan Sink_fan_0]
@ -278,15 +292,15 @@ max_extrude_only_accel: 1000.0
max_extrude_cross_section:5
heater_pin: L_tool:PA8
max_power: 1.0
min_temp: -235
max_temp: 465
min_temp: 0
max_temp: 450
min_extrude_temp: 150
pressure_advance: 0.032
pressure_advance_smooth_time:0.040
control = pid
pid_kp = 10.391
pid_ki = 0.376
pid_kd = 71.698
# control = pid
# pid_kp = 39.960
# pid_ki = 2.537
# pid_kd = 157.344
[tmc2209 extruder]
uart_pin:L_tool:PB7
@ -299,16 +313,16 @@ stealthchop_threshold: 0
pin: ^!L_tool:PA1
x_offset: 34.6
y_offset: 17.4
z_offset: 0
# z_offset: 0
speed: 10.0
samples: 3
samples_result: median
sample_retract_dist: 5.0
samples_tolerance: 0.007
sample_retract_dist: 2.0
samples_tolerance: 0.05
samples_tolerance_retries: 3
deactivate_on_each_sample: False
activate_gcode: probe_start
deactivate_gcode: probe_end
activate_gcode: PROBE_SERVO_OPEN
deactivate_gcode: PROBE_SERVO_CLOSE
[servo probe_servo]
pin:L_tool:PA5
@ -320,8 +334,8 @@ initial_angle: 160
[input_shaper]
shaper_freq_x: 0
shaper_freq_y: 0
#shaper_freq_x: 0
#shaper_freq_y: 0
shaper_type: mzv
#shaper_type_x:
#shaper_type_y:
@ -369,15 +383,16 @@ max_extrude_only_accel: 1000.0
max_extrude_cross_section:5
heater_pin: R_tool:PA8
max_power: 1.0
min_temp: -235
max_temp: 465
min_temp: 0
max_temp: 450
min_extrude_temp: 150
pressure_advance: 0.032
pressure_advance_smooth_time:0.040
control = pid
pid_kp = 10.391
pid_ki = 0.376
pid_kd = 71.698
# control = pid
# pid_kp = 39.960
# pid_ki = 2.537
# pid_kd = 157.344
[tmc2209 extruder1]
@ -387,36 +402,78 @@ run_current: 0.6
sense_resistor: 0.110
stealthchop_threshold: 0
[gcode_macro PARK_extruder]
[safe_z_home]
home_xy_position:200,150
speed:150
z_hop:5
[gcode_macro ENABLE_FORCE_MOVE]
gcode:
SET_KINEMATIC_POSITION X=200 Y=150 Z=150
[gcode_macro _RESTORE_DEFAULT_EXTRUDER]
gcode:
SET_GCODE_OFFSET Z=0
SET_GCODE_OFFSET Y=0
SET_GCODE_OFFSET X=0
ACTIVATE_EXTRUDER EXTRUDER=extruder
SET_DUAL_CARRIAGE CARRIAGE=0
[gcode_macro _PARK_extruder]
gcode:
ACTIVATE_EXTRUDER EXTRUDER=extruder
SET_DUAL_CARRIAGE CARRIAGE=0
SAVE_GCODE_STATE NAME=park0
G90
G1 X0 F6000
G1 X-20 F6000
RESTORE_GCODE_STATE NAME=park0
[gcode_macro T0]
gcode:
PARK_{printer.toolhead.extruder}
ACTIVATE_EXTRUDER EXTRUDER=extruder
SET_DUAL_CARRIAGE CARRIAGE=0
SET_GCODE_OFFSET Y=0
G1 X10 F6000
{% if "x" not in printer.toolhead.homed_axes %}
G28 X
{% set x_home = true %}
{% endif %}
{% if printer.toolhead.extruder != 'extruder' or x_home %}
_PARK_{printer.toolhead.extruder}
ACTIVATE_EXTRUDER EXTRUDER=extruder
SET_DUAL_CARRIAGE CARRIAGE=0
SET_GCODE_OFFSET Z=0
SET_GCODE_OFFSET Y=0
SET_GCODE_OFFSET X=0
G1 X0 F6000
{% endif %}
[gcode_macro PARK_extruder1]
[gcode_macro _PARK_extruder1]
gcode:
SAVE_GCODE_STATE NAME=park1
G90
G1 X495
RESTORE_GCODE_STATE NAME=park1
[gcode_macro T1]
gcode:
PARK_{printer.toolhead.extruder}
ACTIVATE_EXTRUDER EXTRUDER=extruder1
SET_DUAL_CARRIAGE CARRIAGE=1
SET_GCODE_OFFSET Y=0
G1 X485 F6000
SAVE_GCODE_STATE NAME=park1
G90
G1 X475
RESTORE_GCODE_STATE NAME=park1
[gcode_macro T1]
gcode:
{% set svv = printer.save_variables.variables %}
{% set x_offset = svv.dual_x_offset|default(0)|float %}
{% set y_offset = svv.dual_y_offset|default(0)|float %}
{% set z_offset = svv.dual_z_offset|default(0)|float %}
{% if "x" not in printer.toolhead.homed_axes %}
G28 X
{% set x_home = true %}
{% endif %}
{% if printer.toolhead.extruder != 'extruder1' or x_home %}
_PARK_{printer.toolhead.extruder}
ACTIVATE_EXTRUDER EXTRUDER=extruder1
SET_DUAL_CARRIAGE CARRIAGE=1
SET_GCODE_OFFSET Z={z_offset}
SET_GCODE_OFFSET Y={y_offset}
SET_GCODE_OFFSET X={x_offset}
G1 X455 F6000
{% endif %}
[gcode_macro ACTIVATE_COPY_MODE]
gcode:
@ -434,174 +491,129 @@ gcode:
G1 X0
ACTIVATE_EXTRUDER EXTRUDER=extruder
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=PRIMARY
G1 X495
G1 X455
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=MIRROR
SYNC_EXTRUDER_MOTION EXTRUDER=extruder1 MOTION_QUEUE=extruder
[gcode_macro probe_start]
[gcode_macro PROBE_SERVO_OPEN]
gcode:
SET_SERVO SERVO=probe_servo angle=45
G4 P500
[gcode_macro probe_end]
[gcode_macro PROBE_SERVO_CLOSE]
gcode:
G4 P500
SET_SERVO SERVO=probe_servo angle=135
[gcode_arcs]
resolution: 1.0
[gcode_macro PRINT_START]
[gcode_macro START_PRINT]
gcode:
G28
{% set BED_TEMP = params.BED|float %}
{% set EXTRUDER_TEMP = params.EXTRUDER|float %}
{% set BED_TEMP = params.BED|default(0)|float %}
{% set EXTRUDER_TEMP = params.EXTRUDER|default(0)|float %}
{% set EXTRUDER_TEMP1 = params.EXTRUDER1|default(0)|float %}
{% set CHAMBER_TEMP = params.CHAMBER|default(0)|float %}
M140 S{BED_TEMP}
M104 S{EXTRUDER_TEMP}
M104 T1 S{EXTRUDER_TEMP1}
M141 S{CHAMBER_TEMP}
T0
{% if params.BED is defined %}
M140 S{BED_TEMP}
{% endif %}
{% if params.EXTRUDER is defined %}
M104 T0 S{EXTRUDER_TEMP}
{% endif %}
{% if params.EXTRUDER1 is defined %}
M104 T1 S{EXTRUDER_TEMP1}
{% endif %}
{% if params.CHAMBER is defined %}
M141 S{CHAMBER_TEMP}
{% endif %}
G28
BED_MESH_CALIBRATE
M109 S{EXTRUDER_TEMP}
M109 T1 S{EXTRUDER_TEMP1}
# BED_MESH_CALIBRATE
{% if BED_TEMP != 0 %}
M190 S{BED_TEMP}
{% endif %}
{% if EXTRUDER_TEMP != 0 %}
M109 T0 S{EXTRUDER_TEMP}
{% endif %}
{% if EXTRUDER_TEMP1 != 0 %}
M109 T1 S{EXTRUDER_TEMP1}
{% endif %}
{% if CHAMBER_TEMP != 0 %}
M191 S{CHAMBER_TEMP}
{% endif %}
G92 E0
M117 Printing star...
[gcode_macro PRINT_END]
[gcode_macro END_PRINT]
gcode:
M400
G92 E0
G1 E-10.0 F3600
G91
G0 Z1.00 X20.0 Y20.0 F6000
{% if printer["dual_carriage"] is defined %}
G0 Z1.00 F6000
_PARK_extruder
_PARK_extruder1
{% else %}
G0 Z1.00 X20.0 Y20.0 F6000
{% endif %}
TURN_OFF_HEATERS
M107
G1 Z2 F3000
G90
G0 Y300 F3600
BED_MESH_CLEAR
# BED_MESH_CLEAR
[gcode_macro M109]
rename_existing: M99109
[gcode_macro SET_LED]
rename_existing: LED_SET
gcode:
{% if 'S' in params %}
{% set s = params.S|float %}
M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %}
{% if printer[printer.toolhead.extruder].temperature >= s-4 %}
M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %}
{% else %}
TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s-4} MAXIMUM={s+10}
{% set led_name = params.LED %}
{% set red = params.RED|default(0)|float %}
{% set green = params.GREEN|default(0)|float %}
{% set blue = params.BLUE|default(0)|float %}
{% set white = params.WHITE|default(0)|float %}
{% set index = params.INDEX|default(0)|float %}
{% set transmit = params.TRANSMIT|default(0)|int %}
{% set sync = params.SYNC|default(0)|int %}
{% if led_name == "Interior_lighting" %}
{% if white != 0 %}
{% set white = 1 %}
{% endif %}
{% else %}
M104 S0
{% endif %}
[gcode_macro M140]
rename_existing: M99140
gcode:
{% set s = params.S|float %}
{% if params.S is defined %}
{% if params.S|float >= 100 %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET=100
{% else %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={params.S|int}
{% endif %}
{% endif %}
[gcode_macro M141]
gcode:
{% set s = params.S|default(0)|float %}
SET_HEATER_TEMPERATURE HEATER=chamber target={s}
[gcode_macro M190]
rename_existing: M99190
gcode:
{% if 'S' in params %}
{% set s = (params.S|float,100)|min %}
{% if params.S|float >= 20 %}
{% if printer.heater_bed.temperature >= s-2 %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={s|int}
TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s-2} MAXIMUM={s+10}
G4 P10000
{% else %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={s|int}
TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s-2} MAXIMUM={s+10}
G4 P20000
{% endif %}
{% else %}
{% if printer.heater_bed.temperature >= s-2 %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={s|int}
G4 P10000
{% else %}
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={s|int}
TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s-2} MAXIMUM={s+10}
G4 P10000
{% endif %}
{% endif %}
{% else %}
M140 S0
{% endif %}
[gcode_macro M17]
gcode:
{% if 'X' in params or 'Y' in params or 'Z' in params or 'E' in params %}
{% if 'X' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_x enable=1
{% endif %}
{% if 'Y' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_y enable=1
{% endif %}
{% if 'Z' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1
{% endif %}
{% if 'E' in params %}
SET_STEPPER_ENABLE STEPPER=extruder enable=1
SAVE_VARIABLE VARIABLE=interior_lighting VALUE={white}
{% endif %}
{% if index == 0 %}
LED_SET LED={led_name} RED={red} GREEN={green} BLUE={blue} WHITE={white} TRANSMIT={transmit} SYNC={sync}
{% else %}
SET_STEPPER_ENABLE STEPPER=stepper_x enable=1
SET_STEPPER_ENABLE STEPPER=stepper_y enable=1
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1
#SET_STEPPER_ENABLE STEPPER=extruder enable=1
LED_SET LED={led_name} RED={red} GREEN={green} BLUE={blue} WHITE={white} INDEX={index} TRANSMIT={transmit} SYNC={sync}
{% endif %}
[gcode_macro M84]
rename_existing:M84.1
[gcode_macro SET_X_OFFSET]
gcode:
{% set svv = printer.save_variables.variables %}
{% set dual_x_offset=params.S|default(0)|float %}
SAVE_VARIABLE VARIABLE=dual_x_offset VALUE={dual_x_offset}
[gcode_macro SET_Y_OFFSET]
gcode:
{% set svv = printer.save_variables.variables %}
{% set dual_y_offset=params.S|default(0)|float %}
SAVE_VARIABLE VARIABLE=dual_y_offset VALUE={dual_y_offset}
[gcode_macro SET_Z_OFFSET]
gcode:
{% set svv = printer.save_variables.variables %}
{% set dual_z_offset=params.S|default(0)|float %}
SAVE_VARIABLE VARIABLE=dual_z_offset VALUE={dual_z_offset}
[gcode_macro ENABLE_FORCE_MOVE]
gcode:
{% if 'X' in params or 'Y' in params or 'Z' in params or 'E' in params %}
{% if 'X' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_x enable=0
{% endif %}
{% if 'Y' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_y enable=0
{% endif %}
{% if 'Z' in params %}
SET_STEPPER_ENABLE STEPPER=stepper_z enable=0
{% endif %}
{% if 'E' in params %}
SET_STEPPER_ENABLE STEPPER=extruder enable=0
{% endif %}
{% else %}
SET_STEPPER_ENABLE STEPPER=stepper_x enable=0
SET_STEPPER_ENABLE STEPPER=stepper_y enable=0
SET_STEPPER_ENABLE STEPPER=stepper_z enable=0
SET_STEPPER_ENABLE STEPPER=extruder enable=0
{% endif %}
SET_KINEMATIC_POSITION X=200 Y=150 Z=150
[gcode_macro LOAD_FILAMENT]
variable_load_distance: 100
variable_purge_distance: 25
variable_load_distance: 90
variable_purge_distance: 20
gcode:
{% set speed = params.SPEED|default(200) %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 60 %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 20 %}
SAVE_GCODE_STATE NAME=load_state
G91
G92 E0
@ -610,14 +622,69 @@ gcode:
RESTORE_GCODE_STATE NAME=load_state
[gcode_macro UNLOAD_FILAMENT]
variable_unload_distance: 100
variable_purge_distance: 25
variable_unload_distance: 90
variable_purge_distance: 20
gcode:
{% set speed = params.SPEED|default(200) %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 60 %}
{% set max_velocity = printer.configfile.settings['extruder'].max_extrude_only_velocity * 20 %}
SAVE_GCODE_STATE NAME=unload_state
G91
G92 E0
G1 E{purge_distance} F{speed} # purge
G1 E-{unload_distance} F{max_velocity} # fast-unload
RESTORE_GCODE_STATE NAME=unload_state
[gcode_macro G28]
rename_existing: C28
gcode:
{% set homing_cmd = ''%}
{% set do_x = 'X' in params|string %}
{% set do_y = 'Y' in params|string %}
{% set do_z = 'Z' in params|string %}
{% if do_x %}
{% set homing_cmd = 'X ' %}
{% endif %}
{% if do_y %}
{% set homing_cmd = homing_cmd + 'Y ' %}
{% endif %}
{% if do_z %}
{% 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 %}
{% set homing_cmd = homing_cmd + 'Z' %}
{% endif %}
{% endif %}
{% if not homing_cmd %}
C28
_RESTORE_DEFAULT_EXTRUDER
{% else %}
C28 {homing_cmd}
{% if 'X' in homing_cmd %}
_RESTORE_DEFAULT_EXTRUDER
{% endif %}
{% endif %}
[gcode_macro M141]
gcode:
{% set s = params.S|default(0)|float %}
{% if params.S is defined %}
SET_HEATER_TEMPERATURE HEATER=chamber target={s|int}
{% endif %}
[gcode_macro M191]
gcode:
{% set s = params.S|default(0)|float %}
{% if params.S is defined %}
M141 S{s}
{% if s != 0 %}
TEMPERATURE_WAIT SENSOR=chamber MINIMUM={s-1} MAXIMUM={s+2}
{% endif %}
{% endif %}
[gcode_macro M84]
rename_existing: C84
gcode:
C84
SET_STEPPER_ENABLE STEPPER=stepper_z enable=1
_RESTORE_DEFAULT_EXTRUDER

View File

@ -0,0 +1,28 @@
[include base.cfg]
[extruder]
control = pid
pid_kp = 39.960
pid_ki = 2.537
pid_kd = 157.344
[extruder1]
control = pid
pid_kp = 39.960
pid_ki = 2.537
pid_kd = 157.344
[heater_bed]
control = pid
pid_kp = 40.673
pid_ki = 0.837
pid_kd = 494.176
[heater_generic chamber]
control: pid
pid_kp: 30.68
pid_ki: 0.21
pid_kd: 0
[probe]
z_offset: 4