Jump to content

Cura for Flashforge Creator 3


ingo_66

Recommended Posts

Posted · Cura for Flashforge Creator 3

This is my way of getting dual extrusion working on the Creator 3 with Cura.
Printing with "material_print_temperature" and resting with "material_standby_temperature"
G-code flavor = Marlin (according to flashforge)
https://en.fss.flashforge.com/10000/software/a42243ba68cb81dc8afd7b7fb3e71dcf.pdf

As I understands it, Creator 3 wants temp commands as M104 Sxxx Tx.
Cura want to do them like M104 Tx Sxx, and some times with M109. (at least with Marlin)
Creator 3 don't like the M109 command, if I remember right my extruders collided.

So my start/stop G-code has ! instead of M.
After slicing I use a text editor to change all
M104, M105, M106, M107, M109 to ;M104, ;M105, ;M106, ;M107, ;M109
That way I get rid of all non wanted commands.
Then I replace all ! with M, that way my start/stop commands work.
Finally I replace all ;M104 T{x} S{my material print temp} for both extruder to M104 S{my material print temp} T{x}.
That way I have "preheat" for the tool change.

For someone with coding skill I guess that it is possible to make a postprocessing script for this.
But I don't have that kind of skills.

I have read and reused code and ides from previous work, done by.
Toylerrr
https://github.com/Toylerrr/Flashforge-for-Cura
eugr
https://github.com/eugr/Flashforge-for-Cura
ArteFlux
https://www.thingiverse.com/thing:4574596
Nounnours
https://github.com/Nounnours/FlashForge_Creator_3-and-Pro-Cura-profiles

H1ghAsAK1t3

 

I don't think M6 and M7 do anything.
My guess is that Cura makes the initial warm up work.
And I'm not sure the fan handling is correct, or even matters. All M106 commands are after the tool change.

Files named .gcode. To be accepted as attachment.

 

What I have found about the Creator 3.

 

G-code flavor = Marlin according to Flashforge

M118 {X Y Z} (max size of the printed area with object and e.g. a wall) {T0} {T1} {D1/D2}
T0 T1 sets dual extrusion
T0 or T1 sets single extrusion
D1 sets mirror mode
D2 sets duplicate mode
In these two modes, the print bed origin shifts to 66.5x125, resulting in a print bed size of 133x250 mm.

M108 Tx ; tool change

