Print-Tuning-Guide
EnragedRabbitProject | Print-Tuning-Guide | |
---|---|---|
87 | 320 | |
2,224 | 1,890 | |
- | - | |
0.0 | 4.0 | |
4 months ago | about 2 months ago | |
Python | Python | |
GNU General Public License v3.0 only | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
EnragedRabbitProject
-
Multi mcu k1 max?
Maybe read the docs: https://github.com/EtteGit/EnragedRabbitProject/tree/main/Documentation
-
P1S here, when X1E & X1S?
EnragedRabbitProject
- ams system recommendation.
-
Extruder question on new R2 build
Personally, I've almost driven myself nuts in getting ClockWork2 to work reliably ever since it was made public but was never satisfied due to it seemingly not coping well with the increased friction coming from my use of an ERCF as part of my System.
-
Voron 2.4 kit - first timer - questions about kits, profiles and multimaterial
For single extruder multi-material like the Prusa MMU, there is the Enraged Rabbit Carrot Feeder: https://github.com/EtteGit/EnragedRabbitProject
- Rabbit is happy.
-
Bambu Blogpost: Congratulating Prusa and Creality, doubles down on patents.
I'm not entirely sure on that either. The Enraged Rabbit Carrot feeder seems to have almost all of the AMU's secret sauce (with the exception of the single multispool drive unit on the ERCF vs the AMU's multiple independent ones). In all honesty if Bambu was going down this route I would have preferred they leaned in on their proprietary motor control hardware (h-bridge and in house firmware) vs the industry standard TMC derived controller hardware. I think that the situation of having 20+ of the worlds 26 3d printer companies within the same metro area in a country that has the most loosy goosey state industrial/disaster capitalism model in human history is going to get us (in our corner of the world) in some serious s^$#.
-
Just got my ERCF kit. What parts do I need to print. There is no guide and it is extremely confusing.
You should print the calibration part here : https://github.com/EtteGit/EnragedRabbitProject/blob/main/Carrot_Feeder/Stls/Tools/Calib_Test.stl
-
Help! ERCF keeps pausing at around 80%.
https://github.com/EtteGit/EnragedRabbitProject/blob/no_toolhead_sensor/Documentation/ERCF_Manual.pdf page 116 shows the correct configuration for SuperSlicer. What slicer are you using?
-
Is a well-built voron 2.4/Trident as reliable as a Prusa MK3S?
Owning both I'd say there's no reason to be concerned about reliability being an issue - At least not without also incorporating an ERCF into the Mix which may give some frustrations at times ( I highly recommend going with the Happy Hare Software Suite instead of the default one ).
Print-Tuning-Guide
-
Can't get Klipper to probe bed before print.
# This file contains pin mappings for the Creality "v4.2.7" board. To # use this config, during "make menuconfig" select the STM32F103 with # a "28KiB bootloader" and serial (on USART1 PA10/PA9) communication. # If you prefer a direct serial connection, in "make menuconfig" # select "Enable extra low-level configuration options" and select # serial (on USART3 PB11/PB10), which is broken out on the 10 pin IDC # cable used for the LCD module as follows: # 3: Tx, 4: Rx, 9: GND, 10: VCC # Flash this firmware by copying "out/klipper.bin" to a SD card and # turning on the printer with the card inserted. The firmware # filename must end in ".bin" and must not match the last filename # that was flashed. # See docs/Config_Reference.md for a description of parameters. [include mainsail.cfg] [stepper_x] step_pin: PB9 dir_pin: PC2 enable_pin: !PC3 microsteps: 16 rotation_distance: 40 endstop_pin: ^PA5 position_endstop: 0 position_max: 235 homing_speed: 50 [stepper_y] step_pin: PB7 dir_pin: PB8 enable_pin: !PC3 microsteps: 16 rotation_distance: 40 endstop_pin: ^PA6 position_endstop: 0 position_max: 235 homing_speed: 50 [stepper_z] step_pin: PB5 dir_pin: !PB6 enable_pin: !PC3 microsteps: 16 rotation_distance: 8 # position_endstop: 0.0 # disable to use BLTouch # endstop_pin: ^PA7 # disable to use BLTouch endstop_pin: probe:z_virtual_endstop # enable to use BLTouch position_min: -5 # enable to use BLTouch position_max: 250 [safe_z_home] # enable for BLTouch home_xy_position: 157.5,120.5 speed: 100 z_hop: 10 z_hop_speed: 5 [bltouch] # enable for BLTouch - fast-mode sensor_pin: ^PB1 control_pin: PB0 pin_up_touch_mode_reports_triggered: True probe_with_touch_mode: True x_offset: -44 # modify as needed for bltouch location y_offset: -6 # modify as needed for bltouch location #z_offset: 1.0 # modify as needed for bltouch or run PROBE_CALIBRATE speed: 10 samples: 3 sample_retract_dist: 5.0 # Can be set lower, example 2.5 depending on height of bltouch from bed lift_speed: 40 samples_tolerance_retries: 3 speed: 10 samples: 2 [bed_mesh] speed: 125 horizontal_move_z: 5 mesh_min: 18,18 mesh_max: 175,202 probe_count: 3,3 algorithm: bicubic # # manual Bed adjustment via BED_SCREWS_ADJUST # [bed_screws] # screw1: 72.5, 41.5 # screw1_name: front left screw # screw2: 198.5,35.5 # screw2_name: front right screw # screw3: 198.5,205.5 # screw3_name: rear right screw # screw4: 28.5,205.5 # screw4_name: rear left screw # horizontal_move_z: 10 # speed: 50 [screws_tilt_adjust] screw1: 72.5, 41.5 screw1_name: front left screw screw2: 198.5,41.5 screw2_name: front right screw screw3: 198.5,212.5 screw3_name: rear right screw screw4: 72.5,212.5 screw4_name: rear left screw horizontal_move_z: 10 speed: 50 screw_thread: CW-M4 [input_shaper] shaper_freq_x:92.2 shaper_type: mzv shaper_freq_y:43.4 shaper_type: mzv [gcode_macro G29] gcode: G28 BED_MESH_CALIBRATE G0 X0 Y0 Z10 F6000 BED_MESH_PROFILE save=Current [extruder] max_extrude_only_distance: 100.0 step_pin: PB3 dir_pin: PB4 enable_pin: !PC3 microsteps: 16 rotation_distance: 31.490 nozzle_diameter: 0.600 filament_diameter: 1.750 heater_pin: PA1 sensor_type: EPCOS 100K B57560G104F sensor_pin: PC5 control: pid pid_Kp: 21.527 pid_Ki: 1.063 pid_Kd: 108.982 min_temp: 0 max_temp: 250 pressure_advance: 0.332 [heater_bed] heater_pin: PA2 sensor_type: EPCOS 100K B57560G104F sensor_pin: PC4 control: pid pid_Kp: 54.027 pid_Ki: 0.770 pid_Kd: 948.182 min_temp: 0 max_temp: 130 [fan] pin: PA0 [mcu] serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method: command [printer] kinematics: cartesian max_velocity: 300 max_accel: 3000 max_accel_to_decel: 3000 max_z_velocity: 5 max_z_accel: 100 [display] lcd_type: st7920 cs_pin: PB12 sclk_pin: PB13 sid_pin: PB15 encoder_pins: ^PB14, ^PB10 click_pin: ^!PB2 # Home, get position, throw around toolhead, home again. # If MCU stepper positions (first line in GET_POSITION) are greater than a full step different (your number of microsteps), then skipping occured. # We only measure to a full step to accomodate for endstop variance. # Example: TEST_SPEED SPEED=300 ACCEL=5000 ITERATIONS=10 [gcode_macro TEST_SPEED] gcode: # Speed {% set speed = params.SPEED|default(printer.configfile.settings.printer.max_velocity)|int %} # Iterations {% set iterations = params.ITERATIONS|default(5)|int %} # Acceleration {% set accel = params.ACCEL|default(printer.configfile.settings.printer.max_accel)|int %} # Bounding inset for large pattern (helps prevent slamming the toolhead into the sides after small skips, and helps to account for machines with imperfectly set dimensions) {% set bound = params.BOUND|default(20)|int %} # Size for small pattern box {% set smallpatternsize = SMALLPATTERNSIZE|default(20)|int %} # Large pattern # Max positions, inset by BOUND {% set x_min = printer.toolhead.axis_minimum.x + bound %} {% set x_max = printer.toolhead.axis_maximum.x - bound %} {% set y_min = printer.toolhead.axis_minimum.y + bound %} {% set y_max = printer.toolhead.axis_maximum.y - bound %} # Small pattern at center # Find X/Y center point {% set x_center = (printer.toolhead.axis_minimum.x|float + printer.toolhead.axis_maximum.x|float ) / 2 %} {% set y_center = (printer.toolhead.axis_minimum.y|float + printer.toolhead.axis_maximum.y|float ) / 2 %} # Set small pattern box around center point {% set x_center_min = x_center - (smallpatternsize/2) %} {% set x_center_max = x_center + (smallpatternsize/2) %} {% set y_center_min = y_center - (smallpatternsize/2) %} {% set y_center_max = y_center + (smallpatternsize/2) %} # Save current gcode state (absolute/relative, etc) SAVE_GCODE_STATE NAME=TEST_SPEED # Output parameters to g-code terminal { action_respond_info("TEST_SPEED: starting %d iterations at speed %d, accel %d" % (iterations, speed, accel)) } # Home and get position for comparison later: M400 # Finish moves - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/66 G28 # QGL if not already QGLd (only if QGL section exists in config) {% if printer.configfile.settings.quad_gantry_level %} {% if printer.quad_gantry_level.applied == False %} QUAD_GANTRY_LEVEL G28 Z {% endif %} {% endif %} # Move 50mm away from max position and home again (to help with hall effect endstop accuracy - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/24) G90 G1 X{printer.toolhead.axis_maximum.x-50} Y{printer.toolhead.axis_maximum.y-50} F{30*60} M400 # Finish moves - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/66 G28 X Y G0 X{printer.toolhead.axis_maximum.x-1} Y{printer.toolhead.axis_maximum.y-1} F{30*60} G4 P1000 GET_POSITION # Go to starting position G0 X{x_min} Y{y_min} Z{bound + 10} F{speed*60} # Set new limits SET_VELOCITY_LIMIT VELOCITY={speed} ACCEL={accel} ACCEL_TO_DECEL={accel / 2} {% for i in range(iterations) %} # Large pattern diagonals G0 X{x_min} Y{y_min} F{speed*60} G0 X{x_max} Y{y_max} F{speed*60} G0 X{x_min} Y{y_min} F{speed*60} G0 X{x_max} Y{y_min} F{speed*60} G0 X{x_min} Y{y_max} F{speed*60} G0 X{x_max} Y{y_min} F{speed*60} # Large pattern box G0 X{x_min} Y{y_min} F{speed*60} G0 X{x_min} Y{y_max} F{speed*60} G0 X{x_max} Y{y_max} F{speed*60} G0 X{x_max} Y{y_min} F{speed*60} # Small pattern diagonals G0 X{x_center_min} Y{y_center_min} F{speed*60} G0 X{x_center_max} Y{y_center_max} F{speed*60} G0 X{x_center_min} Y{y_center_min} F{speed*60} G0 X{x_center_max} Y{y_center_min} F{speed*60} G0 X{x_center_min} Y{y_center_max} F{speed*60} G0 X{x_center_max} Y{y_center_min} F{speed*60} # Small patternbox G0 X{x_center_min} Y{y_center_min} F{speed*60} G0 X{x_center_min} Y{y_center_max} F{speed*60} G0 X{x_center_max} Y{y_center_max} F{speed*60} G0 X{x_center_max} Y{y_center_min} F{speed*60} {% endfor %} # Restore max speed/accel/accel_to_decel to their configured values SET_VELOCITY_LIMIT VELOCITY={printer.configfile.settings.printer.max_velocity} ACCEL={printer.configfile.settings.printer.max_accel} ACCEL_TO_DECEL={printer.configfile.settings.printer.max_accel_to_decel} # Re-home and get position again for comparison: M400 # Finish moves - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/66 G28 # This is a full G28 to fix an issue with CoreXZ - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/12 # Go to XY home positions (in case your homing override leaves it elsewhere) G90 G0 X{printer.toolhead.axis_maximum.x-1} Y{printer.toolhead.axis_maximum.y-1} F{30*60} G4 P1000 GET_POSITION # Restore previous gcode state (absolute/relative, etc) RESTORE_GCODE_STATE NAME=TEST_SPEED [gcode_macro PRESENT_PLATE] gcode: {% set posy = printer.toolhead.axis_maximum.y|float %} {% set posx = 5.0 %} G0 X{posx} Y{posy} F3000 [gcode_macro START_PRINT] gcode: # Parameters {% set bedtemp = params.bed|int %} {% set hotendtemp = params.hotend|int %} #{% set chambertemp = params.CHAMBER|default(0)|int %} SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET=60 SET_HEATER_TEMPERATURE HEATER=extruder TARGET=150 G90 M190 S{bedtemp}. ; Wait for bed to heat up G28 G1 Z50 F240 ;Lower bed 50mm M117 BED_MESH_PROFILE LOAD=default G21 G90 ; absolute M107 #G1 Z5 #G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed #G0 X2 Y0 ; Move to the left of the brush #G1 Z3.0 F3000 ; Move Z Axis up little to prevent crashing with the bed retainer clip G1 X0.1 Y35 F5000.0 ; Move to start position #[include adxl.cfg] # Comment this out when you disconnect the accelerometer #*# <---------------------- SAVE_CONFIG ----------------------> #*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. #*# #*# [bltouch] #*# z_offset = 2.000 #*# #*# [bed_mesh Test2] #*# version = 1 #*# points = #*# -0.963750, -0.621250, -0.265000, 0.062500, 0.305000 #*# -0.925000, -0.621250, -0.316250, 0.007500, 0.163750 #*# -0.835000, -0.523750, -0.153750, -0.006250, 0.060000 #*# -0.781250, -0.562500, -0.328750, -0.131250, -0.042500 #*# -0.677500, -0.450000, -0.322500, -0.198750, -0.150000 #*# min_x = 18.0 #*# max_x = 175.0 #*# min_y = 18.0 #*# max_y = 202.0 #*# x_count = 5 #*# y_count = 5 #*# mesh_x_pps = 2 #*# mesh_y_pps = 2 #*# algo = bicubic #*# tension = 0.2 #*# #*# [bed_mesh Current] #*# version = 1 #*# points = #*# 0.267500, 0.048750, -0.266250 #*# 0.257500, 0.061250, -0.248750 #*# 0.177500, 0.047500, -0.245000 #*# x_count = 3 #*# y_count = 3 #*# mesh_x_pps = 2 #*# mesh_y_pps = 2 #*# algo = bicubic #*# tension = 0.2 #*# min_x = 18.0 #*# max_x = 175.0 #*# min_y = 18.0 #*# max_y = 202.0
-
Good Hot ends for speed
HF: 24mm3/s, UHF: 30 mm3/s according to this page, presumably using the measurement method also described there. But according to the website it can be up to 75mm3/s but they don't specify whether that's for the HF or UHF (I assume UHF).
-
Print error
https://github.com/AndrewEllis93/Print-Tuning-Guide you can't go wrong with this.
-
Gaps on top layer
you can increase top flow for cca 5% and test it on some test cubes to see if it helps, also check https://ellis3dp.com/Print-Tuning-Guide/articles/extrusion_multiplier.html#examples
- PETG, 50% cooling 235c top layer
-
After 2 months of development finally im able to test my new construction
Huh? Your TEST_SPEED macro is taken directly from Andrew Ellis (here).
-
Fairly new to ASA. Printed on the E5S1 with sonic pad. Any tips on getting better quality with ASA? Settings in comments.
In your case here, the first thing you need to do is start with your Extrusion Multi. ASA often requires as much as 10% lower than other filaments. So go ahead and head over to the Andrew Ellis Print tuning guide and look at the EM section, pick up his blank cube and follow directions. https://github.com/AndrewEllis93/Print-Tuning-Guide
-
Nozzle Change Macro
Sure! I set it up according to this https://docs.vorondesign.com/community/howto/samwiseg0/btt_smart_filament_sensor.html. I'm also using Andrew Ellis' pause and resume macros from here https://github.com/AndrewEllis93/Print-Tuning-Guide/blob/040d31c6daaed23c2a1a353545e7ee442a232f32/articles/useful_macros.md.
- Need Some Serious Help With Ender 5 Plus
-
BED MESH & FIRST LAYER
Fine adjust your first layer squish using these test prints spread out all over the bed: https://github.com/AndrewEllis93/Print-Tuning-Guide/tree/main/test_prints/first_layer_patches
What are some alternatives?
Voron - This repository contain files related to modifications or experimentations I performed on parts of 3D Printers designed by the Voron team
Voron-Hardware - Cool Hardware designed by the Voron Design group
Voron-Hardware - Cool Hardware designed by the Voron Design group
klipper - Klipper is a 3d-printer firmware
Voron-Hardware - Cool Hardware designed by the Voron Design group
BIGTREETECH-SKR-mini-E3 - BIGTREETECH SKR-mini-E3 motherboard is a ultra-quiet, low-power, high-quality 3D printing machine control board. It is launched by the 3D printing team of Shenzhen BIGTREE technology co., LTD. This board is specially tailored for Ender 3 printer, perfectly replacing the original Ender3 printer motherboard.
Voron-2 - Voron 2 CoreXY 3D Printer design
PressureAdvanceSettingPlugin - Ultimaker Cura plugin to adjust settings for Pressure Advance feature of Klipper firmware.
mainsail - Mainsail is the popular web interface for managing and controlling 3D printers with Klipper.
VoronUsers - Voron Community mods
SuperSlicer - G-code generator for 3D printers (Prusa, Voron, Creality, etc.)