Konubinix' site

Creating a Temperature Tower

tag: learning 3D printing

creating a temperature tower

I have used enough filaments to feel the need to have a semi automatic way of finding out the good temperature for a print. One that reduces stringing, does not induce warping and gives a nice looking print.

I decided to follow the instructions in here

I don’t have anything fancy in mind, so I’ll try the first suggested tower.

  • Temp Tower #1 by stoempie:
  • https://www.thingiverse.com/thing:2493504
  • 0.2 layer height.
  • 95% infill.
  • Base is 4 layers.
  • There are 34 layers in each test block.
  • Layer numbers needed for scripts 1, 38, 72, 106, 140, 174, 208, 242, 276.

So far, the filaments I have been using appear to have been working at relatively low temperatures, so I guess I might like this file.

()

But, I might need to take a look at this one for some particular filaments.

()

Fortunately, I don’t have to click on the script button again and again. I can simply save the project, unzip the file and edit the post_processing_scripts to ressemble this

post_processing_scripts = [ChangeAtZ]\\\ncaz_enabled = True\\\na_trigger = layer_no\\\nb_targetZ = 5.0\\\nb_targetL = 1\\\nc_behavior = keep_value\\\ncaz_output_to_display = False\\\ne1_Change_speed = False\\\ne2_speed = 100\\\nf1_Change_printspeed = False\\\nf2_printspeed = 100\\\ng1_Change_flowrate = False\\\ng2_flowrate = 100\\\ng3_Change_flowrateOne = False\\\ng4_flowrateOne = 100\\\ng5_Change_flowrateTwo = False\\\ng6_flowrateTwo = 100\\\nh1_Change_bedTemp = False\\\nh2_bedTemp = 60\\\ni1_Change_extruderOne = True\\\ni2_extruderOne = 210\\\ni3_Change_extruderTwo = False\\\ni4_extruderTwo = 190\\\nj1_Change_fanSpeed = False\\\nj2_fanSpeed = 100\\\ncaz_change_retract = False\\\ncaz_retractstyle = linear\\\ncaz_change_retractfeedrate = False\\\ncaz_retractfeedrate = 40\\\ncaz_change_retractlength = False\\\ncaz_retractlength = 6\\\n\\\n
	[ChangeAtZ]\\\ncaz_enabled = True\\\na_trigger = layer_no\\\nb_targetZ = 5.0\\\nb_targetL = 38\\\nc_behavior = keep_value\\\ncaz_output_to_display = False\\\ne1_Change_speed = False\\\ne2_speed = 100\\\nf1_Change_printspeed = False\\\nf2_printspeed = 100\\\ng1_Change_flowrate = False\\\ng2_flowrate = 100\\\ng3_Change_flowrateOne = False\\\ng4_flowrateOne = 100\\\ng5_Change_flowrateTwo = False\\\ng6_flowrateTwo = 100\\\nh1_Change_bedTemp = False\\\nh2_bedTemp = 60\\\ni1_Change_extruderOne = True\\\ni2_extruderOne = 205\\\ni3_Change_extruderTwo = False\\\ni4_extruderTwo = 190\\\nj1_Change_fanSpeed = False\\\nj2_fanSpeed = 100\\\ncaz_change_retract = False\\\ncaz_retractstyle = linear\\\ncaz_change_retractfeedrate = False\\\ncaz_retractfeedrate = 40\\\ncaz_change_retractlength = False\\\ncaz_retractlength = 6\\\n\\\n
	[ChangeAtZ]\\\ncaz_enabled = True\\\na_trigger = layer_no\\\nb_targetZ = 5.0\\\nb_targetL = 72\\\nc_behavior = keep_value\\\ncaz_output_to_display = False\\\ne1_Change_speed = False\\\ne2_speed = 100\\\nf1_Change_printspeed = False\\\nf2_printspeed = 100\\\ng1_Change_flowrate = False\\\ng2_flowrate = 100\\\ng3_Change_flowrateOne = False\\\ng4_flowrateOne = 100\\\ng5_Change_flowrateTwo = False\\\ng6_flowrateTwo = 100\\\nh1_Change_bedTemp = False\\\nh2_bedTemp = 60\\\ni1_Change_extruderOne = True\\\ni2_extruderOne = 200\\\ni3_Change_extruderTwo = False\\\ni4_extruderTwo = 190\\\nj1_Change_fanSpeed = False\\\nj2_fanSpeed = 100\\\ncaz_change_retract = False\\\ncaz_retractstyle = linear\\\ncaz_change_retractfeedrate = False\\\ncaz_retractfeedrate = 40\\\ncaz_change_retractlength = False\\\ncaz_retractlength = 6\\\n\\\n
	[ChangeAtZ]\\\ncaz_enabled = True\\\na_trigger = layer_no\\\nb_targetZ = 5.0\\\nb_targetL = 106\\\nc_behavior = keep_value\\\ncaz_output_to_display = False\\\ne1_Change_speed = False\\\ne2_speed = 100\\\nf1_Change_printspeed = False\\\nf2_printspeed = 100\\\ng1_Change_flowrate = False\\\ng2_flowrate = 100\\\ng3_Change_flowrateOne = False\\\ng4_flowrateOne = 100\\\ng5_Change_flowrateTwo = False\\\ng6_flowrateTwo = 100\\\nh1_Change_bedTemp = False\\\nh2_bedTemp = 60\\\ni1_Change_extruderOne = True\\\ni2_extruderOne = 195\\\ni3_Change_extruderTwo = False\\\ni4_extruderTwo = 190\\\nj1_Change_fanSpeed = False\\\nj2_fanSpeed = 100\\\ncaz_change_retract = False\\\ncaz_retractstyle = linear\\\ncaz_change_retractfeedrate = False\\\ncaz_retractfeedrate = 40\\\ncaz_change_retractlength = False\\\ncaz_retractlength = 6\\\n\\\n
	[ChangeAtZ]\\\ncaz_enabled = True\\\na_trigger = layer_no\\\nb_targetZ = 5.0\\\nb_targetL = 140\\\nc_behavior = keep_value\\\ncaz_output_to_display = False\\\ne1_Change_speed = False\\\ne2_speed = 100\\\nf1_Change_printspeed = False\\\nf2_printspeed = 100\\\ng1_Change_flowrate = False\\\ng2_flowrate = 100\\\ng3_Change_flowrateOne = False\\\ng4_flowrateOne = 100\\\ng5_Change_flowrateTwo = False\\\ng6_flowrateTwo = 100\\\nh1_Change_bedTemp = False\\\nh2_bedTemp = 60\\\ni1_Change_extruderOne = True\\\ni2_extruderOne = 190\\\ni3_Change_extruderTwo = False\\\ni4_extruderTwo = 190\\\nj1_Change_fanSpeed = False\\\nj2_fanSpeed = 100\\\ncaz_change_retract = False\\\ncaz_retractstyle = linear\\\ncaz_change_retractfeedrate = False\\\ncaz_retractfeedrate = 40\\\ncaz_change_retractlength = False\\\ncaz_retractlength = 6\\\n\\\n
	[ChangeAtZ]\\\ncaz_enabled = True\\\na_trigger = layer_no\\\nb_targetZ = 5.0\\\nb_targetL = 174\\\nc_behavior = keep_value\\\ncaz_output_to_display = False\\\ne1_Change_speed = False\\\ne2_speed = 100\\\nf1_Change_printspeed = False\\\nf2_printspeed = 100\\\ng1_Change_flowrate = False\\\ng2_flowrate = 100\\\ng3_Change_flowrateOne = False\\\ng4_flowrateOne = 100\\\ng5_Change_flowrateTwo = False\\\ng6_flowrateTwo = 100\\\nh1_Change_bedTemp = False\\\nh2_bedTemp = 60\\\ni1_Change_extruderOne = True\\\ni2_extruderOne = 185\\\ni3_Change_extruderTwo = False\\\ni4_extruderTwo = 190\\\nj1_Change_fanSpeed = False\\\nj2_fanSpeed = 100\\\ncaz_change_retract = False\\\ncaz_retractstyle = linear\\\ncaz_change_retractfeedrate = False\\\ncaz_retractfeedrate = 40\\\ncaz_change_retractlength = False\\\ncaz_retractlength = 6\\\n\\\n
	[ChangeAtZ]\\\ncaz_enabled = True\\\na_trigger = layer_no\\\nb_targetZ = 5.0\\\nb_targetL = 208\\\nc_behavior = keep_value\\\ncaz_output_to_display = False\\\ne1_Change_speed = False\\\ne2_speed = 100\\\nf1_Change_printspeed = False\\\nf2_printspeed = 100\\\ng1_Change_flowrate = False\\\ng2_flowrate = 100\\\ng3_Change_flowrateOne = False\\\ng4_flowrateOne = 100\\\ng5_Change_flowrateTwo = False\\\ng6_flowrateTwo = 100\\\nh1_Change_bedTemp = False\\\nh2_bedTemp = 60\\\ni1_Change_extruderOne = True\\\ni2_extruderOne = 180\\\ni3_Change_extruderTwo = False\\\ni4_extruderTwo = 190\\\nj1_Change_fanSpeed = False\\\nj2_fanSpeed = 100\\\ncaz_change_retract = False\\\ncaz_retractstyle = linear\\\ncaz_change_retractfeedrate = False\\\ncaz_retractfeedrate = 40\\\ncaz_change_retractlength = False\\\ncaz_retractlength = 6\\\n\\\n
	[ChangeAtZ]\\\ncaz_enabled = True\\\na_trigger = layer_no\\\nb_targetZ = 5.0\\\nb_targetL = 242\\\nc_behavior = keep_value\\\ncaz_output_to_display = False\\\ne1_Change_speed = False\\\ne2_speed = 100\\\nf1_Change_printspeed = False\\\nf2_printspeed = 100\\\ng1_Change_flowrate = False\\\ng2_flowrate = 100\\\ng3_Change_flowrateOne = False\\\ng4_flowrateOne = 100\\\ng5_Change_flowrateTwo = False\\\ng6_flowrateTwo = 100\\\nh1_Change_bedTemp = False\\\nh2_bedTemp = 60\\\ni1_Change_extruderOne = True\\\ni2_extruderOne = 175\\\ni3_Change_extruderTwo = False\\\ni4_extruderTwo = 190\\\nj1_Change_fanSpeed = False\\\nj2_fanSpeed = 100\\\ncaz_change_retract = False\\\ncaz_retractstyle = linear\\\ncaz_change_retractfeedrate = False\\\ncaz_retractfeedrate = 40\\\ncaz_change_retractlength = False\\\ncaz_retractlength = 6\\\n\\\n
	[ChangeAtZ]\\\ncaz_enabled = True\\\na_trigger = layer_no\\\nb_targetZ = 5.0\\\nb_targetL = 276\\\nc_behavior = keep_value\\\ncaz_output_to_display = False\\\ne1_Change_speed = False\\\ne2_speed = 100\\\nf1_Change_printspeed = False\\\nf2_printspeed = 100\\\ng1_Change_flowrate = False\\\ng2_flowrate = 100\\\ng3_Change_flowrateOne = False\\\ng4_flowrateOne = 100\\\ng5_Change_flowrateTwo = False\\\ng6_flowrateTwo = 100\\\nh1_Change_bedTemp = False\\\nh2_bedTemp = 60\\\ni1_Change_extruderOne = True\\\ni2_extruderOne = 170\\\ni3_Change_extruderTwo = False\\\ni4_extruderTwo = 190\\\nj1_Change_fanSpeed = False\\\nj2_fanSpeed = 100\\\ncaz_change_retract = False\\\ncaz_retractstyle = linear\\\ncaz_change_retractfeedrate = False\\\ncaz_retractfeedrate = 40\\\ncaz_change_retractlength = False\\\ncaz_retractlength = 6\\\n\\\n

Then, I zip it and load it in cura.

I get all the post_processing_scripts parts without much effort

The 3mf file I get is this one 210.3mf

210.gcode

After printing it with all the filaments I have.

I realize that they are all not doing great, but I assume it is was I can expect from the labists x1 mini. It gives me a good idea of the temperature to use though. Actually, the correct temperature to avoid the stringing appears to be lower than the given one. Maybe I should play a bit and increase the retractation factor.