TPU Printing with Prusa Mini - share your experiences!
 
Notifications
Clear all

TPU Printing with Prusa Mini - share your experiences!  

  RSS
conflag
(@conflag)
New Member
TPU Printing with Prusa Mini - share your experiences!

Hello everyone,

I wanted to share with everyone a cool video that helped me calibrate my Prusa Mini+ slicer settings well enough to print TPU with it. 

The guide is over here and it has a very scientific approach.

This post & thread I think can be of help to someone. If you have had any experience printing TPU / flexible filament on the MINI, please share your experiences!
I'd be interested to see if anyone on the stock extruder managed to print TPU?
It was a big selling point to me in terms of the Bondtech extruder upgrade which I ended up getting, but I actually never tried to do it on the stock extruder.

I printed a retraction tower, which shown me that 9mm/s should be best, but possibly even 10mm/s would be OK; could test that further.
Next, I printed a temperature tower, and for my TPU (S-FLEX from Spectrum, black color) I found the optimal temperature to be 235 °C first layer, 233°C all other layers. This all is shown in the video.

Overall probably like 10g-20g of expensive TPU filament "wasted", but it helped me learn a lot about how to print with it.
So it is not really a "waste".

My approach was, following the video:

  1. Download newest CURA and add the temperature/retraction towers add-on like instructed, to generate proper GCODE files for calibration
  2. making a retraction tower, like the video instructed (make sure to double check after how many layers retraction distance switches)
  3. making a temperature tower, like the video instructed (make sure to double check after how many layers temperature switches, it was wrong to me)
  4. from the video I have learned that TPU prints slow, but it still requires fans. I found conflicting information online; some people claimed it prints so slowly that you could have your fan on 0%, but I disagree; prints cleanly only on 100% speed.
  5. from the results I got that 9mm retraction is the setting I want to go with; also, the temperature settled at 233-235. Keep in mind filament says 200°C -230°C , according to the manufacturer
  6. made sure my Prusa Mini extruder upgrade from Bondtech (Different extrusion GCODE) is included in the printer settings.
  7. To compensate for the cura slicers' wall overlap, I did give an extrusion multiplier to my material. I might have overdone it, but I am already satisfied with the result, and I would rather have a bit of extra lines on the sides than the cube being not rigid and/or separating.
  8. Created a set of settings in PrusaSlicer reflecting what I learned, created also a separate printer profile, material profile and set the temperature accordingly, only for this purpose.
  9. I had problems with first layer underextrusion, turns out I made the calibration badly; I should've trusted the calibration I made with PLA filament before all this. If you're getting first layer underextrusion, try some Live adjust Z during prints, and see if anything changes.
  10. If everything else fails, try going slower. I ended up having 15mm/s in every field in Print settings -> speed. First layer was 10mm/s.
  11. Printed a calibration cube, results below.

 

I know the cube is not perfect, but then it's TPU, so you have to compromise. I think precision and rigidity is good, and for mechanical applications they are the key parameters. After this calibration, I am going to print a stationary bike foot holder, because it broke.

Below is also the quote from my settings that I used to print, if anyone is interested.
If you save below code as an .ini file, it should be importable into PrusaSlicer.

SETUP:
Prusa Mini with Extruder upgrade from BondTech (dual gear extruder)
Bondtech CHT 0.4 nickel-plated brass nozzle

# generated by PrusaSlicer 2.3.1+win64 on 2021-12-17 at 17:11:16 UTC

