Jump to content
Ultimaker Community of 3D Printing Experts
kerberg

Trying to customize gcode and need some ultimaker specific clarification

Recommended Posts

I have question about g code. I am excited to push my ultimaker to the limit! and to do so want to understand the gcode as much as possible. I use grasshopper and rhino to design parametric objects and in the past have run a cnc mil directly from gcode generated by grasshopper. GH is a visual scripting program for rhino a popular 3d modeling tool. anyway there is a plugin for gh called silkworm designed to generate gcode for 3d printing directly from gh so that a s a model changes the gcode updates. Interesting stuff. Here is the link; http://projectsilkworm.com/ .

So I have some setting s I need to feed into this plug in to get in to sync with the ultimaker. can you advise?

These are some default values from another gcoder. Can anyone confirm whether they apply to the ultimaker and correct them where they may differ? Thanks -

If you can confirm or correct this list please make it clear which value you have confirmed or corrected Thanks!

absolute_extrudersteps = 1

acceleration = 0

bed_size = 200,200

bed_temperature = 60

bridge_fan_speed = 100

bridge_flow_ratio = 1

bridge_speed = 20

brim_width = 3

complete_objects = 0

cooling = 0

disable_fan_first_layers = 1

duplicate = 1

duplicate_distance = 6

duplicate_grid = 1,1

end_gcode = M104 S0 ; turn off temperature\nG28 X0 ; home X axis\nM84 ; disable motors

external_perimeter_speed = 100%

extra_perimeters = 1

extruder_clearance_height = 20

extruder_clearance_radius = 20

extruder_offset = 0x0

extrusion_axis = E

extrusion_multiplier = 1

extrusion_width = 0

fan_always_on = 0

fan_below_layer_time = 60

filament_diameter = 1.75

fill_angle = 45

fill_density = 0.4

fill_pattern = rectilinear

first_layer_bed_temperature = 60

first_layer_extrusion_width = 200%

first_layer_height = 100%

first_layer_speed = 20%

first_layer_temperature = 185

infill_acceleration = 50

infill_every_layers = 1

infill_extruder = 1

infill_extrusion_width = 0

infill_speed = 20

layer_gcode =

layer_height = 0.5

max_fan_speed = 100

min_fan_speed = 35

min_print_speed = 10

nozzle_diameter = 0.5

output_filename_format = [input_filename_base].gcode

perimeter_acceleration = 25

perimeter_extruder = 1

perimeter_extrusion_width = 0

perimeter_speed = 20

perimeters = 3

post_process =

print_center = 100,100

randomize_start = 1

retract_before_travel = 2

retract_length = 1

retract_lift = 0

retract_restart_extra = 0

retract_speed = 30

rotate = 0

scale = 1

skirt_distance = 6

skirt_height = 1

skirts = 1

slowdown_below_layer_time = 15

small_perimeter_speed = 20

solid_fill_pattern = rectilinear

solid_infill_speed = 20

solid_layers = 3

start_gcode = G28 ; home all axes

temperature = 185

top_solid_infill_speed = 20

travel_speed = 100

use_relative_e_distances = 0

Share this post


Link to post
Share on other sites

I could pitch in and help, but I think @Tinkergnome and @Gr5 know there way around this pretty well!

What I would change is disable layer for first 4 or 5 layers.

filament_diameter = 2.85

first_layer_temperature = 220

nozzle_diameter = 0.4 (if it is stock)

Most other things looked OK, or I didn't know.

Share this post


Link to post
Share on other sites

ultimaker takes all the standard gcodes that reprap printers take. Ultimaker uses the marlin firmware and so the gcodes for marlin are well documented. If it works for any open source printer (like lulzbot or printrbot) then it will probably work as is on an Ultimaker. A few details - where is 0,0? For ultimaker 0,0 is in front left corner and all X,Y,Z,E values should be made positive. The limit for UMO (which has smaller bed) is about 225X225X205(height) so the center of the bed is half those X,Y values. Z=0 means nozzle is touching the bed.

