Jump to content
Ultimaker Community of 3D Printing Experts

How do I load a new material from Cura into a UM3?


Recommended Posts

Posted · How do I load a new material from Cura into a UM3?

After a lot of searching through Cura settings, UM support pages, and community forums, I am embarrassed to say that I'm not sure how to get my new material from Cura over to my Ultimaker 3 so that it's added to the list of recognized material types for loading new spools.

 

Isn't Cura supposed to send new materials over to the printer somehow? This didn't happen at the time I created the new material in the Preferences -> Materials tab, and it didn't happen when I sent the print job over to the printer, either. How do I force the materials to sync?

 

I want to use my spool of MatterHackers HIPS 2.85mm as a support filament for Extruder 2. (Extruder 1 contains MatterHackers PETG 1.75mm through a Mosaic 1.75mm->2.85mm adapter.) Here is what I did:

 

  1. Set my active extruder to Extruder 1 in order to be able to see 1.75mm diameter filaments in Cura Preferences -> Materials.
  2. Duplicated the "Generic HIPS" material in Cura 4.7 beta. 621567114_1.75mmmaterials.thumb.png.797a18dd205e218bf35b8146090ecad0.png
  3. Changed its diameter to 2.85mm and updated its name and several other settings. In order to be able to view the material again after changing its diameter, I had to switch the active extruder to Extruder 2. 1855287761_2.85mmmaterials.thumb.png.80b4ac5992371db5dd66e8f97c420513.png
  4. Changed the active extruder back to Extruder 1.
  5. Started the print.
  6. Saw the message on the printer about needing to load materials "HIPS".
  7. Placed the spool onto the printer, pressed Select Manually, scrolled through the list of available materials, and did not see HIPS.

 

What am I doing wrong here? What's the right way to get new materials over to the printer?

 

