Jump to content
jbacon

Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Recommended Posts

Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Hi,

I'm wondering what's the best/easiest way to make the UM3 to extrude 100mm for E-steps calibration.

Thanks.

Share this post


Link to post
Share on other sites
Posted (edited) · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Well you can probably just put these gcodes into a text file, save as move.gcode and put it on the sd card and print it:

 

M302 S0G92 E0G0 E100

 

The first command allows cold extrusion (moving extruder without heating up nozzle first).

The second one tells the extruder it is at position 0.  The last one says to move to position 100mm.

This assumes there is no load (the filament is only part way into the bowden). If you plan to actually extrude at the same time then you need to slow it the hell down using "F" or feedrate. You probably want it to take about 1 minute so that would be 100mm per minute or F100 and so change the G0 command to this: G0 E100 F100

I think that should work.  There is an "ultigcode" mode on the UM2 - not sure if UM3 still uses it - I haven't paid attention.  If it is in ultigcode mode then the E100 will move 100 cubic mm.  I'm pretty sure the UM3 doesn't use this volumetric method.  Most printers don't.

Or if it were me I would ssh into the printer.  First put it in "developer" mode on the front display.  Note the IP address while doing that.  Then download PUTTY and ssh to that ip address.  username is root password ultimaker.

Then do:

 

cd /usr/share/griffinpython3 command_util.pysendgcode M302 S0sendgcode G92 E0sendgcode G0 E100

 

Edited by Guest

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Well you can probably just put these gcodes into a text file, save as move.gcode and put it on the sd card and print it:

 

M302 S0G92 E0G0 E100

 

The first command allows cold extrusion (moving extruder without heating up nozzle first).

The second one tells the extruder it is at position 0.  The last one says to move to position 100mm.

This assumes there is no load (the filament is only part way into the bowden). If you plan to actually extrude at the same time then you need to slow it the hell down using "F" or feedrate. You probably want it to take about 1 minute so that would be 100mm per minute or F100 and so change the G0 command to this: G0 E100 F100

I think that should work.  There is an "ultigcode" mode on the UM2 - not sure if UM3 still uses it - I haven't paid attention.  If it is in ultigcode mode then the E100 will move 100 cubic mm.  I'm pretty sure the UM3 doesn't use this volumetric method.  Most printers don't.

Or if it were me I would ssh into the printer.  First put it in "developer" mode on the front display.  Note the IP address while doing that.  Then download PUTTY and ssh to that ip address.  username is root password ultimaker.

Then do:

 

cd /usr/share/griffinpython3 command_util.pysendgcode M302 S0sendgcode G92 E0sendgcode G0 E100

 

 

Just remember that gcode without the griffin header shall not pass. 'Lord of the rings style voice'. So get a gcode, remove the header, and wait. Or better just do like gr5 says and bypass all ans talk directly to the board using the python program

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Also to change the esteps later you will need to edit usr/share/griffin/griffin/machines/jedi.json (using vi editor for example)

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Well you can probably just put these gcodes into a text file, save as move.gcode and put it on the sd card and print it:

 

M302 S0G92 E0G0 E100

 

The first command allows cold extrusion (moving extruder without heating up nozzle first).

The second one tells the extruder it is at position 0.  The last one says to move to position 100mm.

This assumes there is no load (the filament is only part way into the bowden).  If you plan to actually extrude at the same time then you need to slow it the hell down using "F" or feedrate.  You probably want it to take about 1 minute so that would be 100mm per minute or F100 and so change the G0 command to this:  G0 E100 F100

I think that should work.  There is an "ultigcode" mode on the UM2 - not sure if UM3 still uses it - I haven't paid attention.  If it is in ultigcode mode then the E100 will move 100 cubic mm.  I'm pretty sure the UM3 doesn't use this volumetric method.  Most printers don't.

Or if it were me I would ssh into the printer.  First put it in "developer" mode on the front display.  Note the IP address while doing that.  Then download PUTTY and ssh to that ip address.  username is root password ultimaker.