[print:0.20mm FLEX @MINI - EasySupports]
avoid_crossing_perimeters = 1
avoid_crossing_perimeters_max_detour = 0
bottom_fill_pattern = monotonic
bottom_solid_layers = 4
bottom_solid_min_thickness = 0.5
bridge_acceleration = 1000
bridge_angle = 0
bridge_flow_ratio = 1.02
bridge_speed = 15
brim_width = 0
clip_multipart_objects = 1
compatible_printers = 
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MINI.*/ and nozzle_diameter[0]==0.4
complete_objects = 0
default_acceleration = 1250
dont_support_bridges = 1
draft_shield = 0
elefant_foot_compensation = 0.2
ensure_vertical_shell_thickness = 0
external_perimeter_extrusion_width = 0.45
external_perimeter_speed = 15
external_perimeters_first = 0
extra_perimeters = 0
extruder_clearance_height = 20
extruder_clearance_radius = 35
extrusion_width = 0.45
fill_angle = 45
fill_density = 25%
fill_pattern = grid
first_layer_acceleration = 800
first_layer_extrusion_width = 0.42
first_layer_height = 0.2
first_layer_speed = 10
gap_fill_speed = 15
gcode_comments = 0
gcode_label_objects = 1
infill_acceleration = 1000
infill_anchor = 2.5
infill_anchor_max = 12
infill_every_layers = 1
infill_extruder = 1
infill_extrusion_width = 0.45
infill_first = 0
infill_only_where_needed = 0
infill_overlap = 25%
infill_speed = 15
inherits = 0.20mm QUALITY @MINI
interface_shells = 0
ironing = 0
ironing_flowrate = 15%
ironing_spacing = 0.1
ironing_speed = 15
ironing_type = top
layer_height = 0.2
max_print_speed = 30
max_volumetric_speed = 0
min_skirt_length = 4
notes = 
only_retract_when_crossing_perimeters = 0
ooze_prevention = 0
output_filename_format = {input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode
overhangs = 1
perimeter_acceleration = 800
perimeter_extruder = 1
perimeter_extrusion_width = 0.45
perimeter_speed = 15
perimeters = 4
post_process = 
print_settings_id = 
raft_layers = 0
resolution = 0
seam_position = nearest
single_extruder_multi_material_priming = 1
skirt_distance = 2
skirt_height = 3
skirts = 1
slice_closing_radius = 0.049
small_perimeter_speed = 15
solid_infill_below_area = 0
solid_infill_every_layers = 0
solid_infill_extruder = 1
solid_infill_extrusion_width = 0.45
solid_infill_speed = 15
spiral_vase = 0
standby_temperature_delta = -5
support_material = 0
support_material_angle = 0
support_material_auto = 1
support_material_buildplate_only = 0
support_material_contact_distance = 0.25
support_material_enforce_layers = 0
support_material_extruder = 0
support_material_extrusion_width = 0.35
support_material_interface_contact_loops = 0
support_material_interface_extruder = 0
support_material_interface_layers = 4
support_material_interface_spacing = 0.2
support_material_interface_speed = 80%
support_material_pattern = rectilinear
support_material_spacing = 3
support_material_speed = 15
support_material_synchronize_layers = 0
support_material_threshold = 15
support_material_with_sheath = 0
support_material_xy_spacing = 75%
thin_walls = 0
threads = 12
top_fill_pattern = monotonic
top_infill_extrusion_width = 0.4
top_solid_infill_speed = 15
top_solid_layers = 4
top_solid_min_thickness = 0.7
travel_speed = 100
wipe_tower = 0
wipe_tower_bridging = 10
wipe_tower_no_sparse_layers = 0
wipe_tower_rotation_angle = 0
wipe_tower_width = 60
wipe_tower_x = 170
wipe_tower_y = 140
xy_size_compensation = 0

[filament:Spectrum S-Flex 90A @MINI]
bed_temperature = 60
bridge_fan_speed = 100
compatible_printers = 
compatible_printers_condition = printer_model=="MINI" and nozzle_diameter[0]!=0.8 and nozzle_diameter[0]!=0.6
compatible_prints = 
compatible_prints_condition = 
cooling = 1
disable_fan_first_layers = 0
end_filament_gcode = "; Filament-specific end gcode"
extrusion_multiplier = 1.2
fan_always_on = 1
fan_below_layer_time = 60
filament_colour = #FF8000
filament_cooling_final_speed = 3.4
filament_cooling_initial_speed = 2.2
filament_cooling_moves = 4
filament_cost = 60
filament_density = 1.21
filament_deretract_speed = 15
filament_diameter = 1.75
filament_load_time = 0
filament_loading_speed = 28
filament_loading_speed_start = 3
filament_max_volumetric_speed = 2
filament_minimal_purge_on_wipe_tower = 15
filament_notes = ""
filament_ramming_parameters = "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6"
filament_retract_before_travel = 5
filament_retract_before_wipe = nil
filament_retract_layer_change = nil
filament_retract_length = 4
filament_retract_lift = 0
filament_retract_lift_above = nil
filament_retract_lift_below = nil
filament_retract_restart_extra = nil
filament_retract_speed = 40
filament_settings_id = ""
filament_soluble = 0
filament_spool_weight = 235
filament_toolchange_delay = 0
filament_type = FLEX
filament_unload_time = 0
filament_unloading_speed = 90
filament_unloading_speed_start = 100
filament_vendor = Generic
filament_wipe = nil
first_layer_bed_temperature = 60
first_layer_temperature = 235
full_fan_speed_layer = 0
inherits = Generic PETG @MINI
max_fan_speed = 100
min_fan_speed = 100
min_print_speed = 15
slowdown_below_layer_time = 45
start_filament_gcode = "M900 K{if nozzle_diameter[0]==0.6}0.12{elsif nozzle_diameter[0]==0.8}0.06{else}0.2{endif} ; Filament gcode"
temperature = 233

[printer:FLEXmat Prusa MINI & MINI+]
bed_custom_model = 
bed_custom_texture = 
bed_shape = 0x0,180x0,180x180,0x180
before_layer_gcode = ;BEFORE_LAYER_CHANGE\nG92 E0.0\n;[layer_z]\n\n
between_objects_gcode = 
color_change_gcode = M600
cooling_tube_length = 5
cooling_tube_retraction = 91.5
default_filament_profile = "Prusament PLA"
default_print_profile = 0.15mm QUALITY @MINI
deretract_speed = 15
end_gcode = G1 E-1 F2100 ; retract\n{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)}{endif} F720 ; Move print head up\nG1 X178 Y178 F4200 ; park print head\n{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+30, max_print_height)}{endif} F720 ; Move print head further up\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM221 S100 ; reset flow\nM900 K0 ; reset LA\nM84 ; disable motors
extra_loading_move = -2
extruder_colour = ""
extruder_offset = 0x0
gcode_flavor = marlin
high_current_on_filament_swap = 0
host_type = octoprint
inherits = Original Prusa MINI & MINI+
layer_gcode = ;AFTER_LAYER_CHANGE\n;[layer_z]
machine_limits_usage = emit_to_gcode
machine_max_acceleration_e = 5000
machine_max_acceleration_extruding = 1250
machine_max_acceleration_retracting = 1250
machine_max_acceleration_x = 1250
machine_max_acceleration_y = 1250
machine_max_acceleration_z = 400
machine_max_feedrate_e = 80
machine_max_feedrate_x = 180
machine_max_feedrate_y = 180
machine_max_feedrate_z = 12
machine_max_jerk_e = 10
machine_max_jerk_x = 8
machine_max_jerk_y = 8
machine_max_jerk_z = 2
machine_min_extruding_rate = 0
machine_min_travel_rate = 0
max_layer_height = 0.25
max_print_height = 180
min_layer_height = 0.07
nozzle_diameter = 0.4
parking_pos_retraction = 92
pause_print_gcode = M601
print_host = 
printer_model = MINI
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_MINI\n
printer_settings_id = 
printer_technology = FFF
printer_variant = 0.4
printer_vendor = 
printhost_apikey = 
printhost_cafile = 
remaining_times = 1
retract_before_travel = 1.5
retract_before_wipe = 70%
retract_layer_change = 1
retract_length = 10
retract_length_toolchange = 4
retract_lift = 0.6
retract_lift_above = 0
retract_lift_below = 179
retract_restart_extra = 0
retract_restart_extra_toolchange = 0
retract_speed = 20
silent_mode = 0
single_extruder_multi_material = 0
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S170 ; set extruder temp for bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nM109 R170 ; wait for bed leveling temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nG28 ; home all without mesh bed level\nG29 ; mesh bed leveling \nM104 S[first_layer_temperature] ; set extruder temp\nG92 E0.0\nG1 Y-2.0 X179 F2400\nG1 Z3 F720\nM109 S[first_layer_temperature] ; wait for extruder temp\nM92 E415 ; Bondtech extruder\n\n; intro line\nG1 X170 F1000\nG1 Z0.2 F720\nG1 X110.0 E8.0 F900\nG1 X40.0 E10.0 F700\nG92 E0.0\n\nM221 S95 ; set flow
template_custom_gcode = 
thumbnails = 16x16,220x124
toolchange_gcode = 
use_firmware_retraction = 0
use_relative_e_distances = 1
use_volumetric_e = 0
variable_layer_height = 1
wipe = 1
z_offset = 0


