Jump to content

Need help with custom start gcode


bvogl

Recommended Posts

Posted · Need help with custom start gcode

I'm trying to wrap my head around transferring a custom start gcode from repetier/curaengine to Cura 3.6.0.

The printer is a custom modified dual extrusion device with a specific code to fulfill my needs:

- for single material i'm only using the second extruder

- material is retracted after print and needs to be primed for a specific minimum length before starting a new print

 

After some searching i found:

http://files.fieldofview.com/cura/Replacement_Patterns.html

but even with this information i can't understand

- how to set (conditional) temperature for a specific extruder

- let cura acknowledge this as an override for its default behaviour

 

Here's a sample code from repetier/curaengine. any help would be appreciated very much:

 

;--------------------------------------
M117 Initializing...
M107 ; fan off
M140 S{BED} ; set bed temp
{IF_EXT0}M104 S{TEMP0} T0
{IF_EXT1}M104 S{TEMP1} T1
G28 ;Home
G1 X0 Y30 F1500
M190 S[BED] ; set bed temp
{IF_EXT0}M109 S{TEMP0} T0
{IF_EXT1}M109 S{TEMP1} T1

M117 Levelling...
G90 ; Absolute positioning
M82 ; Extruder in absolute mode
G29 ;Level Bed

M117 Priming...
{IF_EXT1}T1
{IF_EXT1}G92 E0 ; start line
{IF_EXT1}G1 X200 Y2 Z0.7 F5000
{IF_EXT1}G1 F800 E5
{IF_EXT1}G1 X40 E30 F1000
{IF_EXT1}G92 E-10

{IF_EXT0}T0
{IF_EXT0}G92 E0 ; start line
{IF_EXT0}G1 X200 Y0 Z0.7 F5000
{IF_EXT0}G1 F800 E5
{IF_EXT0}G1 X40 E30 F1000
{IF_EXT0}G92 E-10

{IF_EXT1}T1
;--------------------------------------

 

  • Link to post
    Share on other sites

    Posted · Need help with custom start gcode

    Conditions are not possible IMHO, for the temperature settings you can use something like this:

     

    M104 T{initial_extruder_nr} S{material_print_temperature_layer_0, initial_extruder_nr}

     

    Some more explanations are here:

     

     

    • Like 1
    Link to post
    Share on other sites

    Posted · Need help with custom start gcode

    Not the most elegant solution - but i was able to rewrite the code according your suggestion, thank you very much!

     

    I have added a NULL material with a temperature of 0°C for extruder0, so Marlin's "cold extrusion prevention" will skip extrusion for extruder0.

     

    So here's the code just for reference:

     

    ;--------------------------------------

    M117 Initializing...

    M107 ; fan off

    M140 S{material_bed_temperature} ; set bed temp

    M104 T0 S{material_print_temperature_layer_0, 0}

    M104 T1 S{material_print_temperature_layer_0, 1}

    G28 ;Home

    G1 X30 Y30 Z30 F5000

    ; Set offset for smaller print bed (no print area definition in cura)

    G92 X-30

    M190 S{material_bed_temperature} ; set bed temp

    M109 T0 S{material_print_temperature_layer_0, 0}

    M109 T1 S{material_print_temperature_layer_0, 1}

     

    M117 Levelling...

    G90 ; Absolute positioning

    M82 ; Extruder in absolute mode

    G29 ;Level Bed

     

    M117 Priming...

    T1

    G92 E0 ; start line

    G1 X200 Y2 Z0.7 F5000

    G1 F800 E5

    G1 X40 E30 F1000

    G92 E-3

     

    T0

    G92 E0 ; start line

    G1 X200 Y0 Z0.7 F5000

    G1 F800 E5

    G1 X40 E30 F1000

    G92 E-3

     

    T{adhesion_extruder_nr}

    ;--------------------------------------

  • 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
    • Our picks

      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
         
          • Like
        • 7 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
    ×
    ×
    • Create New...