{"id":15608912,"url":"https://github.com/pcboy/gen_temp_tower","last_synced_at":"2025-07-03T09:31:36.855Z","repository":{"id":146100621,"uuid":"155822429","full_name":"pcboy/gen_temp_tower","owner":"pcboy","description":"A script to generate temperature towers gcode dynamically","archived":false,"fork":false,"pushed_at":"2018-11-08T02:59:23.000Z","size":12,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-06T09:41:05.174Z","etag":null,"topics":["3dprinting","slic3r"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pcboy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-11-02T06:17:04.000Z","updated_at":"2018-11-08T02:59:25.000Z","dependencies_parsed_at":"2023-05-14T18:30:21.419Z","dependency_job_id":null,"html_url":"https://github.com/pcboy/gen_temp_tower","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pcboy/gen_temp_tower","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pcboy%2Fgen_temp_tower","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pcboy%2Fgen_temp_tower/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pcboy%2Fgen_temp_tower/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pcboy%2Fgen_temp_tower/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pcboy","download_url":"https://codeload.github.com/pcboy/gen_temp_tower/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pcboy%2Fgen_temp_tower/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263300268,"owners_count":23445209,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3dprinting","slic3r"],"created_at":"2024-10-03T05:40:28.620Z","updated_at":"2025-07-03T09:31:36.819Z","avatar_url":"https://github.com/pcboy.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gen_temp_tower\n\nA script to generate temperature towers gcode dynamically.\nI included a profile for the Prusa MK3 already but you can use your own slic3r config too.\n\n# Dependencies\nYou need to install to have OpenSCAD and Slic3rPE installed. Unless you use the Dockerfile.\n\n# Installation\n\nJust do:\n\n```\n$\u003e make\n```\n\nThere is also a Dockerfile in there if you want:\n\n```\n$\u003e make docker\n```\n\nYou can call gen\\_temp\\_tower like that:\n\n```\n$\u003e docker run -v `pwd`/profiles:/root/profiles -v `pwd`/temp_tower_output:/root/temp_tower_output gen_temp_tower --from-temp 200\n```\n\nYou'll get the resulting gcode file in ./temp\\_tower\\_output folder.\n\n# Usage\n\n```\n$\u003e ruby gen_temp_power.rb -h\nOptions:\n  -f, --from-temp=\u003ci\u003e         From temperature (default: 195)\n  -t, --to-temp=\u003ci\u003e           To temperature (default: 230)\n  -i, --iteration=\u003ci\u003e         Degrees step between each increment (e.g if 5, then 195,200,205,...) (default: 5)\n  -c, --cube-height=\u003ci\u003e       The height in mm for each temperature iteration (default: 5)\n  -s, --slic3r-profile=\u003cs\u003e    Path to your slic3r config. (Default: profiles/mk3/Pretty_PLA_V3.ini)\n  -o, --openscad-exec=\u003cs\u003e     Path to openscad executable. (Default: /Applications/OpenSCAD.app/Contents/MacOS/OpenSCAD)\n  -l, --slic3r-exec=\u003cs\u003e       Path to slic3r executable. (add --no-gui parameter on linux) (default: /Applications/Slic3r.app/Contents/MacOS/Slic3r)\n  -h, --help                  Show this message\n```\n\nExample:\n\n```\n$\u003e ruby gen_temp_tower.rb --from-temp 200 --to-temp 250 --iteration 10\nGeneration STL file\n{if layer_z==1.00}M109 R200 {endif}\n{if layer_z==6.00}M109 R210 {endif}\n{if layer_z==11.00}M109 R220 {endif}\n{if layer_z==16.00}M109 R230 {endif}\n{if layer_z==21.00}M109 R240 {endif}\n{if layer_z==26.00}M109 R250 {endif}\nSlicing file with Slic3r\n$\u003e\n```\n\nYou should then get a temp\\_tower.stl file in the temp_tower_output/ directory, and a temp\\_tower.gcode in that same dir with the proper gcode dealing with the temperature change.\nThis temp tower will test the temperatures from 200C to 250C with an iteration of 10C between each step.\n\nYou can also specify the path to openscad and Slic3r if they don't match the default ones. For instance on Linux I use an appImage of Slic3r PE and I have to add --no-gui to use it as a cli tool.\nSo I have to call gen_temp_tower like this:\n\n```\n$\u003e ruby gen_temp_power.rb --slic3r-exec=\"./Slic3rPE-1.41.1-beta+linux64-full-201809261049.AppImage --no-gui\" --openscad-exec=\"openscad-nightly\"\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpcboy%2Fgen_temp_tower","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpcboy%2Fgen_temp_tower","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpcboy%2Fgen_temp_tower/lists"}