Then do:

 

cd /usr/share/griffinpython3 command_util.pysendgcode M302 S0sendgcode G92 E0sendgcode G0 E100

 

 

Thanks I'll go with the ssh method, since I also prefer it.

Thanks all for the quick replies.

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

But why would you want to calibrate esteps/mm?

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Well changing e-steps is clear. People might want to change to a bontech. But indeed there's no need to calibrate for that aspecial the step differences are clear.

Allowing a step change simply by gcode for the um3 would be good.

  • Like 1

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Well changing e-steps is clear. People might want to change to a bontech. But indeed there's no need to calibrate for that aspecial the step differences are clear.

Allowing a step change simply by gcode for the um3 would be good.

 

You actually can, add the estep gcode to the header on s3d and works but since cura doesn't allow to add gcode header for um3 then is a bit a pain. Also I can't agree more with @ultiarjan having a console to edit the machine json of your own printer is a basic feature of any open ayatem printer... Ofc ofc linux knowhow yeah, that's like leaving a door open with a seven digit code vault. Ofc ofc, is open etcetc. But hardly editing the settings of the json machine could be taken as a needed security measure. But also ofc ofc um3 isn't for thinkers.

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Reviving an old topic but I need some help here guys. I need to calibrate the steps of my UM3 unfortunately I could not find "jedi.json" but there is "jedi.hex" instead does that mean I need to download the file and edit it using hex editor ( as I am not quite sure will that be the proper way to go ).

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

jedi.json should be there, unless they changed something on last versions editing the hex, even if you do it right, won't change the esteps value because the a20 olimex rules over the printerboard (white um2-3 board).

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

What folder did you look in? did you find lots of other json files?

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

The directory is this one : " /usr/share/griffin/griffin/machines " and the following files are there "1797.json 9066.json 9404.json 9502.json 9507.json 9511.json hotend_eeprom_data jedi.hex um3.json watto.json" I found the extruder default steps in "um3.json" but apparently the extruder steps configuration are global ( for both extruders ).

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Jedi was the codename for the UM3. I guess they have switched to the official name by now, so you would need to edit um3.json.

PS: I don't know what Watto is the codename of...

latest?cb=20081222024729&ext=.jpg

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

The directory is this one : " /usr/share/griffin/griffin/machines " and the following files are there "1797.json 9066.json 9404.json 9502.json 9507.json 9511.json hotend_eeprom_data jedi.hex um3.json watto.json" I found the extruder default steps in "um3.json" but apparently the extruder steps configuration are global ( for both extruders ).

Indeed they are for both extruders. Since they sell a machine that uses both extruders equals, they don’t have a Marlin (on the printerboard) that allows differebt esteps for each extruder.

A hotfix could be to use the search & replace postprocess to add the esteps gcode after each T0 or T1. But not sure if you can actually save all the settings / plugs on a profile or work job, so it might get quite tedious to do that every day.

On S3D you could do that, but since last um3 firmware update S3D default profiles fails and probably s3d will have to update their profiles.

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

The directory is this one : " /usr/share/griffin/griffin/machines " and the following files are there "1797.json  9066.json  9404.json  9502.json  9507.json  9511.json  hotend_eeprom_data  jedi.hex  um3.json  watto.json" I found the extruder default steps in "um3.json" but apparently the extruder steps configuration are global ( for both extruders ).

Indeed they are for both extruders. Since they sell a machine that uses both extruders equals, they don’t have a Marlin (on the printerboard) that allows differebt esteps for each extruder.

A hotfix could be to use the search & replace postprocess to add the esteps gcode after each T0 or T1. But not sure if you can actually save all the settings / plugs on a profile or work job, so it might get quite tedious to do that every day.

On S3D you could do that, but since last um3 firmware update S3D default profiles fails and probably s3d will have to update their profiles.

Will look into it. What do you mean UM3 fails with S3D with the latest firmware? As I do run the latest firm and S3D and it is all good (besides the quality issues I experience but this is no matter the Slicer even with CURA have issues ).

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

