Printed parts don't fit

eveytime a print something that consist of multiple parts, they don’t fit good.
for example i printed this: http://www.thingiverse.com/thing:12278

i slice with slic3r, because that slicer give the best results for me.
with the default settings (Extrusion multiplier: 1.1) i get a visual good print, but i can not screw the cap on the bottle, the cap don’t fit.

but when i change the filament setting “Extrusion multiplier” to 0,84 the cap fit the bottle perfectly and i can screw it on the bottle.
But the print is ugly, is misses filament in the bottom, an i see gaps in the bottle.

Does somebody know how i can fix this?

It’s quite predictable as modifying the Extrusion multiplier affects all the parameters.

You should try just modifying the settings of the perimeters. You can do that in the advanced settings where you can choose the extrusion width for each parameter. You’ll probably have to fiddle a bit to get a correct result.

I can give you mine as a start :
First Layer : 200%
Perimeters : 140%
Infill : 170%
Solid infill : 130%
Top Solid infill : 160%

Filament diameter : 2.97
Extrusion multiplier: 1

Thanks Raby for your answer.

I have printed with your settings, and the print looks good.
But still i can no fit the two parts.

Is the perimeters setting the setting which causses that the parts don’t fit?
I shall try a print with perimeters set to 90%

Edit:
I have maked several prints, but these settings don’t work for me.
The result of every print is that i can not screw the cap on the bottle.

Only when i set the Extrusion multiplyer to 0,84 i can screw the cap on the bottle.
But the print has gaps, en there is to little filament.

Is it possible to make a print so i can screw the cap on the bottle, and that there is enough filament to make a smooth print?
I have maked more then 20 examples, but i can’t get the right settings.

Hi, can you post your settings (you will find them in “Preview” then “G-Code Editor” scroll to the end and copy and paste the lines that are ONLY green and start with ;).

I’ve found that the infill can cause the thickness of walls to increase (distort). Without knowing how much you are using it’s hard to tell. Having just downloaded and sliced the file, you may be better printing with enough perimiters to make it solid or having no infill. That sounds daft but its down to the amount of material extruded when doing infill as opposed to solid or no infill and how it pushes on the still soft perimeters. I didn’t look at the main jar but with a 0.5 nozzle and 0.25 layers the lid slices with 2 perimeters and very little to lots of infill. Measuring the internal diameter inline with the corners and the flats will give you an indication.
Some thing like this is worth its weight in gold:
ebay.co.uk/itm/150mm-15cm-6- … 4626358388
You will find cheaper but make sure it has a resalution of 0.01mm. When checking a print for fit 0.02mm is too big, it isn’t going to fit without a hammer.

Slicers are unable to slice circles at the right diameter (always too small). So they need to be upscaled a bit at design time.
As it’s not the case with your model you could try the following trick : upscale it slightly in Repetier. Compute the ratio between the bottle neck diameter and the inner diameter of the cap. Use that ratio to set the scale of the cap in Repetier and print it.

Additionally take into measure that filament shrinks a certain amout during cooling.
This will make “nuts” (larger diameter) shrink more than their “bolts” (smaller diameter).
At this tight tolerance this already can be an issue.

Raby, it is more the models that are the problem than the slicers.
Stl’s can only represent a polygonal approximation of curves. The less polygons the curve has, the “smaller” the hole gets.
Slic3r once had an option to generate true arc moves from such curve polygons, but it is no longer implemented in newer versions afaik.
Paul compton mentioned a tool to filter STL files for generating true arc movements from polygonal curves in another thread.
Cause Marlin is able to use true arc moves, this might be helpful in such cases to get smoother inner diameters.
But i haven’t tested it yet.

cheers,

Christian

Parts will have slightly different dimensions depending on the nozzle diameter, layer height and slicer used.

If you have the CAD model, then you can adjust the parameters to achieve the fit, but if you’re just slicing an existing STL (or equivalent) then you’re going to struggle.