[presets]
print = 0.20mm FLEX @MINI - EasySupports
sla_print = 
sla_material = 
printer = FLEXmat Prusa MINI & MINI+
filament = Spectrum S-Flex 90A @MINI
Posted : 17/12/2021 5:39 pm
uping1 and IG liked
TeachingTheDetails
(@teachingthedetails)
Eminent Member
RE: TPU Printing with Prusa Mini - share your experiences!

Printing TPU on a stock mini, the extruder has zero problems with the filament. I just made sure, the idler was barely tight enough to feed the filament. 

My prints look a lot worse though, since they only use 3mm retraction.

Gonna try your suggestion of calibrating retraction settings.

hw: PRUSA MINI+, FW 4.3.3 & Cr-10s w/ BLTouch, Ezboard, Hemerasw: PrusaSlicer 2.4, Windows 11

Posted : 29/12/2021 4:49 pm
IG liked
rinkel
(@rinkel)
Estimable Member
RE:

Topic is a bit old, but printed a benchy in TPU95 today.
This might be not as soft as the others here printed, but it suits my needs.

tpu_benchy

Posted : 16/03/2022 9:00 pm
languer liked
IG
 IG
(@ig)
Active Member
RE: TPU Printing with Prusa Mini - share your experiences!

This was very helpful, thank you! My first TPU print on MINI+ went well because of this post.

X marks the spot.

Posted : 19/04/2022 12:12 pm
Share: