Jump to content
AbeFM

Create a Printer Def

Recommended Posts

Posted · Create a Printer Def

I've got a Creality CR-10S to which I did a little soldering and added another extruder, using e3d's Chimera+ (two hot ends with a fixed separation).

 

I couldn't take the CR-10's definition and add a head, I forget what I started with... But every time it gives me trouble, I wonder if the definition is the source of my problems.

 

Can anyone suggest the most reasonable way to create a definition? With the new version of CURA, my #2 extruder seems to be running at 10x speed and I'm not sure where to start.

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def

Cura 3.5 has made it easier to change a single extruder definition to a multi-extruder definition, by requiring an extruder definition for the single extruder.

 

* Make a copy of the single extrusion definition (creality_cr10.def.json -> creality_cr10_dual.def.json)

* In creality_cr10_dual.def.json, change the name metadata and  "machine_extruder_trains" metadata:

        {
            "0": "creality_cr10_dual_extruder_0"
            "1": "creality_cr10_dual_extruder_1"
        }

* Now you need to create those two extruder files:

* Copy extruders/creality_cr10_extruder_0.def.json -> extruders/creality_cr10_dual_extruder_0.def.json and extruders/creality_cr10_dual_extruder_1.def.json

* In extruders/creality_cr10_dual_extruder_0.def.json and extruders/creality_cr10_dual_extruder_1.def.json, change the id, and under metadata change the machine and position (position should be "1" for the second extruder).

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def

OMG thanks for that!!!!!!

 

This is something I've been fighting for a long, long time, and more or less given up on. I'll try it out. Even the firmware can't seem to keep "is the second extruder #1 or #2" straight, but I think I can manage.

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def

FINALLY trying this.

 

Notes:

In the extruder file:

I think 

"extruder_nr": { "default_value": 0 }, 

should be 1 as well, as in:

 

    "overrides": {
        "extruder_nr": { "default_value": 1 },
        "machine_nozzle_size": { "default_value": 0.4 },
        "material_diameter": { "default_value": 1.75 }
    }

 

------------------------

The other issue:

        {
            "0": "creality_cr10_dual_extruder_0",
            "1": "creality_cr10_dual_extruder_1"
        }

You need a comma between the two entries in that ... list? array? Thing with bendy brackets. ?

 

Thanks again, going to try this out.

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def
On 10/6/2018 at 7:46 PM, ahoeben said:

Cura 3.5 has made it easier to change a single extruder definition to a multi-extruder definition, by requiring an extruder definition for the single extruder.

 

* Make a copy of the single extrusion definition (creality_cr10.def.json -> creality_cr10_dual.def.json)

* In creality_cr10_dual.def.json, change the name metadata and  "machine_extruder_trains" metadata:


        {
            "0": "creality_cr10_dual_extruder_0"
            "1": "creality_cr10_dual_extruder_1"
        }

* Now you need to create those two extruder files:

* Copy extruders/creality_cr10_extruder_0.def.json -> extruders/creality_cr10_dual_extruder_0.def.json and extruders/creality_cr10_dual_extruder_1.def.json

* In extruders/creality_cr10_dual_extruder_0.def.json and extruders/creality_cr10_dual_extruder_1.def.json, change the id, and under metadata change the machine and position (position should be "1" for the second extruder).

I tried this along with the fixes @AbeFM mentioned, but when starting Cura it results the definition I made is corrupted and it doesn't show up. Any help?

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def

You can check the json-files for formal errors on (e.g.)  https://jsonlint.com/

 

...and the reasons why Cura refuses the configuration are usually logged in "cura.log" in the configuration folder (in Cura: "Help" -> "Show Configuration Folder")

 

Good luck!

 

  • Like 1

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def
51 minutes ago, tinkergnome said:

You can check the json-files for formal errors on (e.g.)  https://jsonlint.com/

 

...and the reasons why Cura refuses the configuration are usually logged in "cura.log" in the configuration folder (in Cura: "Help" -> "Show Configuration Folder")

 

Good luck!

 

Hi there, I did it and now the machine is recognized correctly and Cura doesn't report any error, but the second extruder still doesn't appear in Cura.

 

These are the files in the extruder folder:

 

creality_cr10_dual_extruder_0.def.json

{
    "id": "creality_cr10_dual_extruder_0",
    "version": 2,
    "name": "Extruder 1",
    "inherits": "fdmextruder",
    "metadata": {
        "machine": "creality_cr10_dual",
        "position": "0"
    },

    "overrides": {
        "extruder_nr": { "default_value": 0 },
        "machine_nozzle_size": { "default_value": 0.4 },
        "material_diameter": { "default_value": 1.75 }
    }
}

 

creality_cr10_dual_extruder_1.def.json

{
    "id": "creality_cr10_dual_extruder_1",
    "version": 2,
    "name": "Extruder 2",
    "inherits": "fdmextruder",
    "metadata": {
        "machine": "creality_cr10_dual",
        "position": "1"
    },

    "overrides": {
        "extruder_nr": { "default_value": 1 },
        "machine_nozzle_size": { "default_value": 0.4 },
        "material_diameter": { "default_value": 1.75 }
    }
}

 

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def

ok, and what about the printer definition file?

There are two relevant settings that have to be overridden (AFAIK), "machine_extruder_trains" and "machine_extruder_count"

I think the latter was not yet mentioned above, you can copy it from "ultimaker_original_dual.def.json"

  • Like 1

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def
4 minutes ago, tinkergnome said:

ok, and what about the printer definition file?

There are two relevant settings that have to be overridden (AFAIK), "machine_extruder_trains" and "machine_extruder_count" 

I think the latter was not yet mentioned above, you can copy it from "ultimaker_original_dual.def.json"

Nice, it was that, thanks!

Are other strings needed for the dual extruding tweaks (for PVA and PLA mostly) like for example the prime tower position or can I just specify them in the profile?

I am also going to link this working cr-10 one to the cr-10s dual extruding. As I see the cr-10s machine definition is just a shortcut to the cr-10 with only a different name.

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def
9 minutes ago, redslifer said:

Are other strings needed for the dual extruding tweaks (for PVA and PLA mostly) like for example the prime tower position or can I just specify them in the profile?

 

I have the suspicion that the prime tower position is calculated by the profile and the values in the definition file are not relevant at all, but who knows... 🤷‍♂️

 

  • Like 1

Share this post


Link to post
Share on other sites
Posted · Create a Printer Def
5 hours ago, tinkergnome said:

 

I have the suspicion that the prime tower position is calculated by the profile and the values in the definition file are not relevant at all, but who knows... 🤷‍♂️

 

Uh, I have another question.. as I will use 2 different fans for each nozzle, what number do I need to use for fans in the machine profile? 0 and 1 or 1 and 2?

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

×
×
  • Create New...

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!