I also think for whatever reason, Slic3r produces accurate dimensions for boxes with lids, bottles with caps, etc. Since I’ve been using Cura with the K8400, I can’t get any box or bottle to print correctly so that the lid fits as it should. There must be a problem with the way Cura slices or some setting somewhere. It’s annoying, because Slic3r produces ugly accurate prints, while Cura produces badly fitting pretty prints!

There is certainly some truth in variable shrinkage rates for different parts depending on wall thickness etc. At the moment the only thing I’ve solution I’ve found is Raby’s, which is to scale the lid or cap up by 1%.

[quote=“biscuitlad”]I also think for whatever reason, Slic3r produces accurate dimensions for boxes with lids, bottles with caps, etc. Since I’ve been using Cura with the K8400, I can’t get any box or bottle to print correctly so that the lid fits as it should. There must be a problem with the way Cura slices or some setting somewhere. It’s annoying, because Slic3r produces ugly accurate prints, while Cura produces badly fitting pretty prints!

There is certainly some truth in variable shrinkage rates for different parts depending on wall thickness etc. At the moment the only thing I’ve solution I’ve found is Raby’s, which is to scale the lid or cap up by 1%.[/quote]

I think the “better” dimensional behavior of slic3r is dur to the much more parameters you can modify.
Cura engine is more kind of a “black box” this way.

Perhaps try to set a “false” nozzle diameter in cura engine, let’s say 0.505 or 0,51 instead of 0.5 Maybe that results in smaller outer perimeters that make the parts fit.

cheers,

Christian

Well I’ve printed wheels and tires both with Cura on the k8400 and then the wheels on the 8400 and the tires on the 8200 with Slic3r. They were all a perfect fit. Either my settings are perfect or I’m a lucky guy :b

I didn’t have dimensional problems with cura either after calibrating.
I use 0.4mm nozzle on E3D v6 with cura engine most times on my k8200.
Such close tolerances are a bit fiddly ti calibrate though …

cheers,

Christian

Ronnie, try the following to calibrate your extrusion rate:

Set the filament diameter to 3mm and extrusion multiplier to 1.
Then print a small cube with one perimeter and measue its wall width.
Whit that calibrate your extrusion multiplier to get 0.5 mm walls as close as possible.

Then print the bottle again and i think it will match up.

You can also try repetier 1.0.6 and the “builtin” cura engine to slice it.

cheers,

Christian

I just printed the bottle sliced with Slic3r and it’s a perfect fit.

I’ll try it too with cura when my running job is finished.

Raby, this are the settings i use in Slic3r.
I use repetier host with the slic3r slicer, because till now this give me better results then Cura.
Slic3r is much slower then Cura.

[code]; filament used = 1048.3mm (7.2cm3)

