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.
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:
But when I try to change the printer name I got this awful message: "message": "400 Bad request"
So I can conclude that this is not an Authorization Issue, this is something else, but What could it be?
Edited by eKoh@Daid ? Is there some authorization thing here he needs to do?
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"'
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!
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:
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
And then I uploaded a signature_file from the Firmware downloads, and I get the following message:
"message": "expected bytes with no null"
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.
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.
Recommended Posts
gr5 2,094
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.
Link to post
Share on other sites