diff --git a/KlipperScreen.conf b/KlipperScreen.conf index 1ae65a9..9890af4 100644 --- a/KlipperScreen.conf +++ b/KlipperScreen.conf @@ -32,6 +32,5 @@ #~# #~# [graph Printer] #~# extruder = False -#~# heater_bed = False #~# temperature_sensor manta = False #~# diff --git a/config/cooling.cfg b/config/cooling.cfg index 9d82684..beb1b70 100644 --- a/config/cooling.cfg +++ b/config/cooling.cfg @@ -1,55 +1,55 @@ -[delayed_gcode FAN_CONTROL_LOOP] -gcode: - FAN_CONTROL - UPDATE_DELAYED_GCODE ID=FAN_CONTROL_LOOP DURATION=2 +# [delayed_gcode FAN_CONTROL_LOOP] +# gcode: +# FAN_CONTROL +# UPDATE_DELAYED_GCODE ID=FAN_CONTROL_LOOP DURATION=2 -[gcode_macro FAN_CONTROL] -gcode: - # # TMC cooler - # # This defaults to 100% if either x or y steppers are enabled and 0% otherwise. - # {% if printer['stepper_enable'].steppers.stepper_x or printer['stepper_enable'].steppers.stepper_y %} - # SET_FAN_SPEED FAN=tmcCooler SPEED=1 - # {% else %} - # SET_FAN_SPEED FAN=tmcCooler SPEED=0 - # {% endif %} +# [gcode_macro FAN_CONTROL] +# gcode: +# # # TMC cooler +# # # This defaults to 100% if either x or y steppers are enabled and 0% otherwise. +# # {% if printer['stepper_enable'].steppers.stepper_x or printer['stepper_enable'].steppers.stepper_y %} +# # SET_FAN_SPEED FAN=tmcCooler SPEED=1 +# # {% else %} +# # SET_FAN_SPEED FAN=tmcCooler SPEED=0 +# # {% endif %} - # idle m8p temp - 52 - {% set mantaMinTemp = 55 %} - {% set mantaMaxTemp = 80 %} +# # idle m8p temp - 52 +# {% set mantaMinTemp = 55 %} +# {% set mantaMaxTemp = 80 %} - # idle rpi temp - 54 - {% set rpiMinTemp = 58 %} - {% set rpiMaxTemp = 85 %} +# # idle rpi temp - 54 +# {% set rpiMinTemp = 58 %} +# {% set rpiMaxTemp = 85 %} - # idle printhead temp - 39 +# # idle printhead temp - 39 - # base fans depend on the current microcontroller temperature, following a fan curve from a 'base' to 'max' temperature. - # they are fixed at 20% or above when stepperx or y are enabled. +# # base fans depend on the current microcontroller temperature, following a fan curve from a 'base' to 'max' temperature. +# # they are fixed at 20% or above when stepperx or y are enabled. - # magic equation here: - {% set baseFanSpeed = (printer['temperature_sensor Manta'].temperature-mantaMinTemp)/(mantaMaxTemp-mantaMinTemp) %} +# # magic equation here: +# {% set baseFanSpeed = (printer['temperature_sensor Manta'].temperature-mantaMinTemp)/(mantaMaxTemp-mantaMinTemp) %} - {% set baseFanSpeed = [(printer['temperature_sensor Rpi'].temperature-rpiMinTemp)/(rpiMaxTemp-rpiMinTemp),baseFanSpeed]|max %} +# {% set baseFanSpeed = [(printer['temperature_sensor Rpi'].temperature-rpiMinTemp)/(rpiMaxTemp-rpiMinTemp),baseFanSpeed]|max %} - {% if printer['print_stats'].state == "printing" %} - {% set baseFanSpeed = [0.6, baseFanSpeed]|max %} - {% endif %} +# {% if printer['print_stats'].state == "printing" %} +# {% set baseFanSpeed = [0.6, baseFanSpeed]|max %} +# {% endif %} - {% if printer['extruder'].target != 0 or printer['heater_bed'].target != 0 %} - {% set baseFanSpeed = [0.2, baseFanSpeed]|max %} - {% endif %} +# {% if printer['extruder'].target != 0 or printer['heater_bed'].target != 0 %} +# {% set baseFanSpeed = [0.2, baseFanSpeed]|max %} +# {% endif %} - {% set baseFanSpeed = [[baseFanSpeed, 1]|min, 0]|max %} # fix the value somewhere between zero and one - SET_FAN_SPEED FAN=base_1 SPEED={baseFanSpeed} - SET_FAN_SPEED FAN=base_2 SPEED={baseFanSpeed} +# {% set baseFanSpeed = [[baseFanSpeed, 1]|min, 0]|max %} # fix the value somewhere between zero and one +# SET_FAN_SPEED FAN=base_1 SPEED={baseFanSpeed} +# SET_FAN_SPEED FAN=base_2 SPEED={baseFanSpeed} - # for now both exhaust and filter go to 60% when printing - {% if printer['print_stats'].state == "printing" %} - SET_FAN_SPEED FAN=filter SPEED=.5 - SET_FAN_SPEED FAN=exhaust SPEED=.5 - {% endif %} +# # for now both exhaust and filter go to 60% when printing +# {% if printer['print_stats'].state == "printing" %} +# SET_FAN_SPEED FAN=filter SPEED=.5 +# SET_FAN_SPEED FAN=exhaust SPEED=.5 +# {% endif %} ## Fans @@ -67,18 +67,23 @@ heater: extruder heater_temp: 50.0 -[fan_generic filter] -pin: PF8 +[controller_fan filter] +pin: PA3 +heater: heater_bed +fan_speed: .6 -[fan_generic exhaust] +[controller_fan exhaust] pin: PF6 +heater: heater_bed +fan_speed: .3 -[fan_generic base_1] +[controller_fan base_1] pin: PF9 +fan_speed: .4 -[fan_generic base_2] +[controller_fan base_2] pin: PF7 -#fan_speed: .4 +fan_speed: .4 [controller_fan tmcCooler] pin: PA4 diff --git a/config/eddy.cfg b/config/eddy.cfg index 25e6039..1d8cab5 100644 --- a/config/eddy.cfg +++ b/config/eddy.cfg @@ -7,11 +7,11 @@ sensor_type: temperature_mcu # Sets the type of sensor for Klipper to read sensor_mcu: eddy # Sets the MCU of the eddy probe tempereature sensor min_temp: 10 # Sets the minimum tempereature for eddys tempereature sensor to operate -max_temp: 100 # Sets the maximum tempereature for eddys tempereature sensor to operate +max_temp: 120 # Sets the maximum tempereature for eddys tempereature sensor to operate [probe_eddy_current btt_eddy] sensor_type: ldc1612 -z_offset: 2.5 +#z_offset: 2.5 #i2c_address: i2c_mcu: eddy # This value is good for the Eddy USB but would need to be adjusted for the Eddy Coil according to the MCU you have used. i2c_bus: i2c0f # This value is good for the Eddy USB but would need to be adjusted for the Eddy Coil according to the I2C bus you have used. @@ -30,18 +30,18 @@ [quad_gantry_level] # Use QUAD_GANTRY_LEVEL to level a gantry. gantry_corners: - -59, 0 - 310, 320 + -57, 0 + 312, 320 # Min & Max gantry corners - measure from nozzle at MIN (0,0) and MAX (250,250) to respective belt positions points: # 239, 210 # 15, 210 # 15, 0 # 239, 0 - 15, 0 - 15, 210 - 239, 210 - 239, 0 + 16, 1 + 16, 208 + 238, 208 + 238, 1 # Probe points speed: 600 @@ -62,8 +62,8 @@ # For mesh x max we do not ignore the x offset term because it is negative. It is also greater than 15. Therefore mesh x max = 280 # For mesh y max we ignore the y offset term because it is positive but it is less than 15 so we use 15. Therefore mesh y max = 285 # The final result would be mesh_min: 15, 15 mesh_max: 280, 285 -mesh_min: 15, 22 # modify these according to the above guide. If the probe cannot reach then you will get a klipper error when trying to scan a bed mesh. -mesh_max: 239, 239 # modify these according to the above guide. If the probe cannot reach then you will get a klipper error when trying to scan a bed mesh. +mesh_min: 17, 22 # modify these according to the above guide. If the probe cannot reach then you will get a klipper error when trying to scan a bed mesh. +mesh_max: 237, 237 # modify these according to the above guide. If the probe cannot reach then you will get a klipper error when trying to scan a bed mesh. probe_count: 40, 12 algorithm: bicubic scan_overshoot: 5 #uncomment this section if you still have room left over on the X axis for some scan overshoot to product smoother movements and more accurate scanning. Uncommenting this should be fine if you are using a standard voron mount. @@ -112,21 +112,21 @@ variable_restored: False # Mark whether the var has been restored from NVM variable_runtime_offset: 0 gcode: -# {% if params.Z_ADJUST %} -# SET_GCODE_VARIABLE MACRO=SET_GCODE_OFFSET VARIABLE=runtime_offset VALUE={ printer["gcode_macro SET_GCODE_OFFSET"].runtime_offset + params.Z_ADJUST|float } -# {% endif %} -# {% if params.Z %} -# {% set paramList = rawparams.split() %} -# {% for i in range(paramList|length) %} -# {% if paramList[i]=="Z=0" %} -# {% set temp=paramList.pop(i) %} -# {% set temp="Z_ADJUST=" + (-printer["gcode_macro SET_GCODE_OFFSET"].runtime_offset)|string %} -# {% if paramList.append(temp) %}{% endif %} -# {% endif %} -# {% endfor %} -# {% set rawparams=paramList|join(' ') %} -# SET_GCODE_VARIABLE MACRO=SET_GCODE_OFFSET VARIABLE=runtime_offset VALUE=0 -# {% endif %} + {% if params.Z_ADJUST %} + SET_GCODE_VARIABLE MACRO=SET_GCODE_OFFSET VARIABLE=runtime_offset VALUE={ printer["gcode_macro SET_GCODE_OFFSET"].runtime_offset + params.Z_ADJUST|float } + {% endif %} + {% if params.Z %} + {% set paramList = rawparams.split() %} + {% for i in range(paramList|length) %} + {% if paramList[i]=="Z=0" %} + {% set temp=paramList.pop(i) %} + {% set temp="Z_ADJUST=" + (-printer["gcode_macro SET_GCODE_OFFSET"].runtime_offset)|string %} + {% if paramList.append(temp) %}{% endif %} + {% endif %} + {% endfor %} + {% set rawparams=paramList|join(' ') %} + SET_GCODE_VARIABLE MACRO=SET_GCODE_OFFSET VARIABLE=runtime_offset VALUE=0 + {% endif %} SET_GCODE_OFFSET_ORIG { rawparams } diff --git a/config/filament_sensors.cfg b/config/filament_sensors.cfg index bb28c70..ebd7076 100644 --- a/config/filament_sensors.cfg +++ b/config/filament_sensors.cfg @@ -55,10 +55,10 @@ {% if svv.filament_load_state == "primed" %} # check if there is a valid value for the currently loaded filament. if not, prompt the user for it. - {% if not svv.filament_extruder in printer.filaments.presets|map(attribute='name',default='yeet') %} + {% if svv.filament_extruder == 'None' %} # if there isn't a set loaded filament, run QUERY_FILAMENT + QUERY_FILAMENT RETURN_MACRO=UNPRIME_FILAMENT {% else %} - QUERY_FILAMENT RETURN_MACRO=LOAD_FILAMENT SET_FILAMENT_LOAD_STATE STATE="processing" # tell the end macro wether to call the unload macro after this @@ -104,11 +104,6 @@ variable_etemp = 0 variable_unload = False gcode: - # reload filament by an extra 10mm to press the button again - G0 E10 F{40*60} - - M82 # absolute extruder moves - # set temperature to what it was before SET_HEATER_TEMPERATURE HEATER='extruder' TARGET={etemp} MODE=auto @@ -118,25 +113,25 @@ # if we want to unload after this, do so {% if unload %} UNLOAD_FILAMENT + {% else %} + # reload filament by an extra 10mm to press the button again + _CLIENT_LINEAR_MOVE E=10 F={60*60} {% endif %} [gcode_macro UNLOAD_FILAMENT] description: Unloads the current filament gcode: {% set svv = printer.save_variables.variables %} - # check against current filament state {% if svv.filament_load_state == "loaded" %} - - # retract filament by 30mm - M83 # relative extruder moves - G0 E-30 F{40*60} - M82 # absolute extruder moves + _CLIENT_LINEAR_MOVE E=-40 F={60*10} + {action_respond_info('fuck')} SET_STEPPER_ENABLE STEPPER=extruder ENABLE=0 SET_FILAMENT_LOAD_STATE STATE="unloaded_waiting" SET_EXTRUDER_FILAMENT NAME="None" {% elif svv.filament_load_state == "primed" %} + {action_respond_info('shit')} UNPRIME_FILAMENT UNLOAD=True {% else %} {action_respond_info("unable to unload filament. Current filament state: %s " %(svv.filament_load_state))} @@ -198,7 +193,6 @@ {% endif %} - [gcode_macro PRIME_FILAMENT] gcode: {% set svv = printer.save_variables.variables %} @@ -214,22 +208,19 @@ {% elif svv.filament_load_state in ['loaded', 'primed'] %} # ensure that the filament in the hotend is the same as the filament in the extruder {% if svv.filament_extruder == svv.filament_hotend %} - # wait for temperature to be set - SET_HOTEND_TO_FILAMENT WAIT=True - # move to purge bucket - # z hop slightly - _CLIENT_LINEAR_MOVE Z=5 F={60*30} - # move to correct xy position - _CLIENT_LINEAR_MOVE Y=258 X=230 F={60*500} ABSOLUTE=1 - # z down - _CLIENT_LINEAR_MOVE Z=-1.5 F={60*30} ABSOLUTE=1 + SET_HOTEND_TO_FILAMENT + + MOVE_TO_PURGE_BUCKET + SET_HOTEND_TO_FILAMENT WAIT=True + + # if the filament is only loaded, then extrude a bit to get it to the end of the extruder {% if svv.filament_load_state in ['loaded'] %} _CLIENT_LINEAR_MOVE E=25 F={60*20} {% endif %} _CLIENT_LINEAR_MOVE E=10 F={60*10} - _CLIENT_LINEAR_MOVE E=-2 F={60*10} - + _CLIENT_LINEAR_MOVE E={-printer['gcode_macro VARIABLES'].retraction_length} F={60*20} + CLEAN_NOZZLE SET_FILAMENT_LOAD_STATE STATE=primed @@ -251,49 +242,58 @@ {% elif svv.filament_load_state in ["loaded", "primed"] %} # if the filament is loaded or primed, then continue - SET_HOTEND_TO_FILAMENT WAIT=True POSITION=both + SET_HOTEND_TO_FILAMENT POSITION=both # move to purge bucket - - # z hop slightly - _CLIENT_LINEAR_MOVE Z=5 F={60*30} - # move to correct xy position - _CLIENT_LINEAR_MOVE Y=258 X=230 F={60*500} ABSOLUTE=1 - # z down - _CLIENT_LINEAR_MOVE Z=-1.5 F={60*30} ABSOLUTE=1 - - _CLIENT_LINEAR_MOVE E=25 F={60*20} - _CLIENT_LINEAR_MOVE E=50 F={60*10} - _CLIENT_LINEAR_MOVE E=-2 F={60*10} + MOVE_TO_PURGE_BUCKET + + SET_HOTEND_TO_FILAMENT Wait=True POSITION=both + {% if svv.filament_load_state in ['loaded'] %} + _CLIENT_LINEAR_MOVE E=25 F={60*20} + {% endif %} + _CLIENT_LINEAR_MOVE E={printer['gcode_macro VARIABLES'].purge_line_length} F={60*10} + _CLIENT_LINEAR_MOVE E={-printer['gcode_macro VARIABLES'].retraction_length} F={60*20} CLEAN_NOZZLE + SET_HOTEND_FILAMENT NAME={svv.filament_extruder} SET_FILAMENT_LOAD_STATE STATE=primed - SET_HOTEND_FILAMENT NAME=svv.filament_extruder - SET_FILAMENT_LOAD_STATE STATE=primed + {% else %} {action_respond_info("unable to purge filament. Current filament state: %s " %(svv.filament_load_state))} {% endif %} +[gcode_macro MOVE_TO_PURGE_BUCKET] +gcode: + # move z to minimum of 2 + {% if printer['gcode_move'].position.z < 6 %} + _CLIENT_LINEAR_MOVE Z=6 F={60*60} ABSOLUTE=1 + {% endif %} + + # move y out if necessary + {% if printer['gcode_move'].position.y > 254 %} + _CLIENT_LINEAR_MOVE Y=254 F={60*700} ABSOLUTE=1 + {% endif %} + + # move xy to purge bucket + _CLIENT_LINEAR_MOVE Y=254 X=25 F={60*700} ABSOLUTE=1 + _CLIENT_LINEAR_MOVE Y=258 F={60*60} ABSOLUTE=1 [gcode_macro CLEAN_NOZZLE] -# for now assumes no print on the bed +description: wipes filament off the nozzle gcode: - # z hop slightly - _CLIENT_LINEAR_MOVE Z=5 F={60*30} - # move to correct xy position - _CLIENT_LINEAR_MOVE Y=258 X=230 F={60*500} ABSOLUTE=1 - # z down - _CLIENT_LINEAR_MOVE Z=-1.5 F={60*30} ABSOLUTE=1 + MOVE_TO_PURGE_BUCKET # wipe a few times {% for x in range(2) %} - _CLIENT_LINEAR_MOVE X=-55 F={60*700} - _CLIENT_LINEAR_MOVE X=55 F={60*700} + _CLIENT_LINEAR_MOVE X=55 F={60*700} + _CLIENT_LINEAR_MOVE X=-55 F={60*700} {% endfor %} - - # set z up again - _CLIENT_LINEAR_MOVE Z=10 F={60*30} ABSOLUTE=1 - + +[gcode_macro STABILIZE_NOZZLE] +description: tries to prevent the nozzle from leaking filament too much +gcode: + + [gcode_button bowden_sensor] pin: PF2 press_gcode: @@ -343,13 +343,22 @@ release_gcode: { action_respond_info("extruder_entry_release") } {% set svv = printer.save_variables.variables %} + + # if filament is loaded, check if it's running out or being unloaded {% if svv.filament_load_state == 'loaded' %} + # runout + {% if printer['gcode_button extruder_exit'].state == PRESSED %} {action_raise_error("Warning: extruder entry sensor released, filament runout")} SET_FILAMENT_LOAD_STATE STATE="runout" + + # pause printer on runout {% if svv.printer_state == 'printing'%} - PAUSE + # PAUSE {% endif %} - # TODO IMPLEMENT MORE WARNINGS. + # being unloaded + {% else %} + SET_FILAMENT_LOAD_STATE STATE="unloaded" + {% endif %} {% elif svv.filament_load_state == 'unloaded_waiting' %} SET_FILAMENT_LOAD_STATE STATE="unloaded" {% elif svv.filament_load_state != 'unloaded' %} @@ -360,11 +369,17 @@ pin: printHead:PB5 press_gcode: - {% set svv = printer.save_variables.variables %} -# not much here, this is handled by repeatedly checking the state in the filamet unload macro { action_respond_info("extruder_exit_insert") } + {% set svv = printer.save_variables.variables %} + + # auto state update if the user is manually doing things + {% if svv.filament_load_state not in ['loaded', 'primed'] %} + SET_FILAMENT_LOAD_STATE STATE="loaded" + {% endif %} + release_gcode: - {% set svv = printer.save_variables.variables %} { action_respond_info("extruder_exit_runout") } - { action_respond_info(svv.filament_load_state|string) } + {% set svv = printer.save_variables.variables %} + + diff --git a/config/macros.cfg b/config/macros.cfg index fecfe69..3c56734 100644 --- a/config/macros.cfg +++ b/config/macros.cfg @@ -17,14 +17,14 @@ VARIABLES # kickstart fan control macro - UPDATE_DELAYED_GCODE ID=FAN_CONTROL_LOOP DURATION=2 + # UPDATE_DELAYED_GCODE ID=FAN_CONTROL_LOOP DURATION=2 # check the current heater states and re enable heaters if able {% if svv.extruder_state == 'hot' %} {% if svv.extruder_temperature - extruder_leeway_temp <= printer.extruder.temperature %} { action_respond_info("re-enabling extruder after printer shutoff") } - SET_HEATER_TEMPERATURE HEATER=extruder TARGET={svv.extruder_temperature} MODE=override + SET_HEATER_TEMPERATURE HEATER=extruder TARGET={svv.extruder_temperature} {% else %} { action_respond_info("extruder was enabled before last shutoff. State updated to cold.") } SAVE_VARIABLE VARIABLE=extruder_state VALUE='"cold"' @@ -38,7 +38,7 @@ {% if svv.bed_temperature - bed_leeway_temp <= printer.heater_bed.temperature %} { action_respond_info("re-enabling bed after printer shutoff") } - SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={svv.bed_temperature} MODE=override + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={svv.bed_temperature} {% else %} { action_respond_info("bed was enabled before last shutoff. State updated to cold.") } SAVE_VARIABLE VARIABLE=bed_state VALUE='"cold"' @@ -88,7 +88,7 @@ SET_FILAMENT_SENSOR SENSOR=bowden_encoder_sensor ENABLE=0 {% endif %} -initial_duration: 2 +initial_duration: 4 [gcode_macro TEST] gcode: @@ -104,7 +104,8 @@ QUAD_GANTRY_LEVEL BED_MESH_CALIBRATE METHOD=rapid_scan SET_GCODE_VARIABLE MACRO=VARIABLES VARIABLE=mesh_bed_temp VALUE={printer['heater_bed'].temperature} - G0 X239 Y210 F{700*60} + + MOVE_TO_PURGE_BUCKET [gcode_macro calibrate] gcode: @@ -136,9 +137,7 @@ G0 X239 Y210 F{700*60} {% endif %} - -[gcode_macro calibrate_override] -gcode: + MOVE_TO_PURGE_BUCKET ####### PRINT START AND STOP ETC [gcode_macro START_PRINT] @@ -160,13 +159,24 @@ {% endif %} # check calibration - CALIBRATE SKIP_MESH=True + # CALIBRATE SKIP_MESH=True - {% if svv.filament_extruder == svv.filament_hotend %} - PRIME_FILAMENT - {% else %} - PURGE_FILAMENT - {% endif %} + # {% if svv.filament_extruder != svv.filament_hotend %} + # PURGE_FILAMENT + # {% endif %} + + # final enable of heaters and wait for temperature to be reached + SET_HEATERS_TO_FILAMENT_AND_WAIT + + # CLEAN_NOZZLE + + # CALIBRATE + + # PRIME_FILAMENT + + _CLIENT_LINEAR_MOVE E=2 F=600 + # enable the encoder filament sensor + SET_FILAMENT_SENSOR SENSOR=bowden_encoder_sensor ENABLE=1 {% elif svv.filament_runout_state == "runout" %} {action_raise_error("Error, filament in runout state")} @@ -174,16 +184,6 @@ {% else %} {action_raise_error("Error, filament not loaded. Filament is %s" % (svv.filament_state))} {% endif %} - - # final enable of heaters and wait for temperature to be reached - SET_HEATERS_TO_FILAMENT_AND_WAIT - - CALIBRATE - - CLEAN_NOZZLE - - # enable the encoder filament sensor - SET_FILAMENT_SENSOR SENSOR=bowden_encoder_sensor ENABLE=1 [gcode_macro stop_print] diff --git a/config/overrides.cfg b/config/overrides.cfg index db50e0f..f77e936 100644 --- a/config/overrides.cfg +++ b/config/overrides.cfg @@ -5,6 +5,8 @@ [idle_timeout] gcode: + {action_respond_info("idle timeout")} + {action_respond_info("idle timeout %s" % (printer['gcode_macro VARIABLES'].idle_state))} {% if printer['gcode_macro VARIABLES'].idle_state == "None" %} # initial idle - turn off lights SET_LED LED=chamber WHITE=0 @@ -174,12 +176,7 @@ {% else %} # no mode param -> called from mainsail, is a MANUAL command. - {% if svv.heater_mode == "manual" %} - SET_HEATER_TEMPERATURE1 {rawparams} - {% else %} - # else complain and tell the user they're and idiot - {action_respond_info("Manual control locked. Printer in: %s" %(svv.heater_state))} - {% endif %} + SET_HEATER_TEMPERATURE1 {rawparams} {% endif %} [gcode_macro SET_HEATER_TEMPERATURE1] @@ -226,13 +223,8 @@ SET_HEATER_TEMPERATURE_AND_WAIT1 {rawparams} {% else %} - # no mode param -> called from mainsail, is a MANUAL command. - {% if svv.heater_mode == "manual" %} - SET_HEATER_TEMPERATURE_AND_WAIT1 {rawparams} - {% else %} - # else complain and tell the user they're and idiot - {action_respond_info("Manual control locked. Printer in: %s" %(svv.heater_state))} - {% endif %} + # no mode param -> called from mainsail, is a MANUAL command. + SET_HEATER_TEMPERATURE_AND_WAIT1 {rawparams} {% endif %} [gcode_macro SET_HEATER_TEMPERATURE_AND_WAIT1] diff --git a/config/variable_macros.cfg b/config/variable_macros.cfg index 4aa4b48..eef979e 100644 --- a/config/variable_macros.cfg +++ b/config/variable_macros.cfg @@ -2,9 +2,14 @@ filename: ~/printer_data/config/storage/variables.cfg [gcode_macro VARIABLES] +# dynamic variable_mesh_bed_temp: 0 # stores the temperature of the bed at the last bed mesh calibrate -variable_mesh_bed_temp_leeway: 15 # +- leeway (K) outside of which another bed mesh will be performed variable_idle_state: None + +# static +variable_mesh_bed_temp_leeway: 15 # +- leeway (K) outside of which another bed mesh will be performed +variable_purge_line_length: 50 +variable_retraction_length: 2 gcode: [gcode_macro SET_FILAMENT_LOAD_STATE] diff --git a/crowsnest.conf b/crowsnest.conf new file mode 100644 index 0000000..4c28680 --- /dev/null +++ b/crowsnest.conf @@ -0,0 +1,47 @@ +#### crowsnest.conf +#### This is the default config after installation. +#### It is also used as the default config in MainsailOS. +#### For details on how to configure this to your needs, see: +#### https://github.com/mainsail-crew/crowsnest/blob/master/README.md + + +##################################################################### +#### ##### +#### Information about ports and according URL's ##### +#### ##### +##################################################################### +#### ##### +#### Port 8080 equals /webcam/?action=[stream/snapshot] ##### +#### Port 8081 equals /webcam2/?action=[stream/snapshot] ##### +#### Port 8082 equals /webcam3/?action=[stream/snapshot] ##### +#### Port 8083 equals /webcam4/?action=[stream/snapshot] ##### +#### ##### +#### Note: These ports are default for most Mainsail ##### +#### installations. Using any other port would involve ##### +#### changing the proxy configuration or using URLs ##### +#### with the specific port like ##### +#### http://:/?action=[stream/snapshot] ##### +#### ##### +##################################################################### +#### RTSP Stream URL: ( if enabled and supported ) ##### +#### rtsp://:/stream.h264 ##### +##################################################################### + + +[crowsnest] +log_path: /home/cory/printer_data/logs/crowsnest.log +log_level: verbose # Valid Options are quiet/verbose/debug +delete_log: false # Deletes log on every restart, if set to true +no_proxy: false # If set to true, no reverse proxy is required. Only change this, if you know what you are doing. + +[cam 1] +mode: ustreamer # ustreamer - Provides MJPG and snapshots. (All devices) + # camera-streamer - Provides WebRTC, MJPG and snapshots. (only RPiOS + RPi 0/1/2/3/4) +enable_rtsp: false # If camera-streamer is used, this also enables usage of an RTSP server +rtsp_port: 8554 # Set different ports for each device! +port: 8080 # HTTP/MJPG stream/snapshot port +device: /dev/video0 # See log for available devices +resolution: 640x480 # x format +max_fps: 15 # If hardware supports it, it will be forced, otherwise ignored/coerced. +#custom_flags: # You can run the stream services with custom flags. +#v4l2ctl: # Add v4l2-ctl parameters to setup your camera, see log for your camera capabilities. diff --git a/moonraker.conf b/moonraker.conf index e5d44cb..68b1d2c 100644 --- a/moonraker.conf +++ b/moonraker.conf @@ -22,6 +22,49 @@ *://my.mainsail.xyz *://app.fluidd.xyz +[notifier discord_klipping] +url: https://discordapp.com/api/webhooks/{secrets.discord_webhook.id}/{secrets.discord_webhook.token} +events: started, complete, error, cancelled, paused, resumed +# The events this notifier should trigger to. '*' means all events. +# You can use multiple events, comma separated. +# Valid events: +# started +# complete +# error +# cancelled +# paused +# resumed +# This parameter must be provided. +body: "Your printer status has changed to {event_name}" +# The body of the notification. This option accepts Jinja2 templates, where +# the template is passed a context containing the following fields: +# event_name: The name of the event that triggered the notification +# (ie: started, complete, error, etc) +# event_args: A list containing the arguments passed to the event. +# See the "Tip" below for additional details on this field. +# event_message: An additional message passed to the notification when +# triggered. This is commonly used when the notification +# is received from Klippy using a gcode_macro. +# The default is a body containing the "name" of the notification as entered +# in the section header. +# body_format: +# # The formatting to use for the body, can be `text`, `html` and `markdown`. +# # The default is `text`. +# title: +# # The optional title of the notification. This option accepts Jinja2 templates, +# # the template will receive a context with the same fields as the body. The +# # default is an empty string as the title. +# attach: +# # One or more items to attach to the notification. This may be a path to a +# # local file or a url (such as a webcam snapshot). Multiple attachments must be +# # separated by a newline. This option accepts Jinja2 templates, the template +# # will receive the same context as the "body" and "title" options. The default +# # is no attachment will be sent with the notification. +# # +# # Note: Attachments are not available for all notification services, you can +# # check if it's supported on the Apprise Wiki. Be aware that links to items +# # hosted on your local network can only be viewed within that network. + [octoprint_compat] [history] @@ -58,3 +101,23 @@ origin: https://github.com/garethky/filaments-klipper-extra.git install_script: install.sh managed_services: klipper + +# Crowsnest update_manager entry +[update_manager crowsnest] +type: git_repo +path: ~/crowsnest +origin: https://github.com/mainsail-crew/crowsnest.git +managed_services: crowsnest +install_script: tools/pkglist.sh + +[include octoeverywhere-system.cfg] + +[update_manager mobileraker] +type: git_repo +path: /home/cory/mobileraker_companion +origin: https://github.com/Clon1998/mobileraker_companion.git +primary_branch:main +managed_services: mobileraker +env: /home/cory/mobileraker-env/bin/python +requirements: scripts/mobileraker-requirements.txt +install_script: scripts/install.sh diff --git a/octoeverywhere-system.cfg b/octoeverywhere-system.cfg new file mode 100644 index 0000000..0b13773 --- /dev/null +++ b/octoeverywhere-system.cfg @@ -0,0 +1,20 @@ +[update_manager octoeverywhere] +type: git_repo +# Using `channel: beta` makes moonraker only update to the lasted tagged commit on the branch. Which lets us control releases. +channel: beta +path: /home/cory/octoeverywhere +origin: https://github.com/QuinnDamerell/OctoPrint-OctoEverywhere.git +# env is deprecated for virtualenv, but for now we can only use one and must use the older option for compat. +env: /home/cory/octoeverywhere-env/bin/python +#virtualenv: /home/cory/octoeverywhere-env +# requirements is deprecated for system_dependencies, but for now we can only use one and must use the older option for compat. +requirements: requirements.txt +# system_dependencies: moonraker-system-dependencies.json +install_script: install.sh +managed_services: + octoeverywhere + +# This allows users of OctoEverywhere to get announcements from the system. +[announcements] +subscriptions: + octoeverywhere diff --git a/octoeverywhere.conf b/octoeverywhere.conf new file mode 100644 index 0000000..e25a562 --- /dev/null +++ b/octoeverywhere.conf @@ -0,0 +1,38 @@ +[relay] +# The port used for http relay. If your desired frontend runs on a different port, change this value. The OctoEverywhere plugin service needs to be restarted before changes will take effect. +frontend_port = 80 +# A string only used by the UI to hint at what web interface this port is. +frontend_type_hint = Mainsail + +[logging] +# The active logging level. Valid values include: DEBUG, INFO, WARNING, or ERROR. +log_level = INFO +max_file_size_mb = 3 +max_file_count = 1 + +[server] + +[webcam] +# This is the webcam name OctoEverywhere will use for Gadget AI, notifications, and such. This much match the camera 'Name' from your Mainsail of Fluidd webcam settings. The default value of 'Default' will pick whatever camera the system can find. +webcam_name_to_use_as_primary = Default +# Enables or disables auto webcam setting detection. If enabled, OctoEverywhere will find the webcam settings configured via the frontend (Fluidd, Mainsail, etc) and use them. Disable to manually set the values and have them not be overwritten. +auto_settings_detection = True +# Webcam streaming URL. This can be a local relative path (ex: /webcam/?action=stream) or absolute http URL (ex: http://10.0.0.1:8080/webcam/?action=stream or http://webcam.local/webcam/?action=stream) +stream_url = /webcam/?action=stream +# Webcam snapshot URL. This can be a local relative path (ex: /webcam/?action=snapshot) or absolute http URL (ex: http://10.0.0.1:8080/webcam/?action=snapshot or http://webcam.local/webcam/?action=snapshot) +snapshot_url = /webcam/?action=snapshot +# Flips the webcam image horizontally. Valid values are True or False +flip_horizontally = False +# Flips the webcam image vertically. Valid values are True or False +flip_vertically = False +# Rotates the webcam image. Valid values are 0, 90, 180, or 270 +rotate = 0 + +[general] +# The temperature in Celsius that the bed must be under to be considered cooled down. This is used to fire the Bed Cooldown Complete notification. +bed_cooldown_threshold_temp_celsius = 40.0 + +[moonraker] +# Leave blank unless your Moonraker requires an API key to connect. Moonraker API keys can be generated from the Mainsail or Fluidd. +moonraker_api_key = + diff --git a/printer.cfg b/printer.cfg index 0c20472..1f91a55 100644 --- a/printer.cfg +++ b/printer.cfg @@ -30,60 +30,68 @@ [printer] kinematics: corexy -max_velocity: 700 -max_accel: 18000 -max_z_velocity: 80 -max_z_accel: 800 +max_velocity: 720 +max_accel: 25000 +max_z_velocity: 100 +max_z_accel: 2000 + ## <---------------------- Motors ----------------------> + +# [manual_stepper test_explode] +# step_pin: PC7 +# dir_pin: PC8 +# enable_pin: !PD2 +# rotation_distance: 40 +# velocity: 5 +# microsteps: 16 +# [tmc2209 manual_stepper test_explode] +# uart_pin: PC6 +# run_current: 2 + # Motor6 # A motor [tmc2209 stepper_y] -uart_pin: PG10 -diag_pin: PC15 -run_current: 1.6 +uart_pin: PC6 #PG10 +#diag_pin: PC15 +run_current: 2 driver_SGTHRS: 255 [stepper_y] # A Stepper +step_pin: PC7 #PG9 +dir_pin: PC8 #PD7 +enable_pin: !PD2 #!PG11 +microsteps: 16 +rotation_distance: 40 +# 80 steps per mm - 1.8 deg - 1/16 microstepping +endstop_pin: ^PF4 +position_min: -0.15 +position_endstop: 257 +position_max: 259.3 +homing_speed: 100 +homing_retract_dist: 5 + +# Motor5 +# B motor +[tmc2209 stepper_x] +uart_pin: PG10 +diag_pin: PC15 +run_current: 2 +driver_SGTHRS: 255 + +[stepper_x] step_pin: PG9 dir_pin: PD7 enable_pin: !PG11 microsteps: 16 rotation_distance: 40 # 80 steps per mm - 1.8 deg - 1/16 microstepping -endstop_pin: ^PF4 -position_min: 0 -position_endstop: 258.2 -position_max: 258.2 -homing_speed: 100 -homing_retract_dist: 5 - -# [gcode_button stepper_y] -# pin: tmc2209_stepper_y:virtual_endstop -# press_gcode: -# {action_respond_info ("stepper_y reports steps lost")} - -# Motor5 -# B motor -[tmc2209 stepper_x] -uart_pin: PG14 -diag_pin: PF0 -run_current: 1.6 -driver_SGTHRS: 255 - -[stepper_x] -step_pin: PG13 -dir_pin: PG12 -enable_pin: !PG15 -microsteps: 16 -rotation_distance: 40 -# 80 steps per mm - 1.8 deg - 1/16 microstepping endstop_pin: printHead:PB6 -position_min: -0.4 -position_endstop: 253 -position_max: 254.4 +position_min: -.3 +position_endstop: 254 +position_max: 254.7 homing_speed: 100 homing_retract_dist: 5 @@ -116,10 +124,10 @@ # 400 steps per mm - 1.8 deg - 1/16 microstepping endstop_pin: probe:z_virtual_endstop # Offset (in mm) for nozzle to bed off z switch -position_max: 250 +position_max: 200 position_min: -2 # Set to -2 to allow room for squaring gantry with quad_gantry_level -homing_speed: 15.0 +homing_speed: 50.0 second_homing_speed: 3.0 homing_retract_dist: 3.0 @@ -178,7 +186,7 @@ [tmc2209 extruder] uart_pin: printHead:PA15 #diag_pin: PF4 -run_current: 0.4 +run_current: .8 #stealthchop_threshold: 999999 [extruder] step_pin: printHead:PD0 @@ -208,6 +216,9 @@ max_temp: 350 pressure_advance: 0.03 +[endstop_phase] + + [heater_bed] heater_pin: PA1 # D11 (servo) on mcu_z @@ -230,78 +241,20 @@ spi_software_miso_pin: printHead:PB2 axes_map: z,-y,x -# [resonance_tester] -# probe_points:125, 125, 20 -# # A list of X, Y, Z coordinates of points (one point per line) to test -# # resonances at. At least one point is required. Make sure that all -# # points with some safety margin in XY plane (~a few centimeters) -# # are reachable by the toolhead. -# accel_chip:adxl345 -# # A name of the accelerometer chip to use for measurements. If -# # adxl345 chip was defined without an explicit name, this parameter -# # can simply reference it as "accel_chip: adxl345", otherwise an -# # explicit name must be supplied as well, e.g. "accel_chip: adxl345 -# # my_chip_name". Either this, or the next two parameters must be -# # set. -# #max_smoothing: -# # Maximum input shaper smoothing to allow for each axis during shaper -# # auto-calibration (with 'SHAPER_CALIBRATE' command). By default no -# # maximum smoothing is specified. Refer to Measuring_Resonances guide -# # for more details on using this feature. -# move_speed: 50 -# # The speed (in mm/s) to move the toolhead to and between test points -# # during the calibration. The default is 50. -# min_freq: 5 -# # Minimum frequency to test for resonances. The default is 5 Hz. -# max_freq: 200 -# # Maximum frequency to test for resonances. The default is 133.33 Hz. -# accel_per_hz: 180 -# # This parameter is used to determine which acceleration to use to -# # test a specific frequency: accel = accel_per_hz * freq. Higher the -# # value, the higher is the energy of the oscillations. Can be set to -# # a lower than the default value if the resonances get too strong on -# # the printer. However, lower values make measurements of -# # high-frequency resonances less precise. The default value is 75 -# # (mm/sec). -# hz_per_sec: 1 -# # Determines the speed of the test. When testing all frequencies in -# # range [min_freq, max_freq], each second the frequency increases by -# # hz_per_sec. Small values make the test slow, and the large values -# # will decrease the precision of the test. The default value is 1.0 -# # (Hz/sec == sec^-2). -# #sweeping_accel: 400 -# # An acceleration of slow sweeping moves. The default is 400 mm/sec^2. -# sweeping_period: 1.2 -# # A period of slow sweeping moves. Setting this parameter to 0 -# # disables slow sweeping moves. Avoid setting it to a too small -# # non-zero value in order to not poison the measurements. -# # The default is 1.2 sec which is a good all-round choice. - [resonance_tester] -probe_points:125, 125, 20 +probe_points: 125, 125, 20 # A list of X, Y, Z coordinates of points (one point per line) to test -# resonances at. At least one point is required. Make sure that all -# points with some safety margin in XY plane (~a few centimeters) -# are reachable by the toolhead. +# resonances at. + accel_chip:adxl345 -# A name of the accelerometer chip to use for measurements. If -# adxl345 chip was defined without an explicit name, this parameter -# can simply reference it as "accel_chip: adxl345", otherwise an -# explicit name must be supplied as well, e.g. "accel_chip: adxl345 -# my_chip_name". Either this, or the next two parameters must be -# set. #max_smoothing: # Maximum input shaper smoothing to allow for each axis during shaper # auto-calibration (with 'SHAPER_CALIBRATE' command). By default no # maximum smoothing is specified. Refer to Measuring_Resonances guide # for more details on using this feature. move_speed: 50 -# The speed (in mm/s) to move the toolhead to and between test points -# during the calibration. The default is 50. -min_freq: 5 -# Minimum frequency to test for resonances. The default is 5 Hz. -max_freq: 200 -# Maximum frequency to test for resonances. The default is 133.33 Hz. +min_freq: 5 #5Hz +max_freq: 200 #133.33 Hz. accel_per_hz: 300 # This parameter is used to determine which acceleration to use to # test a specific frequency: accel = accel_per_hz * freq. Higher the @@ -323,15 +276,16 @@ # disables slow sweeping moves. Avoid setting it to a too small # non-zero value in order to not poison the measurements. # The default is 1.2 sec which is a good all-round choice. + [input_shaper] -shaper_freq_x: 67.2 +shaper_freq_x: 62.4 # A frequency (in Hz) of the input shaper for X axis. This is # usually a resonance frequency of X axis that the input shaper # should suppress. For more complex shapers, like 2- and 3-hump EI # input shapers, this parameter can be set from different # considerations. The default value is 0, which disables input # shaping for X axis. -shaper_freq_y: 50.4 +shaper_freq_y: 49 # A frequency (in Hz) of the input shaper for Y axis. This is # usually a resonance frequency of Y axis that the input shaper # should suppress. For more complex shapers, like 2- and 3-hump EI @@ -339,14 +293,6 @@ # considerations. The default value is 0, which disables input # shaping for Y axis. shaper_type: mzv -# A type of the input shaper to use for both X and Y axes. Supported -# shapers are zv, mzv, zvd, ei, 2hump_ei, and 3hump_ei. The default -# is mzv input shaper. -#shaper_type_x: -#shaper_type_y: -# If shaper_type is not set, these two parameters can be used to -# configure different input shapers for X and Y axes. The same -# values are supported as for shaper_type parameter. #damping_ratio_x: 0.1 #damping_ratio_y: 0.1 # Damping ratios of vibrations of X and Y axes used by input shapers @@ -360,80 +306,81 @@ #*# [probe_eddy_current btt_eddy] #*# reg_drive_current = 15 #*# calibrate = -#*# 0.050000:3254840.950,0.090000:3254038.247,0.130000:3253184.005, -#*# 0.170000:3252355.401,0.210000:3251503.546,0.250000:3250639.388, -#*# 0.290000:3249851.346,0.330000:3249025.785,0.370000:3248238.400, -#*# 0.410000:3247411.413,0.450000:3246660.458,0.490000:3245913.457, -#*# 0.530000:3245110.676,0.570000:3244364.628,0.610000:3243645.827, -#*# 0.650000:3242903.698,0.690000:3242174.651,0.730000:3241445.326, -#*# 0.770000:3240729.701,0.810000:3240035.623,0.850000:3239363.358, -#*# 0.890000:3238647.103,0.930000:3238003.069,0.970000:3237315.659, -#*# 1.010000:3236687.632,1.050000:3236011.661,1.090000:3235376.959, -#*# 1.130000:3234755.870,1.170000:3234154.855,1.210000:3233519.906, -#*# 1.250000:3232913.198,1.290000:3232330.803,1.330000:3231753.779, -#*# 1.370000:3231167.235,1.410000:3230605.143,1.450000:3230029.933, -#*# 1.490000:3229521.827,1.530000:3228961.641,1.570000:3228445.910, -#*# 1.610000:3227893.857,1.650000:3227396.802,1.690000:3226856.513, -#*# 1.730000:3226393.601,1.770000:3225918.199,1.810000:3225438.664, -#*# 1.850000:3224948.550,1.890000:3224475.487,1.930000:3224019.298, -#*# 1.970000:3223564.196,2.010000:3223141.342,2.050000:3222704.656, -#*# 2.090000:3222236.810,2.130000:3221837.792,2.170000:3221454.804, -#*# 2.210000:3221034.143,2.250000:3220625.848,2.290000:3220239.739, -#*# 2.330000:3219841.161,2.370000:3219455.689,2.410000:3219085.904, -#*# 2.450000:3218742.889,2.490000:3218354.527,2.530000:3218022.797, -#*# 2.570000:3217652.881,2.610000:3217319.394,2.650000:3216962.677, -#*# 2.690000:3216642.925,2.730000:3216302.130,2.770000:3215984.868, -#*# 2.810000:3215673.145,2.850000:3215376.179,2.890000:3215055.630, -#*# 2.930000:3214770.110,2.970000:3214462.507,3.010000:3214205.486, -#*# 3.050000:3213889.934,3.090000:3213601.833,3.130000:3213320.754, -#*# 3.170000:3213065.155,3.210000:3212768.131,3.250000:3212538.956, -#*# 3.290000:3212261.986,3.330000:3212017.981,3.370000:3211760.096, -#*# 3.410000:3211519.768,3.450000:3211266.290,3.490000:3211039.665, -#*# 3.530000:3210784.911,3.570000:3210564.365,3.610000:3210310.151, -#*# 3.650000:3210119.879,3.690000:3209885.936,3.730000:3209680.667, -#*# 3.770000:3209449.736,3.810000:3209260.451,3.850000:3209028.158, -#*# 3.890000:3208839.791,3.930000:3208634.539,3.970000:3208450.930, -#*# 4.010000:3208275.037,4.050000:3208066.648 +#*# 0.050000:3248992.977,0.090000:3248218.803,0.130000:3247471.878, +#*# 0.170000:3246699.782,0.210000:3245926.407,0.250000:3245198.397, +#*# 0.290000:3244460.932,0.330000:3243757.345,0.370000:3243057.581, +#*# 0.410000:3242343.748,0.450000:3241696.531,0.490000:3240979.897, +#*# 0.530000:3240333.626,0.570000:3239679.754,0.610000:3239048.199, +#*# 0.650000:3238400.510,0.690000:3237741.258,0.730000:3237131.266, +#*# 0.770000:3236542.225,0.810000:3235913.301,0.850000:3235317.521, +#*# 0.890000:3234750.382,0.930000:3234177.752,0.970000:3233609.608, +#*# 1.010000:3233030.289,1.050000:3232467.422,1.090000:3231930.513, +#*# 1.130000:3231398.508,1.170000:3230843.616,1.210000:3230358.353, +#*# 1.250000:3229819.518,1.290000:3229334.473,1.330000:3228806.421, +#*# 1.370000:3228341.012,1.410000:3227854.084,1.450000:3227370.747, +#*# 1.490000:3226903.490,1.530000:3226444.670,1.570000:3225985.745, +#*# 1.610000:3225555.545,1.650000:3225084.112,1.690000:3224667.188, +#*# 1.730000:3224242.675,1.770000:3223820.449,1.810000:3223423.567, +#*# 1.850000:3222999.508,1.890000:3222613.389,1.930000:3222215.942, +#*# 1.970000:3221817.986,2.010000:3221449.885,2.050000:3221050.923, +#*# 2.090000:3220690.886,2.130000:3220327.441,2.170000:3219991.307, +#*# 2.210000:3219631.212,2.250000:3219288.833,2.290000:3218958.490, +#*# 2.330000:3218604.015,2.370000:3218292.393,2.410000:3217965.074, +#*# 2.450000:3217631.545,2.490000:3217328.727,2.530000:3217013.855, +#*# 2.570000:3216720.232,2.610000:3216403.896,2.650000:3216129.142, +#*# 2.690000:3215836.894,2.730000:3215554.115,2.770000:3215258.961, +#*# 2.810000:3214982.868,2.850000:3214724.878,2.890000:3214443.528, +#*# 2.930000:3214186.681,2.970000:3213935.024,3.010000:3213682.629, +#*# 3.050000:3213407.280,3.090000:3213161.813,3.130000:3212921.718, +#*# 3.170000:3212698.836,3.210000:3212469.583,3.250000:3212243.220, +#*# 3.290000:3212016.664,3.330000:3211780.315,3.370000:3211569.298, +#*# 3.410000:3211363.042,3.450000:3211131.288,3.490000:3210948.948, +#*# 3.530000:3210700.212,3.570000:3210515.278,3.610000:3210323.258, +#*# 3.650000:3210131.802,3.690000:3209926.409,3.730000:3209738.547, +#*# 3.770000:3209567.757,3.810000:3209372.729,3.850000:3209203.001, +#*# 3.890000:3209011.108,3.930000:3208828.738,3.970000:3208652.425, +#*# 4.010000:3208484.230,4.050000:3208305.122 +#*# z_offset = 2.470 #*# #*# [temperature_probe btt_eddy] -#*# calibration_temp = 37.563538 +#*# calibration_temp = 61.076593 #*# drift_calibration = -#*# 3272333.682265, -526.989413, 2.607138 -#*# 3258251.109151, -387.159505, 1.632471 -#*# 3244617.878134, -215.564759, 0.452720 -#*# 3233871.493027, -96.278221, -0.324104 -#*# 3225894.041120, -30.996016, -0.674966 -#*# 3219244.051778, 28.071158, -1.026192 -#*# 3214408.266035, 57.370842, -1.164652 -#*# 3210042.647922, 96.846177, -1.427595 -#*# 3207049.634270, 106.935506, -1.439385 -#*# drift_calibration_min_temp = 40.822170811255326 +#*# 3277089.828307, -775.651773, 4.810993 +#*# 3261545.180298, -579.956600, 3.426963 +#*# 3248118.318891, -404.120980, 2.166198 +#*# 3237513.799188, -276.985549, 1.271068 +#*# 3229028.980244, -183.347096, 0.646311 +#*# 3222293.387611, -109.766997, 0.131264 +#*# 3217038.033583, -55.723013, -0.254085 +#*# 3213241.984530, -32.192221, -0.371700 +#*# 3209092.182257, 26.485570, -0.829836 +#*# drift_calibration_min_temp = 44.026365802699054 #*# #*# [bed_mesh default] #*# version = 1 #*# points = -#*# 0.137485, 0.147651, 0.147765, 0.144464, 0.140674, 0.133303, 0.141993, 0.143746, 0.142624, 0.147563, 0.141592, 0.131627, 0.137083, 0.131629, 0.126803, 0.121864, 0.115289, 0.110268, 0.106071, 0.098738, 0.094542, 0.091574, 0.094923, 0.081787, 0.080043, 0.069332, 0.065545, 0.060891, 0.057940, 0.049297, 0.041405, 0.034115, 0.035432, 0.032680, 0.025104, 0.017528, 0.014022, 0.005916, -0.006553, -0.030834 -#*# 0.099253, 0.119941, 0.119308, 0.122697, 0.120227, 0.121462, 0.115001, 0.123932, 0.118524, 0.120344, 0.123731, 0.123818, 0.121263, 0.123013, 0.117557, 0.105358, 0.099253, 0.103732, 0.091804, 0.089150, 0.086181, 0.078617, 0.077388, 0.072711, 0.066348, 0.060848, 0.059574, 0.053517, 0.046310, 0.037184, 0.033397, 0.029590, 0.026181, 0.030763, 0.020426, 0.017057, 0.009718, 0.000882, 0.001116, -0.013491 -#*# 0.103134, 0.115604, 0.116522, 0.113652, 0.115489, 0.113050, 0.113567, 0.115920, 0.108327, 0.116437, 0.115920, 0.114684, 0.117643, 0.111096, 0.110352, 0.102820, 0.095571, 0.088122, 0.084953, 0.083528, 0.077305, 0.072197, 0.074452, 0.066664, 0.059056, 0.063160, 0.061008, 0.053039, 0.046226, 0.039455, 0.037701, 0.034514, 0.031246, 0.022717, 0.021034, 0.012336, 0.013413, 0.011635, -0.001036, -0.019843 -#*# 0.063678, 0.082099, 0.083412, 0.077820, 0.078733, 0.081387, 0.079445, 0.082415, 0.089548, 0.084754, 0.089465, 0.086695, 0.090776, 0.083610, 0.080501, 0.073424, 0.068099, 0.067065, 0.063762, 0.060692, 0.063878, 0.054235, 0.055752, 0.049414, 0.052799, 0.050448, 0.048979, 0.044994, 0.033398, 0.032880, 0.030155, 0.028110, 0.023747, 0.019957, 0.012712, 0.012105, 0.005605, 0.001628, -0.002580, -0.015872 -#*# 0.045192, 0.059574, 0.061925, 0.061925, 0.058022, 0.060159, 0.065429, 0.066146, 0.059174, 0.059890, 0.058139, 0.060174, 0.060607, 0.062244, 0.054953, 0.050730, 0.051765, 0.048061, 0.042123, 0.042840, 0.043875, 0.034287, 0.041805, 0.039853, 0.036267, 0.031527, 0.030196, 0.023325, 0.021737, 0.016685, 0.016314, 0.019679, 0.013553, 0.003311, 0.004763, -0.000662, -0.004262, -0.010022, -0.013323, -0.031099 -#*# 0.019818, 0.048063, 0.057505, 0.054236, 0.060607, 0.059736, 0.065113, 0.058655, 0.059773, 0.062960, 0.058539, 0.062760, 0.067382, 0.065630, 0.059257, 0.059773, 0.050731, 0.056504, 0.063995, 0.065831, 0.064512, 0.062072, 0.058338, 0.043758, 0.041924, 0.040771, 0.039136, 0.042523, 0.036984, 0.036066, 0.029452, 0.029729, 0.027022, 0.023325, 0.026084, 0.023698, 0.020659, 0.010046, 0.001239, -0.009186 -#*# 0.033398, 0.044793, 0.049413, 0.052084, 0.053917, 0.050331, 0.055670, 0.053001, 0.057422, 0.056904, 0.060090, 0.059974, 0.055470, 0.058512, 0.049095, 0.045192, 0.047262, 0.056186, 0.060091, 0.062244, 0.065230, 0.056069, 0.055152, 0.049214, 0.045828, 0.042123, 0.039454, 0.042006, 0.035232, 0.034287, 0.034833, 0.033280, 0.027534, 0.027160, 0.017761, 0.018231, 0.017995, 0.018273, 0.002098, -0.011234 -#*# 0.010421, 0.028609, 0.037185, 0.035351, 0.036984, 0.045910, 0.046944, 0.050131, 0.046827, 0.052084, 0.052883, 0.055470, 0.055218, 0.049813, 0.042006, 0.049214, 0.043557, 0.041407, 0.042841, 0.039018, 0.041606, 0.042005, 0.039136, 0.041605, 0.035115, 0.042323, 0.041006, 0.037102, 0.030666, 0.039069, 0.028421, 0.032163, 0.026691, 0.030058, 0.027769, 0.028376, 0.020053, 0.026691, 0.016077, 0.004154 -#*# 0.022344, 0.029963, 0.035150, 0.042723, 0.036584, 0.038737, 0.043558, 0.046188, 0.043959, 0.046944, 0.042405, 0.048580, 0.047663, 0.051884, 0.045910, 0.043157, 0.048062, 0.043875, 0.043758, 0.041206, 0.042841, 0.042123, 0.036984, 0.044541, 0.039654, 0.033915, 0.036585, 0.029313, 0.030665, 0.027769, 0.029452, 0.014862, 0.022204, 0.015001, 0.018231, 0.014160, 0.014160, 0.012103, 0.003547, -0.006428 -#*# -0.000053, 0.018977, 0.027300, 0.033398, 0.034289, 0.041488, 0.038737, 0.038736, 0.037501, 0.036784, 0.044075, 0.044156, 0.041405, 0.043675, 0.039854, 0.041605, 0.045392, 0.044792, 0.038619, 0.043958, 0.040570, 0.040983, 0.040488, 0.035750, 0.037820, 0.031127, 0.033480, 0.034633, 0.033597, 0.028845, 0.026927, 0.018507, 0.017154, 0.016077, 0.016452, 0.017762, 0.018602, 0.017011, 0.011262, -0.003933 -#*# 0.010419, 0.010047, 0.000787, 0.000648, 0.006818, 0.007756, 0.008502, 0.007288, 0.014159, 0.009813, 0.010656, 0.009204, 0.013042, 0.011400, 0.001257, 0.010406, 0.007052, 0.000179, 0.001021, 0.003313, 0.006915, 0.006073, 0.005838, 0.009438, -0.002112, 0.000787, -0.000803, -0.005618, -0.011443, -0.009605, -0.002484, -0.007206, -0.014772, -0.013491, -0.016500, -0.012947, -0.016165, -0.021138, -0.025651, -0.042994 -#*# 0.071484, 0.059774, 0.044075, 0.032763, 0.020053, 0.019957, 0.024635, 0.013882, 0.019915, 0.018135, 0.010717, 0.006914, 0.005604, 0.006211, -0.002112, 0.000788, -0.008611, -0.004402, -0.008611, -0.011109, -0.008515, -0.003186, -0.006554, -0.011652, -0.009394, -0.014369, -0.005712, -0.014883, -0.011568, -0.009729, -0.006458, -0.006459, -0.004308, -0.006319, -0.006086, -0.009938, -0.008143, -0.008976, -0.014242, -0.018882 +#*# 0.155325, 0.170343, 0.187973, 0.185017, 0.199637, 0.194614, 0.205981, 0.219908, 0.212049, 0.220595, 0.214537, 0.215389, 0.213100, 0.213368, 0.212514, 0.212514, 0.218467, 0.211026, 0.218893, 0.212940, 0.211026, 0.209864, 0.214111, 0.212198, 0.204225, 0.212222, 0.206902, 0.199357, 0.197547, 0.196166, 0.193404, 0.203400, 0.190641, 0.192849, 0.193406, 0.197337, 0.179287, 0.181335, 0.157104, 0.144856 +#*# 0.147312, 0.159324, 0.175507, 0.183101, 0.178893, 0.173286, 0.185264, 0.174110, 0.189016, 0.190695, 0.194099, 0.197351, 0.193421, 0.186643, 0.198204, 0.184312, 0.177027, 0.190224, 0.185452, 0.183400, 0.183856, 0.184426, 0.196183, 0.182603, 0.186925, 0.179186, 0.175804, 0.173303, 0.175805, 0.179419, 0.173303, 0.168978, 0.176717, 0.171140, 0.179675, 0.176261, 0.166478, 0.169181, 0.163061, 0.152486 +#*# 0.158381, 0.173001, 0.165211, 0.160546, 0.174538, 0.169417, 0.177438, 0.177156, 0.185909, 0.184347, 0.174535, 0.180568, 0.179994, 0.178744, 0.186741, 0.185247, 0.172049, 0.180609, 0.177170, 0.183085, 0.177052, 0.175346, 0.166021, 0.183085, 0.168181, 0.165680, 0.167382, 0.161810, 0.162266, 0.159650, 0.157985, 0.157586, 0.162251, 0.154144, 0.154174, 0.157130, 0.161457, 0.145610, 0.142718, 0.131634 +#*# 0.111378, 0.127757, 0.131670, 0.130052, 0.131617, 0.128719, 0.136337, 0.137485, 0.144159, 0.141030, 0.148358, 0.141760, 0.142179, 0.141865, 0.136337, 0.153728, 0.139464, 0.141030, 0.140690, 0.147184, 0.146454, 0.150526, 0.143855, 0.149281, 0.136451, 0.148863, 0.151122, 0.146254, 0.145002, 0.137599, 0.137599, 0.134884, 0.142605, 0.132899, 0.137908, 0.143855, 0.141441, 0.132781, 0.133305, 0.115361 +#*# 0.091829, 0.099484, 0.111378, 0.112110, 0.114509, 0.123029, 0.120840, 0.121048, 0.116459, 0.121466, 0.116771, 0.117240, 0.116459, 0.115206, 0.123968, 0.119172, 0.126890, 0.117501, 0.119482, 0.125535, 0.126888, 0.126444, 0.115411, 0.119038, 0.124149, 0.121671, 0.117889, 0.116117, 0.114866, 0.121124, 0.121907, 0.118307, 0.112884, 0.111317, 0.117159, 0.120498, 0.116431, 0.114030, 0.104758, 0.083659 +#*# 0.077837, 0.096462, 0.109944, 0.114359, 0.117488, 0.118689, 0.117800, 0.129589, 0.119785, 0.116339, 0.132718, 0.116339, 0.122911, 0.125102, 0.121765, 0.129885, 0.130876, 0.138126, 0.158297, 0.165462, 0.161591, 0.160938, 0.158635, 0.148557, 0.143784, 0.140108, 0.142821, 0.131138, 0.135727, 0.124460, 0.134579, 0.127910, 0.135580, 0.136573, 0.126764, 0.130731, 0.120194, 0.126816, 0.131875, 0.104453 +#*# 0.081067, 0.113132, 0.113238, 0.112613, 0.107919, 0.117932, 0.120122, 0.121791, 0.121791, 0.128779, 0.129927, 0.124617, 0.122971, 0.121825, 0.130638, 0.131108, 0.151097, 0.141643, 0.146336, 0.157524, 0.164295, 0.153935, 0.154026, 0.154512, 0.140497, 0.131526, 0.128813, 0.131266, 0.126830, 0.122952, 0.135940, 0.130778, 0.125246, 0.120241, 0.124937, 0.132654, 0.123682, 0.119511, 0.114816, 0.088395 +#*# 0.082626, 0.111947, 0.113930, 0.123373, 0.120606, 0.130307, 0.124049, 0.130309, 0.127360, 0.134166, 0.134584, 0.142851, 0.135421, 0.128014, 0.140493, 0.141330, 0.127427, 0.131522, 0.146023, 0.145265, 0.144771, 0.143728, 0.148316, 0.136946, 0.135094, 0.140181, 0.145187, 0.137129, 0.142476, 0.131941, 0.132230, 0.126078, 0.135077, 0.131502, 0.128371, 0.133587, 0.149025, 0.140863, 0.121803, 0.121907 +#*# 0.104039, 0.120599, 0.120493, 0.129882, 0.139999, 0.130246, 0.130716, 0.134263, 0.136429, 0.133429, 0.134575, 0.144563, 0.141147, 0.150442, 0.149443, 0.153571, 0.151184, 0.149023, 0.144747, 0.148137, 0.147878, 0.146964, 0.143183, 0.148297, 0.141409, 0.141619, 0.138906, 0.141799, 0.130771, 0.146312, 0.145421, 0.141458, 0.138980, 0.135304, 0.145733, 0.147195, 0.129462, 0.132175, 0.132067, 0.109463 +#*# 0.108755, 0.124017, 0.132572, 0.144852, 0.145505, 0.156103, 0.151417, 0.150505, 0.159492, 0.154827, 0.153797, 0.160969, 0.162788, 0.169615, 0.152950, 0.158582, 0.159036, 0.164953, 0.152668, 0.164810, 0.166203, 0.164157, 0.165659, 0.161992, 0.162874, 0.155135, 0.151725, 0.162132, 0.172541, 0.174249, 0.172714, 0.183120, 0.194119, 0.195921, 0.193161, 0.179709, 0.170041, 0.155475, 0.150929, 0.143053 +#*# 0.125607, 0.144669, 0.146966, 0.147382, 0.160312, 0.171184, 0.170132, 0.167632, 0.175622, 0.164102, 0.168880, 0.168426, 0.167514, 0.163250, 0.163762, 0.159440, 0.168283, 0.165468, 0.158044, 0.152273, 0.151833, 0.156867, 0.165603, 0.166397, 0.165147, 0.156155, 0.162924, 0.165825, 0.186185, 0.201632, 0.217812, 0.241691, 0.249445, 0.255811, 0.245168, 0.216644, 0.192470, 0.169185, 0.153032, 0.115045 +#*# 0.181971, 0.197426, 0.216240, 0.234253, 0.256159, 0.265184, 0.263912, 0.265078, 0.258417, 0.248325, 0.227830, 0.209231, 0.204018, 0.193711, 0.182060, 0.175175, 0.171319, 0.164121, 0.165404, 0.147044, 0.163696, 0.157781, 0.166680, 0.150954, 0.155161, 0.161307, 0.154367, 0.159031, 0.172399, 0.173023, 0.201875, 0.204773, 0.215398, 0.233984, 0.218300, 0.205544, 0.211181, 0.197999, 0.180957, 0.177380 #*# x_count = 40 #*# y_count = 12 #*# mesh_x_pps = 2 #*# mesh_y_pps = 2 #*# algo = bicubic #*# tension = 0.2 -#*# min_x = 15.0 -#*# max_x = 238.86 +#*# min_x = 17.0 +#*# max_x = 236.95999999999998 #*# min_y = 22.0 -#*# max_y = 238.92 +#*# max_y = 236.93999999999994 #*# #*# [extruder] #*# control = pid diff --git a/shell_command.cfg b/shell_command.cfg deleted file mode 100644 index 34e7581..0000000 --- a/shell_command.cfg +++ /dev/null @@ -1,7 +0,0 @@ -[gcode_shell_command hello_world] -command: echo hello world -timeout: 2. -verbose: True -[gcode_macro HELLO_WORLD] -gcode: - RUN_SHELL_COMMAND CMD=hello_world \ No newline at end of file