diff --git a/README.md b/README.md index 68af66b7..d25c36f8 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ Some users have inquired about making donations to support this project (and to - Automated calibration for easy setup - Supports MMU "bypass" gate functionality - Moonraker update-manager support -- Moonraker gcode pre-parsing to extract important print infomation +- Moonraker gcode pre-parsing to extract important print information - Complete persistence of state and statistics across restarts - Highly configurable speed control - Optional integrated encoder driver that validates filament movement, runout, clog detection and flow rate verification! diff --git a/config/addons/blobifier.cfg b/config/addons/blobifier.cfg index 24faf6bb..48bef862 100644 --- a/config/addons/blobifier.cfg +++ b/config/addons/blobifier.cfg @@ -18,7 +18,7 @@ # multicolored print without the need of a purge block and without the flurries of # filament poops consuming your entire 3D printer room. The Blobifier achieves that by # purging onto a retractable tray which causes the filament to turn into a tiny blob -# rather then a large spiral. This keeps the waste relativly small. The bucket should be +# rather then a large spiral. This keeps the waste relatively small. The bucket should be # able to account for up to 200 filament swaps (for the 300mm V2). # The Blobifier uses some room at the back-left side of your printer, depending on your @@ -53,7 +53,7 @@ # variable_user_post_load_extension : `BLOBIFIER` # # Notes on parameters: -# PURGE_LENGTH=[float] (optional) The length to purge. If ommited (default) it will check +# PURGE_LENGTH=[float] (optional) The length to purge. If omitted (default) it will check # the purge_volumes matrix or variable_purge_length. This can be used # to override and for testing. # @@ -97,7 +97,7 @@ variable_wipe_spd_xy: 10000 # Nozzle wipe speed in mm/min. # could be an 'outer contour' acceleration which is usually lower. variable_brush_accel: 0 -# Blobifier sends the toolhead to the maximum y position during purge oeprations and +# Blobifier sends the toolhead to the maximum y position during purge operations and # minimum x position during shake operations. This can cause issues when skew correction # is set up. If you have skew correction enabled and get 'move out of range' errors # regarding blobifier while skew is enabled, try increasing this value. Keep the @@ -222,14 +222,14 @@ variable_part_cooling_fan: 1 # Run it at full speed variable_purge_length_minimum: 30 # The maximum amount of filament (in mm¹) to purge in a single blob. Blobifier will -# automatically purge multiple blobs if the purge amount exeeds this. +# automatically purge multiple blobs if the purge amount exceeds this. variable_purge_length_maximum: 150 # Default purge length to fall back on when neither the tool map purge_volumes or # parameter PURGE_LENGTH is set. variable_purge_length: 150 -# The slicer values often are a bit too wastefull. Tune it here to get optimal values. +# The slicer values often are a bit too wasteful. Tune it here to get optimal values. # 0.6 (60%) is a good starting point. variable_purge_length_modifier: 0.6 @@ -255,7 +255,7 @@ variable_max_blobs: 400 variable_enable_shaker: 1 # The number of back-and-forth motions of one shake variable_bucket_shakes: 10 -# During shaking acceleration can often be higher because you don't neeed to keep print +# During shaking acceleration can often be higher because you don't need to keep print # quality in mind. Higher acceleration helps better with dispersing the blobs. variable_shake_accel: 10000 @@ -454,7 +454,7 @@ gcode: # Purge a tiny bit slowly G1 Z{z_up * (1 - pulse_time_constant)} E{purge_per_pulse * 0.05} F{speed} - # retract and unretract filament every now and then for thourough cleaning + # retract and unretract filament every now and then for thorough cleaning {% if pulse % pulses_per_retract == 0 and pulse > 0 %} G1 E-2 F1800 G1 E2 F800 @@ -632,7 +632,7 @@ gcode: gcode: {% set safe = printer['gcode_macro _BLOBIFIER_SAFE_DESCEND'] %} {action_respond_info( - "BLOBIIER: Safe descend possible:\n - tray: %s\n - brush: %s\n - shake: %s" % + "BLOBIFIER: Safe descend possible:\n - tray: %s\n - brush: %s\n - shake: %s" % ( "yes" if safe.tray else "no", "yes" if safe.brush else "no", diff --git a/config/addons/dc_espooler.cfg b/config/addons/dc_espooler.cfg index 5ec2e6c2..6cb0defc 100644 --- a/config/addons/dc_espooler.cfg +++ b/config/addons/dc_espooler.cfg @@ -30,7 +30,7 @@ variable_min_distance: 200 # For the following examples, let's assume max_step_speed = 50. # And remember actual eSpooler speed values are between 0.0 (off) and 1.0 (full speed) (inclusive) # -# The forumula looks like this: +# The formula looks like this: # ({step_speed} / {max_step_speed}) ^ {step_speed_exponent} # # With step_speed_exponent of 1 would have a linear ratio: diff --git a/config/addons/mmu_erec_cutter.cfg b/config/addons/mmu_erec_cutter.cfg index 1ebedfa4..12e1d53f 100644 --- a/config/addons/mmu_erec_cutter.cfg +++ b/config/addons/mmu_erec_cutter.cfg @@ -29,7 +29,7 @@ description: Empty macro to store the variables gcode: # Leave empty # These variables control the servo movement -variable_servo_closed_angle : 70 ; Servo angle for closed postion with bowden aligned MMU +variable_servo_closed_angle : 70 ; Servo angle for closed position with bowden aligned MMU variable_servo_open_angle : 10 ; Servo angle to open up the cutter and move bowden away from MMU variable_servo_duration : 1.5 ; Time (s) of PWM pulse train to activate servo variable_servo_idle_time : 1.8 ; Time (s) to let the servo to reach it's position diff --git a/config/base/mmu_hardware.cfg b/config/base/mmu_hardware.cfg index 8e31bb76..cd4fbbcc 100644 --- a/config/base/mmu_hardware.cfg +++ b/config/base/mmu_hardware.cfg @@ -13,7 +13,7 @@ # (")_(") Happy Hare Ready # # -# Notes about setup of common external mcus can be found here: +# Notes about setup of common external MCUs can be found here: # https://github.com/moggieuk/Happy-Hare/blob/main/doc/mcu_notes.md # # Note about "touch" endstops: Happy Hare provides extremely flexible homing options using both single steppers or @@ -27,23 +27,23 @@ # - on gear stepper allows for the automatic detection of the extruder entrance # # These sound wonderful right? They are, but there are caveats: -# - Some external mcu's are terrible at detecting stallguard and often result in an "undervoltage error" +# - Some external MCUs are terrible at detecting stallguard and often result in an "undervoltage error" # It is generally possible to get selector touch (TMC2209) tuned especially if you set 'stealthchop_threshold' # to a value greater than homing speeds and less than move speed. I.e. the stepper runs in stealthchop mode when # homing. [klipper experts will know that it switches the chip mode automatically to stealthchop and then back for # Stallguard2 support, however the automatic switching back to spreadcycle at the end homing move seems to provoke -# the error condition and setting 'shealthchop_threshold' appropriately avoids this condition. More than you wanted +# the error condition and setting 'stealthchop_threshold' appropriately avoids this condition. More than you wanted # to know I'm sure! -# - I have not had much luck with touch (stallguard) on the gear stepper with EASY-BRD and ERB mcu's and you really +# - I have not had much luck with touch (stallguard) on the gear stepper with EASY-BRD and ERB MCUs and you really # want the extra torque of spreadcycle so adjusting 'stealthchop_threshold' is not really an option -# - Enabling on the extruder stepper is viable but you will likley have to change jumpers on your main mcu to expose +# - Enabling on the extruder stepper is viable but you will likely have to change jumpers on your main mcu to expose # the DIAG pin for whichever driver the extruder stepper is connected to. # # In summary, "touch" homing with your MMU is an advanced option that requires patience and careful tuning. Everything # works with regular endstops and there are workaround options for certain homing points (like extruder entry) in # the absence of any endstop. I'm really interested in creative setups. Ping me on Discord (moggieuk#6538) # -# See 'mmu.cfg' for serial definition and pins aliaes +# See 'mmu.cfg' for serial definition and pins aliases # # HOMING CAPABLE EXTRUDER (VERY ADVANCED) ----------------------------------------------------------------------------- # With Happy Hare installed even the extruder can be homed. You will find the usual 'endstop' parameters can be added @@ -86,7 +86,7 @@ num_gates: {num_gates} # Number of selectable gates on MMU # NightOwl 1.0 # 3MS 1.0 # 3D Chameleon 1.0 -# Prusa 3.0 NOT YET SUPPORTED - COMMING SOON +# Prusa 3.0 NOT YET SUPPORTED - COMING SOON # Other Generic setup that may require further customization of 'cad' parameters. See doc in mmu_parameters.cfg # mmu_vendor: {mmu_vendor} # MMU family @@ -95,7 +95,7 @@ mmu_version: {mmu_version} # MMU hardware version number (add mod suffix docum # These are set automatically from vendor/version above. Only uncomment and set for custom designs ("Other") #selector_type: {selector_type} # LinearSelector (type-A) or VirtualSelector (type-B) #variable_bowden_lengths: {variable_bowden_lengths} # 1 = If MMU design has different bowden lengths per gate, 0 = bowden length is the same -#variable_rotation_distances: {variable_rotation_distances} # 1 = If MMU design has disimilar drive/BMG gears, thus rotation distance, 0 = One drive gear (e.g. Tradrack) +#variable_rotation_distances: {variable_rotation_distances} # 1 = If MMU design has dissimilar drive/BMG gears, thus rotation distance, 0 = One drive gear (e.g. Tradrack) #require_bowden_move: {require_bowden_move} # 1 = If MMU design has bowden move that is included in load/unload, 0 = zero length bowden (skip bowden move) #filament_always_gripped: {filament_always_gripped} # 1 = Filament is always trapped by MMU (most type-B designs), 0 = MMU can release filament #has_bypass: {has_bypass} # 1 = Bypass gate available, 0 = No filament bypass possible @@ -130,7 +130,7 @@ stealthchop_threshold: 0 # Spreadcycle has more torque and better at speed step_pin: mmu:MMU_GEAR_STEP dir_pin: !mmu:MMU_GEAR_DIR enable_pin: !mmu:MMU_GEAR_ENABLE -rotation_distance: 22.7316868 # Bondtech 5mm Drive Gears. Overriden by 'mmu_gear_rotation_distance' in mmu_vars.cfg +rotation_distance: 22.7316868 # Bondtech 5mm Drive Gears. Overridden by 'mmu_gear_rotation_distance' in mmu_vars.cfg gear_ratio: {gear_gear_ratio} # E.g. ERCF 80:20, Tradrack 50:17 microsteps: 16 # Recommend 16. Increase only if you "step compress" issues when syncing full_steps_per_rotation: 200 # 200 for 1.8 degree, 400 for 0.9 degree @@ -210,7 +210,7 @@ maximum_pulse_width: {maximum_pulse_width} # # OPTIONAL GANTRY SERVO FOR TOOLHEAD FILAMENT CUTTER ------------------------------------------------------------------ # -# (uncomment this section if you have a ganty servo for toolhead cutter pin) +# (uncomment this section if you have a gantry servo for toolhead cutter pin) #[mmu_servo mmu_gantry_servo] #pin: {gantry_servo_pin} #maximum_servo_angle:180 @@ -227,18 +227,18 @@ maximum_pulse_width: {maximum_pulse_width} # ███████╗██║ ╚████║╚██████╗╚██████╔╝██████╔╝███████╗██║ ██║ # ╚══════╝╚═╝ ╚═══╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝ # Encoder measures distance, monitors for runout and clogging and constantly calculates % flow rate -# Note that the encoder_resolution set here is purely a default to get started. It will be correcly set after calibration +# Note that the encoder_resolution set here is purely a default to get started. It will be correctly set after calibration # with the value stored in mmu_vars.cfg # # The encoder resolution will be calibrated but it needs a default approximation # If BMG gear based: -# resolution = bmg_circumfrance / (2 * teeth) +# resolution = bmg_circumference / (2 * teeth) # 24 / (2 * 17) = 0.7059 for TRCT5000 based sensor # 24 / (2 * 12) = 1.0 for Binky with 12 tooth disc # [mmu_encoder mmu_encoder] encoder_pin: ^mmu:MMU_ENCODER # EASY-BRD: ^PA6, Flytech ERB: ^gpio22 -encoder_resolution: {encoder_resolution} # This is just a starter value. Overriden by 'mmu_encoder_resolution' in mmm_vars.cfg +encoder_resolution: {encoder_resolution} # This is just a starter value. Overridden by 'mmu_encoder_resolution' in mmm_vars.cfg desired_headroom: 5.0 # The clog/runout headroom that MMU attempts to maintain (closest point to triggering runout) average_samples: 4 # The "damping" effect of last measurement (higher value means slower clog_length reduction) flowrate_samples: 20 # How many extruder "movements" on the encoder to measure over for flowrate calc @@ -265,7 +265,7 @@ flowrate_samples: 20 # How many extruder "movements" on the encoder to measure # 'sync_feedback_tension_pin' .. pin for switch activated when filament is under tension # 'sync_feedback_compression_pin' .. pin for switch activated when filament is under compression # -# Configuration is flexable: Simply define pins for any sensor you want to enable, if pin is not set (or the alias is empty) +# Configuration is flexible: Simply define pins for any sensor you want to enable, if pin is not set (or the alias is empty) # it will be ignored. You can also just comment out what you are not using. # [mmu_sensors] @@ -342,7 +342,7 @@ color_order: GRBW # Set based on your particular neopixel specification # Note that Happy Hare provides a convenience wrapper [mmu_led_effect] that not only creates an effect on each of the # [mmu_leds] specified segments but also each individual LED for atomic control. See mmu_leds.cfg for examples # -# (this section is harmless and ignored if the 'led_strip' obove doesn't exist - LED support will simply be disabled) +# (this section is harmless and ignored if the 'led_strip' above doesn't exist - LED support will simply be disabled) [mmu_leds] led_strip: neopixel:mmu_leds exit_range: 1-{num_gates} diff --git a/config/base/mmu_macro_vars.cfg b/config/base/mmu_macro_vars.cfg index 93f69383..dd8e9542 100644 --- a/config/base/mmu_macro_vars.cfg +++ b/config/base/mmu_macro_vars.cfg @@ -69,7 +69,7 @@ path: ~/printer_data/gcodes description: Happy Hare optional configuration for print start/end checks gcode: # Leave empty -# These variables control the behavor of the MMU_START_SETUP and MMU_START_LOAD_INITIAL_TOOL macros +# These variables control the behavior of the MMU_START_SETUP and MMU_START_LOAD_INITIAL_TOOL macros variable_user_pre_initialize_extension : '' ; Executed at start of MMU_START_SETUP. Commonly G28 to home variable_home_mmu : False ; True/False, Whether to home mmu before print starts variable_check_gates : True ; True/False, Whether to check filament is loaded in all gates used @@ -163,7 +163,7 @@ description: Happy Hare sequence macro configuration variables gcode: # Leave empty # Parking and movement controls: -# Happy Hare defines 7 operations that may require parking. You can specifiy +# Happy Hare defines 7 operations that may require parking. You can specify # whether to park for each of those operations both during a print and # standalone (not printing) with Happy Hare or when HH is disabled: # @@ -208,7 +208,7 @@ gcode: # Leave empty # last - return to original position before park (frequently the default) # next - return to next print position if possible else last logic will be applied. # In print this reduces dwell time at the last position reducing blobbing -# and unecessary movement. Only applied to "toolchange" operation +# and unnecessary movement. Only applied to "toolchange" operation # none - the toolhead is left wherever it ends up after change. In a print the # next gcode command will restore toolhead x,y position # @@ -233,7 +233,7 @@ variable_enable_park_printing : 'toolchange,runout,load,unload,complete,pause, variable_enable_park_standalone : 'toolchange,load,unload,pause,cancel' ; Empty '' to disable parking variable_enable_park_disabled : 'pause,cancel' ; Empty '' to disable parking -variable_min_toolchange_z : 1.0 ; The absolute minimum saftey floor (z-height) for ALL parking moves +variable_min_toolchange_z : 1.0 ; The absolute minimum safety floor (z-height) for ALL parking moves # These specify the parking location, z_hop and retraction for all enabled operation # types. Each must be 5 values: @@ -296,7 +296,7 @@ variable_user_post_load_extension : '' ; Executed after default logic but be description: Happy Hare toolhead tip cutting macro configuration variables gcode: # Leave empty -# Whether the toolhead tip cutting macro will return toolhead to initial postion +# Whether the toolhead tip cutting macro will return toolhead to initial position # after the cut is complete. If using parking logic it is better to disable this variable_restore_position : False ; True = return to initial position, False = don't return @@ -324,7 +324,7 @@ variable_cutting_axis : "x" ; "x" or "y". Determines cut direction (axis) duri variable_pin_loc_xy : 14, 250 ; x,y coordinates of depressor pin # This distance is added to "pin_loc_x" or "pin_loc_y" depending on the 'cutting_axis' -# to determine the starting position and to create a small saftely distance that aids +# to determine the starting position and to create a small safety distance that aids # in generating momentum variable_pin_park_dist : 5.0 ; Distance in mm @@ -422,8 +422,8 @@ variable_unloading_speed : 18 ; Speed in mm/s for slow move to cooling z # break the string formed. variable_cooling_tube_position : 35 ; Start of cooling tube. DragonST:35, DragonHF:30, Mosquito:30, Revo:35, RapidoHF:27 variable_cooling_tube_length : 10 ; Movement length. DragonST:15, DragonHF:10, Mosquito:20, Revo:10, RapidoHF:10 -variable_initial_cooling_speed : 10 ; Inital slow movement (mm/s) to solidify tip and cool string if formed -variable_final_cooling_speed : 50 ; Fast movement (mm/s) Too fast: tip deformation on eject, Too Slow: long string/no seperation +variable_initial_cooling_speed : 10 ; Initial slow movement (mm/s) to solidify tip and cool string if formed +variable_final_cooling_speed : 50 ; Fast movement (mm/s) Too fast: tip deformation on eject, Too Slow: long string/no separation variable_cooling_moves : 4 ; Number of back and forth cooling moves to make (2-4 is a good start) # Step 4 - Skinnydip diff --git a/config/base/mmu_parameters.cfg b/config/base/mmu_parameters.cfg index 08dedbf0..ee6b21f6 100644 --- a/config/base/mmu_parameters.cfg +++ b/config/base/mmu_parameters.cfg @@ -13,7 +13,7 @@ # (")_(") Happy Hare Ready # # Notes: -# Macro configuration is specifed separately in 'mmu_macro_vars.cfg'. +# Macro configuration is specified separately in 'mmu_macro_vars.cfg'. # Full details in https://github.com/moggieuk/Happy-Hare/tree/main/doc/configuration.md # [mmu] @@ -27,12 +27,12 @@ happy_hare_version: {happy_hare_version} # Don't mess, used for upgrade detect # ███████╗██║██║ ╚═╝ ██║██║ ██║ ███████║ # ╚══════╝╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚══════╝ # -# Define the physical limits of your MMU. These setings will be respected regardless of individual speed settings. +# Define the physical limits of your MMU. These settings will be respected regardless of individual speed settings. # gear_max_velocity: 300 # Never to be exceeded gear velocity regardless of specific parameters -gear_max_accel: 1500 # Never to be exceeded gear accelaration regardless of specific parameters +gear_max_accel: 1500 # Never to be exceeded gear acceleration regardless of specific parameters selector_max_velocity: 250 # Never to be exceeded selector velocity regardless of specific parameters -selector_max_accel: 1200 # Never to be exceeded selector accelaration regardless of specific parameters +selector_max_accel: 1200 # Never to be exceeded selector acceleration regardless of specific parameters # Servo configuration ------------------------------------------------------------------------------------------------- @@ -100,9 +100,9 @@ log_startup_status: 1 # Whether to log tool to gate status on startup, 1 = sum # NOTE: Encoder cannot keep up much above 350mm/s so make sure 'bowden_apply_correction' is off at very high speeds! # gear_from_buffer_speed: 150 # mm/s Normal speed when loading filament. Conservative is 100mm/s, Max around 300mm/s -gear_from_buffer_accel: 400 # Normal accelaration when loading filament +gear_from_buffer_accel: 400 # Normal acceleration when loading filament gear_from_spool_speed: 80 # mm/s Use (lower) speed when loading for the first time (i.e. pulling from spool) -gear_from_spool_accel: 100 # Accelaration when loading from spool +gear_from_spool_accel: 100 # Acceleration when loading from spool # gear_short_move_speed: 80 # mm/s Speed when making short moves (like incremental retracts with encoder) gear_short_move_accel: 600 # Usually the same as gear_from_buffer_accel (for short movements) @@ -117,7 +117,7 @@ extruder_sync_load_speed: 18 # mm/s speed of synchronized extruder load moves extruder_sync_unload_speed: 18 # mm/s speed of synchronized extruder unload moves extruder_homing_speed: 18 # mm/s speed of extruder only homing moves (e.g. to toolhead sensor) -# Selector movement speeds. (Accelaration is defined by physical MMU limits set above and passed to selector stepper driver) +# Selector movement speeds. (Acceleration is defined by physical MMU limits set above and passed to selector stepper driver) # selector_move_speed: 200 # mm/s speed of selector movement (not touch) selector_homing_speed: 60 # mm/s speed of initial selector homing move (not touch) @@ -131,7 +131,7 @@ selector_touch_enable: 0 # If selector touch operation configured this can be u # When Happy Hare calls out to a macro for user customization and for parking moves these settings are applied and the previous # values automatically restored afterwards. This allows for deterministic movement speed regardless of the starting state. # -macro_toolhead_max_accel: 0 # Default printer toolhead accelaration applied when macros are run. 0 = use printer max +macro_toolhead_max_accel: 0 # Default printer toolhead acceleration applied when macros are run. 0 = use printer max macro_toolhead_min_cruise_ratio: 0.5 # Default printer cruise ratio applied when macros are run @@ -143,13 +143,13 @@ macro_toolhead_min_cruise_ratio: 0.5 # Default printer cruise ratio applied when # ╚██████╔╝██║ ██║ ██║ ███████╗ ███████╗╚██████╔╝██║ ██║██████╔╝ # ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚══════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝╚═════╝ # -# These setttings control the loading and unloading filament at the gate. The primary options are you use a endstop switch +# These settings control the loading and unloading filament at the gate. The primary options are you use a endstop switch # at the gate (ala TradRack) or an encoder (ERCF default). You can even have both a gate sensor for loading/parking and # still use the encoder for other move verification (see advanced 'gate_endstop_to_encoder' option). # Note: the `encoder` method, due to the nature of its operation will overshoot a little. This is not a problem in practice # because the overshoot will simply be compensated for in the subsequent fast bowden move. # -# Possible gate_homing_endtop names: +# Possible gate_homing_endstop names: # encoder - Detect filament position using movement of the encoder # mmu_gate - Use gate endstop # mmu_gear - Use individual per-gate endstop (type-B MMU's) @@ -160,7 +160,7 @@ gate_homing_max: 70 # Maximum move distance to home to the gate (actual move d gate_preload_homing_max: 70 # Maximum homing distance to the mmu_gear endstop (if MMU is fitted with one) gate_unload_buffer: 50 # Amount to reduce the fast unload so that filament doesn't overshoot when parking gate_load_retries: 2 # Number of times MMU will attempt to grab the filament on initial load (max 5) -gate_parking_distance: 23 # Parking postion in the gate (distance back from gate endstop/encoder point) +gate_parking_distance: 23 # Parking position in the gate (distance back from gate endstop/encoder point) gate_endstop_to_encoder: 10 # Distance between gate endstop and encoder (IF both fitted. +ve if encoder after endstop) gate_autoload: 1 # If pre-gate sensor fitted this controls the automatic loading of the gate gate_final_eject_distance: 0 # Distance to eject filament on EJECT rather than UNLOAD @@ -187,7 +187,7 @@ bowden_pre_unload_test: 1 # 1 to check for bowden movement before full pull (sl # ADVANCED: If pre-unload test is enabled, this controls the detection of successful bowden pre-unload test and represents # the fraction of allowable mismatch between actual movement and that seen by encoder. Setting to 50% tolerance usually -# works well. Increasing will make test more tolerent. Value of 100% essentially disables error detection +# works well. Increasing will make test more tolerant. Value of 100% essentially disables error detection bowden_pre_unload_error_tolerance: 50 @@ -202,22 +202,22 @@ bowden_pre_unload_error_tolerance: 50 # Happy Hare needs a reference "homing point" close to the extruder from which to accurately complete the loading of # the toolhead. This homing operation takes place after the fast bowden load and it is anticipated that that load # operation will leave the filament just shy of the homing point. If using a toolhead sensor this initial extruder -# homing is unecessary (but can be forced) because the homing will occur inside the extruder for the optimum in accuracy. +# homing is unnecessary (but can be forced) because the homing will occur inside the extruder for the optimum in accuracy. # -# In addition to an entry sensor "mmu_extruder" it is possbile for Happy Hare to "feel" for the extruder gear entry +# In addition to an entry sensor "mmu_extruder" it is possible for Happy Hare to "feel" for the extruder gear entry # by colliding with it. Because this method is not completely deterministic you might find have to find the sweetspot # for your setup by adjusting the TMC current reduction. Also, touch (stallguard) sensing is possible to configure but -# unfortunately doesn't work well with some external mcu's. Note that reduced current during collision detection can -# also prevent unecessary filament griding +# unfortunately doesn't work well with some external MCUs. Note that reduced current during collision detection can +# also prevent unnecessary filament grinding # -# Possible homing_endtop names: +# Possible homing_endstop names: # collision - Detect the collision with the extruder gear by monitoring encoder movement (Requires encoder) # Fast bowden load will move to the extruder gears # mmu_gear_touch - Use touch detection when the gear stepper hits the extruder (Requires stallguard) # Fast bowden load will move to extruder_homing_buffer distance before extruder gear # extruder - If you have a "filament entry" endstop configured (Requires 'extruder' endstop) # Fast bowden load will move to extruder_homing_buffer distance before sensor -# none - Don't attempt to home. Only possibiliy if lacking all sensor options +# none - Don't attempt to home. Only possibility if lacking all sensor options # Fast bowden load will move to the extruder gears. Fine if using toolhead sensor # Note: The homing_endstop will be ignored if a toolhead sensor is available unless `extruder_force_homing: 1` # @@ -227,7 +227,7 @@ extruder_homing_buffer: 25 # Amount to reduce the fast bowden load so filament extruder_collision_homing_current: 30 # % gear_stepper current (10%-100%) to use when homing to extruder homing (100 to disable) # In the absence of a toolhead sensor Happy Hare will automatically default to extruder entrance detection regardless -# of this setting, however if you have a toolhead sensor you can still force the additional (unecessary) step of +# of this setting, however if you have a toolhead sensor you can still force the additional (unnecessary) step of # initially homing to extruder entrance then home to the toolhead sensor # extruder_force_homing: 0 @@ -247,7 +247,7 @@ extruder_force_homing: 0 # macros in mmu_sequence.cfg - but be careful! # # An MMU must have a known point at the end of the bowden from which it can precisely load the extruder. Generally this -# will either be the extruder extrance (which is controlled with settings above) or by homing to toolhead sensor. If +# will either be the extruder entrance (which is controlled with settings above) or by homing to toolhead sensor. If # you have toolhead sensor it is past the extruder gear and the driver needs to know the max distance (from end of # bowden move) to attempt homing # @@ -266,7 +266,7 @@ toolhead_sensor_to_nozzle: 62 # Distance from toolhead sensor to nozzle (ignore toolhead_entry_to_extruder: 8 # Distance from extruder "entry" sensor to extruder gears (ignored if not fitted) # This setting represents how much residual filament is left behind in the nozzle when filament is removed, it is thus -# used to reduce the extruder loading length and prevent excessive blobing but also in the calculation of purge volume. +# used to reduce the extruder loading length and prevent excessive blobbing but also in the calculation of purge volume. # Note that this value can also be measured with the `MMU_CALIBRATE_TOOLHEAD` procedure # toolhead_residual_filament: 0 # Reduction in extruder loading length because of residual filament left behind @@ -283,7 +283,7 @@ toolhead_ooze_reduction: 0 # Reduction in extruder loading length to prevent oo # Distance added to the extruder unload movement to ensure filament is free of extruder. This adds some degree of tolerance # to slightly incorrect configuration or extruder slippage. However don't use as an excuse for incorrect toolhead settings # -toolhead_unload_safety_margin: 10 # Extra movement saftey margin (default: 10mm) +toolhead_unload_safety_margin: 10 # Extra movement safety margin (default: 10mm) # If not synchronizing gear and extruder and you experience a "false" clog detection immediately after the tool change # it might be because of a long bowden and/or large internal diameter that causes slack in the filament. This optional @@ -309,7 +309,7 @@ toolhead_move_error_tolerance: 60 # ██║ ██║██║ ██║ ╚██████╔╝██║ ██║██║ ╚═╝ ██║██║██║ ╚████║╚██████╔╝ # ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ╚═════╝ # -# Tip forming responsibity can be split between slicer (in-print) and standalone macro (not in-print) or forced to always +# Tip forming responsibility can be split between slicer (in-print) and standalone macro (not in-print) or forced to always # be done by Happy Hare's standalone macro. Since you always need the option to form tips without the slicer so it is # generally easier to completely turn off the slicer, force "standalone" tip forming and tune only in Happy Hare. # @@ -434,7 +434,7 @@ t_macro_color: slicer # 'slicer' = default | 'allgates' = mmu | 'gatemap' = mm # Options: pre_unload, unload, post_unload, pre_load, load, post_load, total console_stat_columns: unload, load, post_load, total -# Comma seperated list of rows. The order determines the order in which they're shown. +# Comma separated list of rows. The order determines the order in which they're shown. # Options: total, total_average, job, job_average, last console_stat_rows: total, total_average, job, job_average, last @@ -458,9 +458,9 @@ console_always_output_full: 1 # 1 = Show full table, 0 = Only show totals out of # # Important you verify these work for you setup/workflow. Temperature and timeouts # -timeout_pause: 72000 # Idle time out (printer shutsdown) in seconds used when in MMU pause state +timeout_pause: 72000 # Idle time out (printer shuts down) in seconds used when in MMU pause state disable_heater: 600 # Delay in seconds after which the hotend heater is disabled in the MMU_PAUSE state -default_extruder_temp: 200 # Default temperature for performing swaps and forming tips when not in print (overriden by gate map) +default_extruder_temp: 200 # Default temperature for performing swaps and forming tips when not in print (overridden by gate map) extruder_temp_variance: 2 # When waiting for extruder temperature this is the +/- permissible variance in degrees (>= 1) # # These are auto calibration/tuning settings. Once the gear rotation_distance and encoder are calibrated, enabling these options @@ -484,14 +484,14 @@ filament_recovery_on_pause: 1 # 1 = Run a quick check to determine current filam retry_tool_change_on_error: 0 # Whether to automatically retry a failed tool change. If enabled Happy Hare will perform # the equivalent of 'MMU_RECOVER' + 'Tx' commands which usually is all that is necessary # to recover. Note that enabling this can mask problems with your MMU -bypass_autoload: 1 # If entruder sensor fitted this controls the automatic loading of extruder for bypass operation +bypass_autoload: 1 # If extruder sensor fitted this controls the automatic loading of extruder for bypass operation # # Advanced options. Don't mess unless you fully understand. Read documentation. # encoder_move_validation: 1 # ADVANCED: 1 = Normally Encoder validates move distances are within given tolerance # 0 = Validation is disabled (eliminates slight pause between moves but less safe) print_start_detection: 1 # ADVANCED: Enabled for Happy Hare to automatically detect start and end of print and call - # ADVANCED: MMU_START_PRINT and MMU_END_PRINT automatically. Harmles to leave enabled but can disable + # ADVANCED: MMU_START_PRINT and MMU_END_PRINT automatically. Harmless to leave enabled but can disable # if you think it is causing problems and known START/END is covered in your macros extruder: extruder # ADVANCED: Name of the toolhead extruder that MMU is using gcode_load_sequence: 0 # VERY ADVANCED: Gcode loading sequence 1=enabled, 0=internal logic (default) @@ -508,7 +508,7 @@ homing_extruder: 1 # CAUTION: Normally this should be 1. 0 will disable the hom # ╚═╝ ╚═╝╚══════╝╚═╝╚═╝ ╚═╝ ╚══════╝╚═╝ ╚═╝ # # Timer too close is a catch all error, however it has been found to occur on some systems during homing and probing -# operations especially so with CANbus connected mcus. Happy Hare uses many homing moves for reliable extruder loading +# operations especially so with CANbus connected MCUs. Happy Hare uses many homing moves for reliable extruder loading # and unloading and enabling this option affords klipper more tolerance and avoids this dreaded error # update_trsync: 0 # 1 = Increase TRSYNC_TIMEOUT, 0 = Leave the klipper default @@ -518,7 +518,7 @@ update_trsync: 0 # 1 = Increase TRSYNC_TIMEOUT, 0 = Leave the klipper default # working well in practice canbus_comms_retries: 3 # Number of retries. Recommend the default of 3. # -# Older neopixels have very finiky timing and can generate lots of "Unable to obtain 'neopixel_result' response" +# Older neopixels have very finicky timing and can generate lots of "Unable to obtain 'neopixel_result' response" # errors in klippy.log. An often cited workaround is to increase BIT_MAX_TIME in neopixel.py. This option does that # automatically for you to save dirtying klipper update_bit_max_time: 1 # 1 = Increase BIT_MAX_TIME, 0 = Leave the klipper default @@ -584,7 +584,7 @@ espooler_stop_macro: '' # Called to stop eSpooler if fitted (params: GATE, D # # Normally all these settings are set based on your choice of 'mmu_vendor' and 'mmu_version' in mmu_hardware.cfg, but they # can be overridden. If you have selected a vendor of "Other" and your MMU has a selector you must set these CAD based -# dimensions else you will get arbitary defaults. You may also need to set additional attributes in '[mmu_machine]' +# dimensions else you will get arbitrary defaults. You may also need to set additional attributes in '[mmu_machine]' # section of mmu_hardware.cfg. # #cad_gate0_pos: 4.2 # Approximate distance from endstop to first gate. Used for rough calibration only diff --git a/config/base/mmu_sequence.cfg b/config/base/mmu_sequence.cfg index 0ecfec4e..b587f189 100644 --- a/config/base/mmu_sequence.cfg +++ b/config/base/mmu_sequence.cfg @@ -15,7 +15,7 @@ # # # These skeleton macros define all the callbacks made during filament loading or unloading. They can be extended with -# the user command addtions (see 'mmu_macro_vars.cfg') or can be used as templates for completely custom macros. Note +# the user command additions (see 'mmu_macro_vars.cfg') or can be used as templates for completely custom macros. Note # the SAVE/RESTORE_GCODE_STATE wrapper pattern is precautionary # # The ordering of these macros is as follows (if any are not defined they are skipped): @@ -36,7 +36,7 @@ # # Notes: # 1. When the MMU is enabled Happy Hare implement z-hop and retraction portion of the moves on toolchange, runout, -# pauses and mmu errors (while in print) as well as the un-retraction and return to print postioning. The reason +# pauses and mmu errors (while in print) as well as the un-retraction and return to print positioning. The reason # for this is print quality, speed and safety. However the configuration is still defined in mmu_macro_vars. # 2. Pressure advance will automatically be cleared prior and restored after tip forming # 3. M220 & M221 overrides will be retained after a toolchange @@ -46,7 +46,7 @@ # When the MMU is disabled, the supplied client_macros.cfg will take over retraction and z-hop moves using the # same configuration which is why they are recommended rather than using alternatives # -# Leveraging the user defined macro callbacks is usually sufficent for customization, however if you really want to +# Leveraging the user defined macro callbacks is usually sufficient for customization, however if you really want to # do something unusual you can enable the gcode loading/unloading sequences by setting the following in 'mmu_parameters.cfg' # # 'gcode_load_sequence: 1' @@ -420,8 +420,8 @@ gcode: {% set vars = printer['gcode_macro _MMU_SEQUENCE_VARS'] %} # This is a good place to inject logic to, for example, perform tip - # cutting when cutter is located at the MMU, thus preping the unloaded - # filment for next use (e.g. EREC) + # cutting when cutter is located at the MMU, thus prepping the unloaded + # filament for next use (e.g. EREC) {vars.user_post_unload_extension|default("")} @@ -470,7 +470,7 @@ gcode: ########################################################################### # ADVANCED ADVANCED ADVANCED ADVANCED ADVANCED ADVANCED -# User modifable loading and unloading sequences +# User modifiable loading and unloading sequences # # By default Happy Hare will call internal logic to handle loading and unloading # sequences. To enable the calling of user defined sequences you must add the diff --git a/config/base/mmu_software.cfg b/config/base/mmu_software.cfg index 3aef13d2..bc3fd728 100644 --- a/config/base/mmu_software.cfg +++ b/config/base/mmu_software.cfg @@ -321,7 +321,7 @@ gcode: 'PETG': {'hot_temp': 250, 'cold_temp': 45, 'pull_temp': 100, 'min_extrude_temp': 180} } %} {% if material not in materials %} - {action_raise_error("Unknown material. Valid types are: Nylon, ABS, PLA, PTEG")} + {action_raise_error("Unknown material. Valid types are: Nylon, ABS, PLA, PETG")} {% endif %} # Allow individual temperature overrides. Coded like this so Mainsail can parse options @@ -400,7 +400,7 @@ gcode: ########################################################################### -# Helper macros to display dialog in supporting UI's when MMU pauses +# Helper macros to display dialog in supporting UIs when MMU pauses # [gcode_macro _MMU_ERROR_DIALOG] description: Helper to display pause dialog @@ -446,7 +446,7 @@ gcode: ########################################################################### -# Simplified subset of commands just for macro visability in +# Simplified subset of commands just for macro visibility in # Mainsail/Fluidd UI (until custom HH panel is complete!) # The __ is a trick because it is not displayed by the UI but allows for # similar names to the real commands defined by the klipper module