Main-Purpose: this thing is a script to be applied to your favourite temp-tower
The script will add the desired temp-changes according to your wishes via options.
There are many good temperature-towers available.
The one I am providing here is not good - the thingiverse wants a STL-file, so I am giving it.
Beeing sure that the "desired" temperatures are applied is some of the problems.
I decided to write a bash-script which uses a sliced gcode-file and inserts user-customizable modified temperatures to fit the tower. Runs nicely under WIN10 with e.g. ubuntu installed as app or ofcourse in any linux-distribution.
The usage is quite simple:
- use your preferred temp-tower and use a slicer of your choice. slice it.
- make downloaded script executable via chmod +x ./insert_temp_changes.sh
- launch the script, at minimum provide your sliced gcode-file as input via -i option. this will then use the defaults, which is:
- start at 180 degree, end 220 degree, 5 degree steps, the modified output will be output.gcode. The lowest temp will be the bottom and increase
- the script allows options to set start-temp, end-temp, the steps in-between, the name of the output-file and it allows a reverse-knob.
- using the reverse-knob will have highest-temp at the bottom and lowest-temp with increasing layers
- full-blown command: ./insert_temp_changes.sh -i 180-220_PLA_Temp_calibration.gcode -b 180 -e 230 -s 10 -o result.gcode -r
using this temp as start : 180
using this temp as end : 230
increasing temp steps : 10
input_file : 180-220_PLA_Temp_calibration.gcode
output_file : result.gcode
The provided gcode-file gets analyzed and the total amount of layers extraced.
based on desired steps the script is aware how many layers are of equal temp and when the next temp-change is required.
amount of gcode layers: 311
Amount of temp changes : 6
amount of layers until temp-change: 51
The script helps to see if the changes make sense by several output, e.g. to grep through the resulting output-file for any temp-settings. The temp added by the script are marked with "added_modified_temp"
checking the modified gcode-file and display all temp-settings
11:M104 S225 ; set temperature
16:M109 S225 ; set temperature and wait for it to be reached
17:M109 S230 ; added_modified_temp
5844:M104 S220 ; added_modified_temp
12448:M104 S210 ; added_modified_temp
18079:M104 S200 ; added_modified_temp
24623:M104 S190 ; added_modified_temp
30325:M104 S180 ; added_modified_temp
37117:M104 S0 ; turn off temperature
First tests are working for me. If you think the script has issues, kindly let me know.