M140 Sxx T0 ; set bed temperature
M104 Sxxx T0 ; set extruder 1 temperature (must be Sxx Tx, the opposite way don't work)
M104 Sxxx T1 ; set extruder 2 temperature (must be Sxx Tx, the opposite way don't work)

M7 T0 {Sx} ; wait for bed temp
M6 Tx {Sx} ; wait for extruder temp

M106 Sxxx ; set cooling fan speed
M107 ; cooling fan off

M651 ; chassis fan on
M652 ; chassis fan off

G162 {X Y Z} ; home (G28?)

M17 ; enable steppers
M18 ; disable steppers

G4 {Sxx} {Pxx} ; dwell S for seconds P for milliseconds

G90 ; absolute
G91 ; relative
G92 ; set position

M105 ; get extruder and bed temp
M114 ; get current position
M115 ; get machine info
M119 ; get machine status

M112 ; emergency stop (not tested)
M132 ; load current home position from EEPROM (not tested)
M907 ; set digital potentiometer value (not tested)

Creator_Dual.def.json.gcode Creator-extruder-0.def.json.gcode Creator-extruder-1.def.json.gcode

  • Link to post
    Share on other sites

    • 2 weeks later...
    Posted · Cura for Flashforge Creator 3

    Thanks for posting this, I'm sure it'll help someone when they search for it.

     

    However;

    - It might be possible to do this from within 'vanilla' Cura with a bundled post-processing script, namely (multiple instances of) search-and-replace (one for each substitution). You can get to the post-processing scripts by the top-bar menu: Select 'Plugins' > 'Post Processing', and a window will pop-up.

    - The order of the S/T/.., etc. parameters for an M/G gcode line shouldn't matter. Though it appears that it does for your machine. Have you thought about reporting this to the manufacturer?

  • Link to post
    Share on other sites

    • 5 months later...
    • 3 weeks later...
    Posted · Cura for Flashforge Creator 3

    Hello to you all.

     

    I have also tried to print with Cura on my Creator 3 printer.

    I followed the instructions from the pdf file:

    https://en.fss.flashforge.com/10000/software/a42243ba68cb81dc8afd7b7fb3e71dcf.pdf

     

    My problem now is that when the printing starts, the second head (on the left) is also activated
    and moving parallel with the right head on the bed (picture attached), instead of sitting parked on the left side.

     

    Have anyone else experienced anything similar?

    Is there any fix for this? For keeping the left head parked?

     

    Thank you!

    George

    IMG20231109092719.jpg

  • Link to post
    Share on other sites

    Posted (edited) · Cura for Flashforge Creator 3

    Doing some searching and reading it would appear that FlashForge printers can be used with Raise3D IdeaMaker.

    The Raise3D IDEX printers use different M605 codes to tell the printer what mode to use and that makes them adaptable to use Cura because they don't require "U" and "V" axes in the gcode.

    Your FlashForge might respond to that command or it might have it's own command (I've seen D0, D1 and D2 mentioned).  You can check a gcode file to see if something was added to tell the printer which mode to use.

    For the Raise3D printers:

    M605 S0 is "normal"

    M605 S1 is "duplicate"

    M605 S2 is "mirror"

    It is dependent on your firmware but it's possible that putting one of those "mode" commands (whatever it is for your printer) into the startup gcode and then checking how the printer responds may provide a clue as to what you need to do to keep the left head parked.

     

    Edited by GregValiant
  • Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3

    Also, if you made the changes you made (like making it never wait for the hot end to finish heating up) and it still works, it's definitely not playing with standard Marlin. Some of the commands in your example are only in RepRap.

  • Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3

    If someone needs

    Singel extruder files.

     

    Just remove the .gcode in the filename.

    I cant send them as .json

    Creator-singel-extruder.... are extruder defenitions

    and Creator_Singel_Right/Left is machine defenitions.

    Creator-singel-extruder-1.def.json.gcode Creator-singel-extruder-0.def.json.gcode Creator_Singel_Right.def.json.gcode Creator_Singel_Left.def.json.gcode

  • Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3

    @ingo_66 there are typo's in the definition files in the startup and ending gcodes.  "singel" is "single".

    From: Creator_Singel_Right.def.json.  Creator_Singel_Left has the same issues.

    "machine_start_gcode":
    M118 T0 >>>>>>> should this be "M108"???
    107 ; cooling fan off >>>>>>>>>> should be "M107"
    M106 S{cool_fan_speed} ; set cooling fan speed >>>>>>>> should be "cooling_fan_speed_layer_0"???


    "machine_end_gcode":
    G1 G91 E-3 F500 ; retract 3mm of feed stock >>> typo - should be

    G91 ; relative positioning

    G1 E-3 F500 ;retract 3mm of feed stock

    ....
    G162 Z F1800 ; home Z >>> OK if the bed drops down.  Not good if the nozzle moves down.

    ....
    G91 ; relative positioning >>>>>>>>> should be "G90 ; absolute positioning ??????

     

    • Like 1
    Link to post
    Share on other sites

    Posted (edited) · Cura for Flashforge Creator 3
    3 hours ago, GregValiant said:

    M118 T0 >>>>>>> should this be "M108"???

    That or they forgot to send it to M118 Pn0 T0.

    Someone might be interested in that message.

     

    But no, it shouldn't be M108 because that doesn't take a tool number. Or it should be M108 and they need to take the tool number out.

    Edited by Slashee_the_Cow
  • Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3

    GregValiant

     

    M118 T0; to my knowledge is Right

    M107; Yes

    M106 S{cool_fan_speed} ; set cooling fan speed >>>>>>>> should be "cooling_fan_speed_layer_0;

    if you like. I,m not sure that i works, but try.

    G1 G91 E-3 F500; do you mean that the machine dont accept G1 and G91 on the same line?

    G162 Z F1800 ; Bed drops down

    G91/G90; Yes

  • Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3

    and i'm from Sweden. So singel" is "single 😉

    • Laugh 1
    Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3

    Cura can use special words in the startup and ending gcode and they will be replaced with the value at slicing.  The complete list is HERE and "cooling_fan_speed_layer_0" means Initial Layer Fan Speed.  If you just have "cooling_fan_speed" the fan could go to 100% right from the start.

    (FYI Feed rate speeds in the list are in mm/sec but gcode is in mm/min so they aren't interpreted correctly if you try to use them in your startup/ending gcodes.)

     

    No, you cannot have two commands on the same line.  The printer will ignore the line as it will be interpreted an illegal command.

     

    M118 would depend on your firmware.  For most firmware it is similar to M117 (send message to LCD) but instead of the message going to the LCD the printer bounces the message back to a print server (like Pronterface).

     

    I have seen this form with M118:

    M118 X15.00 Y15.00 Z0.51 T0

    That has the bounding box size in and the tool number so maybe it's telling the printer the area where that nozzle should stay.  There are no replacement patterns for the XYZ of the model bounding box.  It would need to be done in post process.

     

    I've also seen this form using M108:

    M108 T0

    So use what works.

     

  • Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3

    M118 {X Y Z} (max size of the printed area with object and e.g. a wall) {T0} {T1} {D1/D2}
    T0 T1 sets dual extrution
    T0 or T1 sets single extrution
    D1 sets mirror mode
    D2 sets duplicate mode
    In these two modes, the print bed origin shifts to 66.5x125, resulting in a print bed size of 133x250 mm.

    Creator_Single_Left.def.json.gcode Creator_Single_Right.def.json.gcode Creator-single-extruder-0.def.json.gcode Creator-single-extruder-1.def.json.gcode

    • Like 1
    Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3

    I so want to point out a bunch of things that would be wrong in RepRap/Marlin but as @GregValiant pointed out, it's probably speaking it's own language.

     

    One warning based on what I do know (so I could be wrong, in which case feel free to ignore me): your machine definition says the language it uses is RepRap (Marlin/Sprinter) so Cura will use what are the correct commands in that when slicing. Many of the commands in your gcode (at least based on the comments) aren't valid in Marlin, so they won't be used in the generated code, or possibly worse, do something different to your expected behaviour (i.e. I see M7 in your startup code... that turns mist cooling on for CNC machines in Marlin, so something completely different). You might have to use one hell of a post-processing script to convert the Marlin into your machine's commands, if the code you're using is what your printer actually uses (i.e. I don't think any valid commands in Marlin start with D, and in RepRap D is used for debugging).

  • Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3

    The Creator 3 is a beast 😉

    But this works for me.

    And as i say in the first post.

    "I'm not sure the fan handling is correct, or even matters"

    I have very little experience of 3D printers.

    But long experience of CNC machines.

  • Link to post
    Share on other sites

    Posted · Cura for Flashforge Creator 3
    3 minutes ago, ingo_66 said:

    "I'm not sure the fan handling is correct, or even matters"

    I have very little experience of 3D printers.

    It can depend on what material you're using, but for some, the fans very much matter. Some need to be cooled ASAP for best results. Some require the opposite. There's a reason people print fan towers.

  • 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
        • 15 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.
        • 0 replies
    ×
    ×
    • Create New...