Jump to content

Custom nozzle prime


Recommended Posts

Posted · Custom nozzle prime

Hey, I'm in the process of making a custom definition file for my delta printer, I also have variant files for different nozzle sizes.


For priming my nozzle I used to use skirts because that was easy. I experimented a bit and was able to determine that my printer needed about 60mm^3 of filament to fully prime my nozzles. This allowed me to calculate my minimal skirt length, for different layer heights and nozzle/line_widths, in the "overides":{...} section of my definition file:

"skirt_brim_minimal_length": {
	"default_value": 750,
	"value": "60/(layer_height_0*line_width)",


The problem with using skirts is that my maximum build area is reduced. So I'm looking at other ways of priming my nozzle which have a minimal influence on my printing area and which I don't have to worry about removing during the print because the might interfere with the print it self. I thought of using a G2 arc command in the start code of my machine. This way I can print at the very outside of my bed and the gcode itself is very small.

The problem I'm encountering during the implementation ist that I would ne to insert calculated values into the start code. And I'm not sure on how to achieve this. Here is an example of what I would like to do but what sadly doesn't work:

"platform_adhesion": {
	"children": {
		"_prime_arc_start_x": {
			"label": "Prime arc start point in x",
			"description": "The starting point in x-axis direction of the priming arc",
			"unit": "mm",
			"type": "float",
			"default_value": "0"

"overrides": {
"default_value": "G1 X + '_prime_arc_start_x'"


I've played around quite a bit with this but haven't been successful. I've tried:

- changing the type from "float" to string"

- using python syntax to put variable into the string (link)

Even if I get this to work I'm not sure on how this would behave if I change my nozzle/variant once cura has been started.


Does anyone have any ideas on how I could either put values into my start code or have any other suggestions on how to prime my nozzle in a good way using the priming volume of 60mm^3?



  • Link to post
    Share on other sites

    Posted (edited) · Custom nozzle prime
    On 4/7/2020 at 3:38 PM, nallath said:

    Default_value can never be anything that is interpreted by python. I think you could try the following:


    "value": "'G1 X' + str(_prime_arc_start_x)"


    Thanks for the answer, that worked perfectly. 

    But I must admit I found a simpler solution to my problem. I was frustrated by using skirts because it took away too much from my build area. But this was only due to the fact that I had set the skirt distance to 10 mm. should work out perfectly:


    "adhesion_type": { "default_value": "skirt"},
    	"default_value": 750,
    	"value": "60/(layer_height_0*line_width)",
    	"minimum_value": "0",
    	"minimum_value_warning": "25",
    	"maximum_value_warning": "4000"
    "skirt_gap": { 
    	"default_value": "1`",
    	"value": "3*wall_line_width_0"


    Edited by schpongo
  • 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

      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
      • Ultimaker Cura 5.6 stable released
        Cura now supports Method series printers!
        A year after the merger of Ultimaker and MakerBotQQ, we have unlocked the ability for users of our Method series printers to slice files using UltiMaker Cura. As of this release, users can find profiles for our Method and Method XL printers, as well as material profiles for ABS-R, ABS-CF, and RapidRinse. Meaning it’s now possible to use either Cura or the existing cloud-slicing software CloudPrint when printing with these printers or materials
        • 6 replies
    • Create New...