Thanks!

  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?

    The material is still linked to its origin material and therefore has the same UUID. You need to unlink it so it gets its own UUID. Only then it is uploaded to the printer.

  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?
    4 minutes ago, Dim3nsioneer said:

    The material is still linked to its origin material and therefore has the same UUID.


    ...and the generic "HIPS" material is explicitly excluded in the UM3 definition (for whatever reason).

    Maybe this plays a role in this case?

     

    https://github.com/Ultimaker/Cura/blob/master/resources/definitions/ultimaker3.def.json#L16

     

    BTW: It's perhaps worth to get to the bottom of this exclusion setting - is HIPS abrasive or such?

    Better safe than sorry...

     

  • Link to post
    Share on other sites
    Posted (edited) · How do I load a new material from Cura into a UM3?
    13 hours ago, Dim3nsioneer said:

    The material is still linked to its origin material and therefore has the same UUID. You need to unlink it so it gets its own UUID. Only then it is uploaded to the printer.

     

    I've power cycled my UM3, unlinked the MatterHackers HIPS material from Generic HIPS, and sent the job to print again. I still don't see HIPS anywhere on the UM3's "Material Type" selector when trying to load Material 2. Is there something else I have to do to sync Cura with the printer?

    870258851_ScreenShot2020-08-19at2_48_47PM.thumb.png.e34ac32f4499995425bc7fb34934348d.png

    Edited by threepoint
  • Link to post
    Share on other sites
    Posted (edited) · How do I load a new material from Cura into a UM3?

    The sync should happen automatically. Does it sync a newly downloaded material from the marketplace? When you test it, make sure the material is compatible with the UM3.

    Edited by Dim3nsioneer
  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?
    55 minutes ago, Dim3nsioneer said:

    The sync should happen automatically. Does it sync a newly downloaded material from the marketplace? When you test it, make sure the material is compatible with the UM3.

     

    I just tried downloading and installing two materials from the marketplace (MatterHackers NylonX and Proto-Pasta Copper). I changed my Extruder 2 material to each of those and sent the job to print. After the printer complained that a material change was needed, I went to Materials > Material 2 > Select Type. Neither of those new materials were listed.

     

    When is the sync supposed to occur? After I choose "Print over network" in Cura?

  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?
    2 minutes ago, threepoint said:

    Neither of those new materials were listed.

     

    Depending on what print core you have mounted they might appear greyed out with a red exclamation mark symbol as they need the CC 0.6 printcore.

    Cura should send them automatically if you are connected to the printer through Digital Factory (network or cloud). And it will show you a small dialog at the bottom center (see attached picture). That happens after Cura startup.

    If it does not happen, something is broken in your Cura installation. The only way to get it running is afaik to "nuke" Cura, i.e. to clear all profiles and let Cura create a new installation. You can achieve this by deleting all content of the parent Cura configuration folder (menu help->show configuration folder and then two folders up "cura"); the better way than deleting is to rename "cura" into something like "cura.old" so Cura doesn't find it anymore but you would still have an easy way to go back.

    Cura_Message_MaterialUpdate.jpg

  • Link to post
    Share on other sites
    Posted (edited) · How do I load a new material from Cura into a UM3?
    19 minutes ago, Dim3nsioneer said:

     

    Depending on what print core you have mounted they might appear greyed out with a red exclamation mark symbol as they need the CC 0.6 printcore.

     

    I didn't get this warning with any of the three materials I've tried. I currently have an AA 0.4 core installed, which should be fine for HIPS.

     

    19 minutes ago, Dim3nsioneer said:

    Cura should send them automatically if you are connected to the printer through Digital Factory (network or cloud). And it will show you a small dialog at the bottom center (see attached picture). That happens after Cura startup.

     

    I wasn't previously connected to Digital Factory or Cura cloud because I didn't see any need for it (and I don't like cloud solutions in general, and I am baffled at the thought of needing a cloud service just in order to use a new material). But I wanted to test this, so just now I enrolled my Ultimaker account and my printer, confirmed that my account was synced in Cura and my printer was in added to Digital Factory, power cycled the printer, and tried to select material again. No change.

     

    19 minutes ago, Dim3nsioneer said:

    If it does not happen, something is broken in your Cura installation. The only way to get it running is afaik to "nuke" Cura, i.e. to clear all profiles and let Cura create a new installation. You can achieve this by deleting all content of the parent Cura configuration folder (menu help->show configuration folder and then two folders up "cura"); the better way than deleting is to rename "cura" into something like "cura.old" so Cura doesn't find it anymore but you would still have an easy way to go back.

    Cura_Message_MaterialUpdate.jpg

     

    I did this yesterday and it didn't help.

     

    I'm starting to suspect that I'm hitting a bug now, rather than it being user error. Anything I should look for in cura.log? Are there debug flags I can enable somewhere?

    Edited by threepoint
  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?

    Looking through cura.log I see these lines:

     

    WARNING - [MainThread] UM.VersionUpgradeManager._getUpgradeTasks [328]: Failed to get file version: ../Protopasta_CopperAlloys_2019/S3_Metal fill HTPLA/Protopasta_CopperBrassBronze_HTPLA.xml.fdm_material, skip it
    WARNING - [MainThread] UM.VersionUpgradeManager._getUpgradeTasks [332]: Failed to get file version: ../MatterHackers_NylonX/MatterHackers_NylonX.xml.fdm_material, skip it

    I reset both Cura 4.6 and Cura 4.7 beta and found the same errors in their respective log files.

  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?

    That might be an explanation why you don't see them. However, this is where e.g. @nallath might want to step in.

  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?
    4 hours ago, Dim3nsioneer said:

    When you test it, make sure the material is compatible with the UM3.

     

    3 hours ago, threepoint said:

    I just tried downloading and installing two materials from the marketplace (MatterHackers NylonX and Proto-Pasta Copper)

     

    Looking at the marketplace profiles, both of these materials are not compatible with the Ultimaker 3. They do list the UltimakerS3 though. @threepoint, your profile says you have an Ultimaker 3. Is that correct? 

  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?
    3 hours ago, threepoint said:

     

    When is the sync supposed to occur? After I choose "Print over network" in Cura?

    Upon connection (so basicly; if you reboot cura, the sync has happend). You don't need cloud connection to sync materials.

    Anyhow, please provide the full logs from Cura. The entries that you singled out are not the ones that are causing the problem.

     

    Furthermore, you can check what materials are installed by checking http://{YOUR PRINTER IP}/api/v1/materials in the browser.

    • Thanks 1
    Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?
    12 hours ago, nallath said:

    Upon connection (so basicly; if you reboot cura, the sync has happend). You don't need cloud connection to sync materials.

    Anyhow, please provide the full logs from Cura. The entries that you singled out are not the ones that are causing the problem.

     

    Furthermore, you can check what materials are installed by checking http://{YOUR PRINTER IP}/api/v1/materials in the browser.

     

    Thanks, @nallath. I've attached a copy of the materials from the printer API and the log from after the point of resetting Cura 4.6.2 and installing NylonX and Proto-Pasta (but not HIPS yet) from the marketplace. I noticed that the materials dump doesn't contain these. Are you able to find any hints on what went wrong?

     

    16 hours ago, SandervG said:

     

     

    Looking at the marketplace profiles, both of these materials are not compatible with the Ultimaker 3. They do list the UltimakerS3 though. @threepoint, your profile says you have an Ultimaker 3. Is that correct? 

     

    Correct, I have the UM3, not S3. But I should be able to use any third-party material I choose.

    cura.log materials.xml.zip

  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?

    As far as I can see from your logs, Cura attempted to send the materials to the printer. It also didn't seem to have received them, which usually happens because the printer refused them.

     

    The main situation when this happens is when you duplicate a material and then forget to unlink the material. At that point it has the same GUID, which makes the printer think that it already has that material.

    Anyhow, someone from the FW team will need to have a look at this, since this is as far as my knowhow on how the printer handles it goes. You could have a look at http://{PRINTER_IP}/api/v1/system/log right after you start up cura and have a look what pops up there.

     

  • Link to post
    Share on other sites
    Posted (edited) · How do I load a new material from Cura into a UM3?

    @nallath I've extracted the logs from the printer via USB (easier than catching the logs over the web API) and found these lines:

     

    Aug 21 08:43:55 ultimakersystem python3[473]: 2020-08-21 08:43:55,176 ERROR    materialDatabase Refused to replace material MaterialProfile<e00c4d3b-235a-4b52-83ce-64463ed10bb8>(Proto-pasta Copper/Brass/Bronze HTPLA Generic) - diameter: 2.850000, density: 1.240000 with material MaterialProfile<e00c4d3b-235a-4b52-83ce-64463ed10bb8>(Proto-pasta Copper/Brass/Bronze HTPLA Generic) - diameter: 2.850000, density: 1.240000, as already known material has a higher version number (3 vs 3)
    
    Aug 21 08:43:55 ultimakersystem python3[473]: 2020-08-21 08:43:55,273 ERROR    materialDatabase Refused to replace material MaterialProfile<69386c85-5b6c-421a-bec5-aeb1fb33f060>(Generic PETG Generic) - diameter: 1.750000, density: 1.380000 with material MaterialProfile<69386c85-5b6c-421a-bec5-aeb1fb33f060>(Generic PETG Generic) - diameter: 1.750000, density: 1.380000, as already known material has a higher version number (2 vs 2)
    
    Aug 21 08:43:55 ultimakersystem python3[473]: 2020-08-21 08:43:55,365 ERROR    materialDatabase Refused to replace material MaterialProfile<3f0ab5c9-4709-491f-911d-ac0a37b75f88>(MatterHackers HIPS Generic) - diameter: 2.850000, density: 1.050000 with material MaterialProfile<3f0ab5c9-4709-491f-911d-ac0a37b75f88>(MatterHackers HIPS Generic) - diameter: 2.850000, density: 1.050000, as already known material has a higher version number (2 vs 2)
    
    Aug 21 08:43:55 ultimakersystem python3[473]: 2020-08-21 08:43:55,680 ERROR    materialDatabase Refused to replace material MaterialProfile<de364911-9b10-4c32-96e4-58177c217163>(MatterHackers NylonX Generic) - diameter: 2.850000, density: 1.000000 with material MaterialProfile<de364911-9b10-4c32-96e4-58177c217163>(MatterHackers NylonX Generic) - diameter: 2.850000, density: 1.000000, as already known material has a higher version number (4 vs 4)
    
    Aug 21 08:43:55 ultimakersystem python3[473]: 2020-08-21 08:43:55,789 ERROR    materialDatabase Refused to replace material MaterialProfile<0ff92885-617b-4144-a03c-9989872454bc>(Generic PLA Generic) - diameter: 1.750000, density: 1.240000 with material MaterialProfile<0ff92885-617b-4144-a03c-9989872454bc>(Generic PLA Generic) - diameter: 1.750000, density: 1.240000, as already known material has a higher version number (3 vs 3)
    
    Aug 21 08:43:55 ultimakersystem python3[473]: 2020-08-21 08:43:55,883 ERROR    materialDatabase Refused to replace material MaterialProfile<a468d86a-220c-47eb-99a5-bbb47e514eb0>(Generic HIPS Generic) - diameter: 1.750000, density: 1.240000 with material MaterialProfile<a468d86a-220c-47eb-99a5-bbb47e514eb0>(Generic HIPS Generic) - diameter: 1.750000, density: 1.240000, as already known material has a higher version number (2 vs 2)

     

    I want to try deleting my custom materials from the printer in an attempt to force a resync, so I enabled developer mode and ssh'ed in, but I'm having trouble finding where the custom materials are stored. I browsed around and all I could find was:

     

    root@ultimakersystem:/usr/share/fdm_materials# ls
    Vertex_Delta_ABS.xml.fdm_material     generic_nylon.xml.fdm_material		ultimaker_abs_blue.xml.fdm_material		 ultimaker_pla_black.xml.fdm_material
    Vertex_Delta_PET.xml.fdm_material     generic_nylon_175.xml.fdm_material	ultimaker_abs_green.xml.fdm_material		 ultimaker_pla_blue.xml.fdm_material
    Vertex_Delta_PLA.xml.fdm_material     generic_pc.xml.fdm_material		ultimaker_abs_grey.xml.fdm_material		 ultimaker_pla_green.xml.fdm_material
    Vertex_Delta_TPU.xml.fdm_material     generic_pc_175.xml.fdm_material		ultimaker_abs_orange.xml.fdm_material		 ultimaker_pla_magenta.xml.fdm_material
    chromatik_pla.xml.fdm_material	      generic_petg.xml.fdm_material		ultimaker_abs_pearl-gold.xml.fdm_material	 ultimaker_pla_orange.xml.fdm_material
    dsm_arnitel2045_175.xml.fdm_material  generic_petg_175.xml.fdm_material		ultimaker_abs_red.xml.fdm_material		 ultimaker_pla_pearl-white.xml.fdm_material
    dsm_novamid1070_175.xml.fdm_material  generic_pla.xml.fdm_material		ultimaker_abs_silver-metallic.xml.fdm_material	 ultimaker_pla_red.xml.fdm_material
    fabtotum_abs.xml.fdm_material	      generic_pla_175.xml.fdm_material		ultimaker_abs_white.xml.fdm_material		 ultimaker_pla_silver-metallic.xml.fdm_material
    fabtotum_nylon.xml.fdm_material       generic_pp.xml.fdm_material		ultimaker_abs_yellow.xml.fdm_material		 ultimaker_pla_transparent.xml.fdm_material
    fabtotum_pla.xml.fdm_material	      generic_pva.xml.fdm_material		ultimaker_bam.xml.fdm_material			 ultimaker_pla_white.xml.fdm_material
    fabtotum_tpu.xml.fdm_material	      generic_pva_175.xml.fdm_material		ultimaker_cpe_black.xml.fdm_material		 ultimaker_pla_yellow.xml.fdm_material
    fiberlogy_hd_pla.xml.fdm_material     generic_tough_pla.xml.fdm_material	ultimaker_cpe_blue.xml.fdm_material		 ultimaker_pp_transparent.xml.fdm_material
    filo3d_pla.xml.fdm_material	      generic_tpu.xml.fdm_material		ultimaker_cpe_dark-grey.xml.fdm_material	 ultimaker_pva.xml.fdm_material
    filo3d_pla_green.xml.fdm_material     imade3d_petg_green.xml.fdm_material	ultimaker_cpe_green.xml.fdm_material		 ultimaker_tough_pla_black.xml.fdm_material
    filo3d_pla_red.xml.fdm_material       imade3d_petg_pink.xml.fdm_material	ultimaker_cpe_light-grey.xml.fdm_material	 ultimaker_tough_pla_green.xml.fdm_material
    generic_abs.xml.fdm_material	      imade3d_pla_green.xml.fdm_material	ultimaker_cpe_plus_black.xml.fdm_material	 ultimaker_tough_pla_red.xml.fdm_material
    generic_abs_175.xml.fdm_material      imade3d_pla_pink.xml.fdm_material		ultimaker_cpe_plus_transparent.xml.fdm_material  ultimaker_tough_pla_white.xml.fdm_material
    generic_bam.xml.fdm_material	      innofill_innoflex60_175.xml.fdm_material	ultimaker_cpe_plus_white.xml.fdm_material	 ultimaker_tpu_black.xml.fdm_material
    generic_cffcpe.xml.fdm_material       octofiber_pla.xml.fdm_material		ultimaker_cpe_red.xml.fdm_material		 ultimaker_tpu_blue.xml.fdm_material
    generic_cffpa.xml.fdm_material	      polyflex_pla.xml.fdm_material		ultimaker_cpe_transparent.xml.fdm_material	 ultimaker_tpu_red.xml.fdm_material
    generic_cpe.xml.fdm_material	      polymax_pla.xml.fdm_material		ultimaker_cpe_white.xml.fdm_material		 ultimaker_tpu_white.xml.fdm_material
    generic_cpe_175.xml.fdm_material      polyplus_pla.xml.fdm_material		ultimaker_cpe_yellow.xml.fdm_material		 verbatim_bvoh_175.xml.fdm_material
    generic_cpe_plus.xml.fdm_material     polywood_pla.xml.fdm_material		ultimaker_nylon_black.xml.fdm_material		 zyyx_pro_flex.xml.fdm_material
    generic_gffcpe.xml.fdm_material       tizyx_abs.xml.fdm_material		ultimaker_nylon_transparent.xml.fdm_material	 zyyx_pro_pla.xml.fdm_material
    generic_gffpa.xml.fdm_material	      tizyx_pla.xml.fdm_material		ultimaker_pc_black.xml.fdm_material
    generic_hips.xml.fdm_material	      tizyx_pla_bois.xml.fdm_material		ultimaker_pc_transparent.xml.fdm_material
    generic_hips_175.xml.fdm_material     ultimaker_abs_black.xml.fdm_material	ultimaker_pc_white.xml.fdm_material
    

    No sign of any MatterHackers or Proto-Pasta materials.

     

    Who can I reach out to on the firmware team for next steps?

    Edited by threepoint
  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?

    Those materials that you found are the pre-installed materials. You can find the newly added materials in /var/lib/griffin/fdm_materials

    I've notified the FW team about this topic.

  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?
    On 8/21/2020 at 8:15 AM, nallath said:

    Those materials that you found are the pre-installed materials. You can find the newly added materials in /var/lib/griffin/fdm_materials

    I've notified the FW team about this topic.

     

    @nallath I've deleted the MatterHackers HIPS material files from /var/lib/griffin/fdm_materials (but I've left other HIPS materials there), rebooted the printer, reopened Cura, and saw the message in Cura about sending new materials to the printer. I confirmed that the MatterHackers HIPS material showed up in /var/lib/griffin/fdm_materials with a new UUID. I re-selected the material for my model in Cura and sent the job to print. The printer said to load HIPS material into Extruder 2. I went to change the material type of Extruder 2 and HIPS is still not listed in the menu.

     

    [...]
    Aug 24 21:02:04 ultimakersystem-xxxxxxxxxxxx flipflop_wsgi.py[1098]: INF - app.services.printer.printer_service:127 - Printer service knows about material that needs an update: Material(3f0ab5c9-4709-491f-911d-ac0a37b75f88, MatterHackers, HIPS, Generic, 2)
    [...]
    Aug 24 21:27:29 ultimakersystem-xxxxxxxxxxxx python3[507]: 2020-08-24 21:27:29,317 ERROR    materialDatabase Refused to replace material MaterialProfile<3f0ab5c9-4709-491f-911d-ac0a37b75f88>(MatterHackers HIPS Generic) - diameter: 2.850000, density: 1.050000 with material MaterialProfile<3f0ab5c9-4709-491f-911d-ac0a37b75f88>(MatterHackers HIPS Generic) - diameter: 2.850000, density: 1.050000, as already known material has a higher version number (2 vs 2)
    [...]

     

    Thanks for reaching out to the firmware team. Can you tell me their usernames so I can @ ping them here? I am blocked on this and would love to help root-cause and resolve this. Thanks!

     

    (Also, for my own debugging: Would you mind sharing the command to view and/or save log files via the shell? It looks like only the /tmp/flow*.log file is present on disk, and that one tends to be empty, so I suspect that the real logs are pulled from the database on demand when the user chooses to dump to USB. Can you give me a shortcut to just do that over CLI? Thanks!)

  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?
    10 hours ago, threepoint said:

    Can you give me a shortcut to just do that over CLI? Thanks!)


    I think (emphasis on think) it's: sudo journalctl -fu griffin*

  • Link to post
    Share on other sites
    Posted (edited) · How do I load a new material from Cura into a UM3?
    On 8/25/2020 at 1:15 AM, nallath said:


    I think (emphasis on think) it's: sudo journalctl -fu griffin*

     

    Yep that does it, thanks!

     

    @nallath I've been monitoring the logs during my reattempts and I don't see anything new or obviously suspicious. I'm currently out of ideas for what to try next to get my material recognized. Would you mind checking with the FW folks to see if they can suggest an experiment? If nothing else, is there a command I can invoke to perform a forced full resync of materials / printer configuration? I suspect I might need to debug the griffin materials service, but I don't know enough python to do it confidently on my own.

    Edited by threepoint
  • Link to post
    Share on other sites
    Posted · How do I load a new material from Cura into a UM3?
    10 hours ago, threepoint said:

    f nothing else, is there a command I can invoke to perform a forced full resync of materials / printer configuration?

     

    What about the API? I don't have it in front of me right now, but there should be a link on the printer's "homepage".
    The API provides functions to manage materials on the printer (if i remember correctly).

  • 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...