This is a fantastic refernce and tells you which gcodes are supported by marlin:

http://reprap.org/wiki/G-code

Also keep in mind that E movements normally are in mm of filament but the UM printers use 3mm filament (actually 2.85mm) and other manufacturers use 1.75mm filament so you want to move the E disances MUCH smaller.

Share this post


Link to post
Share on other sites

These settings look good - my comments included:

absolute_extrudersteps = 1

acceleration = 0

bed_size = 200,200

bed_temperature = 60

bridge_fan_speed = 100

bridge_flow_ratio = 1

bridge_speed = 20

No need to speed up or slow down on bridging - don't know why speed is different here.

brim_width = 3

complete_objects = 0

cooling = 0

disable_fan_first_layers = 1

duplicate = 1

duplicate_distance = 6

duplicate_grid = 1,1

end_gcode = M104 S0 ; turn off temperature\nG28 X0 ; home X axis\nM84 ; disable motors

external_perimeter_speed = 100%

extra_perimeters = 1

extruder_clearance_height = 20

extruder_clearance_radius = 20

extruder_offset = 0x0

extrusion_axis = E

extrusion_multiplier = 1

extrusion_width = 0

fan_always_on = 0

fan_below_layer_time = 60

definitely change this one to 2.85:

filament_diameter = 1.75

fill_angle = 45

fill_density = 0.4

fill_pattern = rectilinear

first_layer_bed_temperature = 60

first_layer_extrusion_width = 200%

first_layer_height = 100%

first_layer_speed = 20%

This is on the cool side - not sure why so cool. I would go more 190c or 210C. UM printer bridges very well with PLA and fan on 100%:

first_layer_temperature = 185

infill_acceleration = 50

infill_every_layers = 1

infill_extruder = 1

infill_extrusion_width = 0

This is crazy slow - go with 30 to 40mm/sec:

infill_speed = 20

layer_gcode =

Wow - very thick - I guess maybe you can do .5 - these are strange objects but maybe go with .3mm layer height?

layer_height = 0.5

max_fan_speed = 100

no - make min fan speed 100% I think:

min_fan_speed = 35

min_print_speed = 10

Ultimaker has 0.4mm nozzle:

nozzle_diameter = 0.5

output_filename_format = [input_filename_base].gcode

why so slow? Ultimaker typically is 5000mm/sec/sec acceleration but this might be for a good reason as bridging is tricky:

perimeter_acceleration = 25

perimeter_extruder = 1

perimeter_extrusion_width = 0

perimeter_speed = 20

perimeters = 3

post_process =

good:

print_center = 100,100

randomize_start = 1

Not sure if this is in mm but I would maybe change this to 4.5mm as 2mm is not enough on the UM which has a long bowden:

retract_before_travel = 2

retract_length = 1

retract_lift = 0

retract_restart_extra = 0

retract_speed = 30

rotate = 0

scale = 1

skirt_distance = 6

skirt_height = 1

skirts = 1

slowdown_below_layer_time = 15

small_perimeter_speed = 20

solid_fill_pattern = rectilinear

solid_infill_speed = 20

solid_layers = 3

start_gcode = G28 ; home all axes

again - try 190C to 220C:

temperature = 185

top_solid_infill_speed = 20

travel_speed = 100

use_relative_e_distances = 0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Announcements

  • Our picks

    • Architect Design Contest | Vehicles.
      We're open for entries! - Design and submit your 3D designs of architectural entourage - vehicles - for a chance to win a large filament pack. Presenting an idea, an architectural design or something as big as an urban project isn't easy. A scaled model can really help to get your idea across.
        • Like
      • 14 replies
    • What The DfAM?
      I'm Steve Cox, an experienced engineer familiar with 3D printing. I wanted to share some DfAM guidelines with this community to help and make stronger parts.
      I'm also an Autodesk Certified Instructor for Fusion 360, so many of the images in ...
        • Thanks
        • Like
      • 17 replies
×

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!