Will look into it. What do you mean UM3 fails with S3D with the latest firmware? As I do run the latest firm and S3D and it is all good (besides the quality issues I experience but this is no matter the Slicer even with CURA have issues ).

Basically new cura checks the gcode generated for the material ID. Default S3D profile has a value that cura doesn’t like so you can’t send it to the printer. (Not aure if this happens on the last firmware using sdcard)

There’s an user on the s3d forum (that I can’t link because it fails to link from here) that losted the values for all materials so it passes the check.

Isn’t that fails, is that they added an extra layer to check that the gcode.

Indeed isn’t biggie, but is there.

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

A small update:

 

Or if it were me I would ssh into the printer. First put it in "developer" mode on the front display. Note the IP address while doing that. Then download PUTTY and ssh to that ip address. username is root password ultimaker.

Then do:

 

cd /usr/share/griffinpython3 command_util.pysendgcode M302 S0sendgcode G92 E0sendgcode G0 E100

 

 

This procedure has become a little bit easier since earlier this year.

With the printer in developer mode you use SSH to log in as ultimaker / ultimaker and you are immediately in the command util prompt. No more need to start the python3 command.

The machine configuration file jedi.json is now split into several files where um3.json is on top and the other files derive from this, overruling settings and/or adding new settings. The numbers are from the Ultimaker model numbers:

9066= UM3

9511= UM3 extended

9502= UM2+

etc.

Some names and numbers were used for prototypes.

  • Like 1

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

My ultimaker3 had a default factory extruder step setup of 369 steps/mm.

When I tested with 100mm cold extrustion, I got 105.9mm..

 

y * 105.9 = 36900
y = 36900 / 105.9 = 348.4 (round to 1 decimal)
===========================================
SSH root access to your Ultimaker, login after that with: ultimaker/ultimaker.
 

=> 100mm extrusie:
sendgcode T0
sendgcode M302 S0
sendgcode G92 E0
sendgcode G0 E100
 

=> Test your new step value first with:

sendgcode T0
sendgcode M302 S0
sendgcode G92 E0
sendgcode M92 E348.4
sendgcode G0 E100
 

By the way, it's better to extrude 200mm or 300mm: smaller error ;-)

 

=> If new value is ok, make it permanent:

 

Changed 9066.json (= Ultimaker 3 ) file:

 

{
  "inherit": "um3.json",
  "properties": {
    "machine_type_name": "Ultimaker 3",
    "default_steps_per_mm": {"x": 80.0, "y": 80.0, "z": 400.0, "e": 348.4}
  }
}
 

REBOOT printer, login again and check the file: value still ok ?  (sometimes it is not stored).

 

Do a new test print (200mm extrusion) and look if the length is still 200mm ;-)

 

The above calibration is not inside the FAQ of the Ultimaker website, I think it's a must ;-)

 

 

 

Share this post


Link to post
Share on other sites
Posted · Ultimaker 3: Best way to extrude 100mm for e-steps calibration.

It's only a guess, but it is possible that a few extra percents are intentional.

There will be always some slippage on the feeder under real printing conditions (because of back pressure from the nozzle or something like this).

All Ultimaker printers are using slightly higher steps/mm for the e-axis than the theoretical / mathematical value.

 

A test with more practical relevance would be to print a simple shape and compare the real weight of the part with the expected value (according to the density of the used material and the printed volume).

Just to be sure that your printer extrudes not to less now... 🤷‍♂️

 

Oh - and you should put your changes in an "override" file or everything is lost at the next firmware update..., see:

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Our picks

    • Ultimaker Cura 4.0 | Stable available!
      Ultimaker Cura 4.0 is mainly focused on the improved user interface and cloud integration.
      As always, we want to collect your user feedback for this release. If there are any improvements you can think of, feel free to mention it here and help us to shape the next release.
      • 96 replies
×
×
  • 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!