Jump to content
Cura Connect | Survey Read more... ×
Ultimaker Community of 3D Printing Experts
eKoh

Change Material Profile from Ultimaker 3 Extended

Recommended Posts

Hello community! This is my first post and I am facing to a problem I have been trying to solve for 2 days from now.

 

I need to manage the materials profiles from Ultimaker 3 machines, because we are having a problem with the default print core temperature for some materials, they are not being heated enough and when we load the material it (most of the times) takes too long to finally extrude and also, the print core is being covered by the material, and not extrude anymore.

 

That's why I need to raise a bit the print core default temperature for some material, like TPU 95A. This was possible in Ultimaker 2+ machines, but on Ultimakers 3, I am not able to do so.

 

I've tried by looking for different options in the machine with no success.

I have also tried by turning on the "Developer Mode" and working with the APIs, I had success with the following APIs:
POST /auth/request
GET /auth/check/{id}
GET/auth/verify
 

But by adding manually the --digest --user id:password, I've got no success with the following request:
POST /materials
PUT /system/name


Which is what I believe the post instruction I need to do. When trying to change the name then this appears:
ultimaker-message-ok.thumb.PNG.4ec736a0c2d5d673f9f5e18f4861d723.PNG

 

"message": "400: Bad Request" for the change name API

"message": "ok" for the /auth/verify API


Specifications:
Firmware revision: 4.07.... (I've updated it 1 week ago)
Printer: Ultimaker 3 Extended

 

Threads I've read for support:

 

 

I have also tried "Postman" but with no success

ultimaker-message-not.PNG

Edited by eKoh

Share this post


Link to post
Share on other sites

First of all, during printing, the temperatures are all set via Cura.  On the UM2 the temperatures were set on the printer but with the UM3 they are set in Cura.

 

And when changing materials you don't really need to heat up the core - well I don't anyway - I just lift the lever on the feeder, pull out the old material and insert the new one.  Then if I switch from say PLA to CPE i tell the printer on the front panel.

Share this post


Link to post
Share on other sites

Note that gr5s suggestion works best after a successful print, etc., where one of the last end.gcode actions is to withdraw the filament a bit, enough that you can use the lever to pull away the tensioner and do exactly what he says! As a result, my machines when cold can work great for swapping material quickly even when I don't have time to load it officially. You miss out from recognizing the precise filament if you are using the Ultimaker filament, though.

Share this post


Link to post
Share on other sites
2 hours ago, gr5 said:

First of all, during printing, the temperatures are all set via Cura.  On the UM2 the temperatures were set on the printer but with the UM3 they are set in Cura.

 

And when changing materials you don't really need to heat up the core - well I don't anyway - I just lift the lever on the feeder, pull out the old material and insert the new one.  Then if I switch from say PLA to CPE i tell the printer on the front panel.

 

Thank you for your reply gr5!

I do change the printer filaments as the instructions say. The problem is for example, when I load TPU 95A material, the procedure is this:

1. Go to Material 1 > Load > TPU 95A. The print core heats up and after it is hot the material is loaded
2. UM3 says: "Confirm when the material is being extruded", and then I wait for that, but actually very little material is extruded, thus, the print core is not clean yet.
3. It "auto confirms" (sometimes) and the printer goes back as the material was correctly extruded but it actually still has some of the last material.

What I had success with is to extrude it manually, by raising the temperature from the UM3 panel, and pushing the material from the feeder. So that's why I want to raise the temperature.
 


 

I got updates about the APIs stuff, I tried the Hotspot connection (like for when you setup your WiFi connection) and some APIs works without the need of an id/key:


um3_1.thumb.PNG.97b2165a9ac54c346e3edc0e96aacb4b.PNG
um3_3.thumb.PNG.7a8732b2974f556ad891f94550cf71da.PNG

 

But when I try to change the printer name I got this awful message: "message": "400 Bad request"

um3_2.thumb.PNG.8d39a2645f8c266690ba4d35ecb49579.PNG

 

So I can conclude that this is not an Authorization Issue, this is something else, but What could it be?

Edited by eKoh

Share this post


Link to post
Share on other sites

No, 401 would indicate authentication required. 400 means the parameters to the call are not as expected, most likely our documentation is slightly wrong then.

 

For setting the printer name, the data needs to be proper "json", so it is missing quotes inside the data.

-d '"Ultimaker"'

 

Share this post


Link to post
Share on other sites
8 hours ago, Daid said:

No, 401 would indicate authentication required. 400 means the parameters to the call are not as expected, most likely our documentation is slightly wrong then.

 

For setting the printer name, the data needs to be proper "json", so it is missing quotes inside the data.


-d '"Ultimaker"'

 

 

It worked :D!

 

um3_4.thumb.PNG.6c0196b76c21b8f632b045aa843286ee.PNG

 

The only downside is that I can only use these APIs through the Hotspot technique (the no security credentials needed), the other way is to do it with credentials through ssh connection, but this is less practical than the APIs.




Anyway, so I am making progress here, but what I need to do is to change the materials profile, I used the GET /materials API to get the materials my UM3 currently has, and saved it to a MaterialsFile.xml, and made a minor change, from 223 to 224 from all the temperatures available, just to check if it works:

 

um3_5.PNG.ea27a262ea483892e6b0ee0880752c59.PNG

 

And when I try to post materials, I use "materials" as the name of the file (I also tried only materials without the "") and I get the following:

 

"message": "profile not stored"

"result": false

 

5a8c4419531bb_Screenshot2018-02-2008_35_49.thumb.png.d2ef25ea4b0c67d645aa741da765f0e2.png

 

And then I uploaded a signature_file from the Firmware downloads, and I get the following message:

 

"message": "expected bytes with no null"

 

5a8c450a39690_Screenshot2018-02-2008_36_12.thumb.png.fade14e5638b7f0825f469ec62100345.png

 

I was wondering if the UM2 and the UM3 share the same source code (or atleast the messages errors) for these APIs, since the UM3 source code has not been released, and where are they located at? I wanted to see by myself the cause of these messages but I was unable to find the messages.

Share this post


Link to post
Share on other sites

For material upload errors, most things actually end up in the logs instead of in the API output (due to some shortcuts taken in the code)

 

The UM2 and UM3 share almost no code.

 

The code is actually readable on the UM3 itself, as it's all python. Logging in with ssh in /usr/share/griffin/griffin/interface/http you can find the API implementation.

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

  • Our picks

    • Architect Design Contest | People
      The goal of this contest is to design a set of people figurines that could be used in such a project to make an area, office or mall seem populated. 
      Think of different types of people in different environments, like walking people, people standing still, working people, and both men and women.
       
        • Like
      • 9 replies
    • Taking Advantage of DfAM
      This is a statement that’s often made about AM/3DP. I'll focus on the way DfAM can take advantage of some of the unique capabilities that AM and 3DP have to offer. I personally think that the use of AM/3DP for light-weighting is one of it’s most exciting possibilities and one that could play a key part in the sustainability of design and manufacturing in the future.
      • 3 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!