From a013b81b01126ff7ba26d9e1aae533e6b2c5633d Mon Sep 17 00:00:00 2001 From: zkk <1007518571@qq.com> Date: Sat, 7 Sep 2024 17:18:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9ED1000=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6=20=E4=BC=98=E5=8C=96D600Pro2=E5=92=8CF430NX?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/CreatBot_D1000/base.cfg | 526 +++++++++++++++++ config/CreatBot_D1000/printer.cfg | 28 + config/CreatBot_D600Pro2.cfg | 416 -------------- config/CreatBot_D600Pro2/base.cfg | 526 +++++++++++++++++ config/CreatBot_D600Pro2/printer.cfg | 28 + .../base.cfg} | 529 ++++++++++-------- config/CreatBot_F430NX/printer.cfg | 28 + 7 files changed, 1434 insertions(+), 647 deletions(-) create mode 100644 config/CreatBot_D1000/base.cfg create mode 100644 config/CreatBot_D1000/printer.cfg delete mode 100644 config/CreatBot_D600Pro2.cfg create mode 100644 config/CreatBot_D600Pro2/base.cfg create mode 100644 config/CreatBot_D600Pro2/printer.cfg rename config/{CreatBot_F430NX.cfg => CreatBot_F430NX/base.cfg} (52%) create mode 100644 config/CreatBot_F430NX/printer.cfg diff --git a/config/CreatBot_D1000/base.cfg b/config/CreatBot_D1000/base.cfg new file mode 100644 index 000000000..35176a92f --- /dev/null +++ b/config/CreatBot_D1000/base.cfg @@ -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 + diff --git a/config/CreatBot_D1000/printer.cfg b/config/CreatBot_D1000/printer.cfg new file mode 100644 index 000000000..cd8f451ef --- /dev/null +++ b/config/CreatBot_D1000/printer.cfg @@ -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 \ No newline at end of file diff --git a/config/CreatBot_D600Pro2.cfg b/config/CreatBot_D600Pro2.cfg deleted file mode 100644 index 0583ba29b..000000000 --- a/config/CreatBot_D600Pro2.cfg +++ /dev/null @@ -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 diff --git a/config/CreatBot_D600Pro2/base.cfg b/config/CreatBot_D600Pro2/base.cfg new file mode 100644 index 000000000..384e5bfa5 --- /dev/null +++ b/config/CreatBot_D600Pro2/base.cfg @@ -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 + diff --git a/config/CreatBot_D600Pro2/printer.cfg b/config/CreatBot_D600Pro2/printer.cfg new file mode 100644 index 000000000..03b88327f --- /dev/null +++ b/config/CreatBot_D600Pro2/printer.cfg @@ -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 \ No newline at end of file diff --git a/config/CreatBot_F430NX.cfg b/config/CreatBot_F430NX/base.cfg similarity index 52% rename from config/CreatBot_F430NX.cfg rename to config/CreatBot_F430NX/base.cfg index c9f40f3fe..e681d1c4b 100644 --- a/config/CreatBot_F430NX.cfg +++ b/config/CreatBot_F430NX/base.cfg @@ -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 diff --git a/config/CreatBot_F430NX/printer.cfg b/config/CreatBot_F430NX/printer.cfg new file mode 100644 index 000000000..467622f04 --- /dev/null +++ b/config/CreatBot_F430NX/printer.cfg @@ -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 \ No newline at end of file