; avoid_crossing_perimeters = 0
; bed_size = 200,200
; bed_temperature = 50
; bridge_acceleration = 0
; bridge_fan_speed = 100
; bridge_flow_ratio = 1
; brim_width = 0
; complete_objects = 0
; cooling = 1
; default_acceleration = 0
; disable_fan_first_layers = 3
; duplicate_distance = 6
; end_gcode = M104 S0 ; turn off temperature\nG28 X0 ; home X axis\nM84 ; disable motors
; external_perimeters_first = 0
; extruder_clearance_height = 20
; extruder_clearance_radius = 20
; extruder_offset = 0x0
; extrusion_axis = E
; extrusion_multiplier = 0.83
; fan_always_on = 0
; fan_below_layer_time = 60
; filament_diameter = 2.96
; first_layer_acceleration = 0
; first_layer_bed_temperature = 50
; first_layer_extrusion_width = 115%
; first_layer_speed = 85%
; first_layer_temperature = 195
; g0 = 0
; gcode_arcs = 0
; gcode_comments = 0
; gcode_flavor = reprap
; infill_acceleration = 0
; infill_first = 0
; layer_gcode =
; max_fan_speed = 100
; min_fan_speed = 35
; min_print_speed = 30
; min_skirt_length = 0
; notes =
; nozzle_diameter = 0.5
; only_retract_when_crossing_perimeters = 1
; ooze_prevention = 0
; output_filename_format = [input_filename_base].gcode
; perimeter_acceleration = 0
; post_process =
; print_center = 100,100
; resolution = 0
; retract_before_travel = 2
; retract_layer_change = 1
; retract_length = 3
; retract_length_toolchange = 10
; retract_lift = 0
; retract_restart_extra = 0.1
; retract_restart_extra_toolchange = 0
; retract_speed = 65
; skirt_distance = 6
; skirt_height = 1
; skirts = 4
; slowdown_below_layer_time = 5
; spiral_vase = 0
; standby_temperature_delta = -5
; start_gcode = G28 ; home all axes\nG90 ; use absolute coordinates\nG21 ; set units to millimeters\nG92 E0\nM82 ; use absolute distances for extrusion\nM109 S190 ; wait for temperature to be reached\nG1 E10 F400 ; prime the nozzle
; temperature = 190
; threads = 2
; toolchange_gcode =
; travel_speed = 200
; use_firmware_retraction = 0
; use_relative_e_distances = 0
; vibration_limit = 0
; wipe = 0
; z_offset = 0
; dont_support_bridges = 1
; extrusion_width = 0.5
; first_layer_height = 0.3
; infill_only_where_needed = 0
; interface_shells = 0
; layer_height = 0.3
; raft_layers = 0
; seam_position = aligned
; support_material = 0
; support_material_angle = 0
; support_material_enforce_layers = 0
; support_material_extruder = 1
; support_material_extrusion_width = 0
; support_material_interface_extruder = 1
; support_material_interface_layers = 3
; support_material_interface_spacing = 1
; support_material_interface_speed = 100%
; support_material_pattern = rectilinear
; support_material_spacing = 3
; support_material_speed = 50
; support_material_threshold = 46
; bottom_solid_layers = 3
; bridge_speed = 60
; external_perimeter_speed = 95%
; extra_perimeters = 1
; fill_angle = 45
; fill_density = 30%
; fill_pattern = rectilinear
; gap_fill_speed = 50
; infill_every_layers = 1
; infill_extruder = 1
; infill_extrusion_width = 170%
; infill_speed = 50
; overhangs = 1
; perimeter_extruder = 1
; perimeter_extrusion_width = 170%
; perimeter_speed = 30
; perimeters = 3
; small_perimeter_speed = 30
; solid_fill_pattern = rectilinear
; solid_infill_below_area = 10
; solid_infill_every_layers = 0
; solid_infill_extrusion_width = 140%
; solid_infill_speed = 50
; thin_walls = 1
; top_infill_extrusion_width = 200%
; top_solid_infill_speed = 50
; top_solid_layers = 3
[/code]

ichbinsnur,

I shall try to print the bottle with the settings you gave.

My print of the bottle is currently running.
K8200 E3D v6 0.4mm nozzle, cura engine, 0.25mm layers, 3 perimeters, no infill.

Ronnie, you can try this :

Use cura engine and set filament diameter to 3mm and flow rate to 100%.
Then print the bottle and adjust the flow rate in manual control while it prints,
till it shows good perimeters with as less flow as possible.

I use this procedure to calibrate the flow for each new filament spool while printing a small cylinder.

cheers,

Christian

Ichbinsnur,

First i have printed a calibration square (0.5mm thin wall)
with the settings you gave: 1 perimeter, 3mm filament and extrusion 1

The results are as follow:
wall 1 = varies from 0.56 to 0.62
wall 2 = varies from 0.54 to 0.52
wall 3 = varies from 0.51 to 0.53
wall 4 = varies from 0.52 to 0.53

[quote=“dutchronnie”]Ichbinsnur,

First i have printed a calibration square (0.5mm thin wall)
with the settings you gave: 1 perimeter, 3mm filament and extrusion 1

The results are as follow:
wall 1 = varies from 0.56 to 0.62
wall 2 = varies from 0.54 to 0.52
wall 3 = varies from 0.51 to 0.53
wall 4 = varies from 0.52 to 0.53[/quote]

Quite near though.
Are wall 1 and 2 opposite on the same axis?
Now lower the extrusion multiplier step by step.
Start with 0.995 and recheck.

Anyway, the cura engine lets you do that easier, you would only adjust the flow while printing.

cheers,

Christian