{"id":27329435,"url":"https://github.com/csirmaz/gcode_power_splitter","last_synced_at":"2025-08-15T17:09:28.999Z","repository":{"id":228285758,"uuid":"773570849","full_name":"csirmaz/gcode_power_splitter","owner":"csirmaz","description":"Split gcode into blocks of layers for 3D printing in multiple stages","archived":false,"fork":false,"pushed_at":"2024-11-12T23:44:32.000Z","size":51,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-12T12:43:35.758Z","etag":null,"topics":["3d-printing","gcode","gcode-parser"],"latest_commit_sha":null,"homepage":"","language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/csirmaz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2024-03-18T01:45:17.000Z","updated_at":"2024-11-12T23:44:35.000Z","dependencies_parsed_at":"2024-03-21T22:25:38.612Z","dependency_job_id":"c2336521-25fa-4dd9-baed-c7f1cbbe914a","html_url":"https://github.com/csirmaz/gcode_power_splitter","commit_stats":null,"previous_names":["csirmaz/gcode_power_splitter"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/csirmaz/gcode_power_splitter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csirmaz%2Fgcode_power_splitter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csirmaz%2Fgcode_power_splitter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csirmaz%2Fgcode_power_splitter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csirmaz%2Fgcode_power_splitter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/csirmaz","download_url":"https://codeload.github.com/csirmaz/gcode_power_splitter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csirmaz%2Fgcode_power_splitter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270602456,"owners_count":24614260,"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","status":"online","status_checked_at":"2025-08-15T02:00:12.559Z","response_time":110,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["3d-printing","gcode","gcode-parser"],"created_at":"2025-04-12T12:33:12.746Z","updated_at":"2025-08-15T17:09:28.964Z","avatar_url":"https://github.com/csirmaz.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gcode_power_splitter\n\nSplit gcode into blocks of layers for 3D printing in multiple stages\n\nUsage: `./gcode_split.pl MYFILE.gcode`\n\nIt produces `MYFILE.0.gcode`, `MYFILE.1.gcode` etc. for the parts, which\nare horizontal slices of roughly equal height or of roughly equal printing time.\n\nThe main aim of this script is to produce gcode parts that can be printed in sessions,\neven allowing powering down the 3D printer between sessions.\n\nConfiguration values are set at the beginning of the script.\n\nIt completely replaces the start and end gcode snippets. These are defined\nin `get_begin()` and `get_end()` and may require changes for your printer.\n`get_after_layer()` is added after the 1st layer in a part.\n\nThe code was written to split Cura-generated gcode files.\nAmong others, it relies on `; LAYER` comments to identify layers,\nand only parses gcode commands that are necessary for its function.\nIt is also limited to the types of gcode Cura generates, e.g.\nit does not parse logical coordinates (`G92`).\n\nIt makes best effort to throw errors if it encounters gcode it\nwas not designed to process.\n\n## Features\n\n- Track printing time\n\n- Approach the printed part from above when continuing so as not to knock it\n\n- Limit homing to X and Y as Z-homing generally moves the head to the middle of the bed\n\n- Allow prepping the nozzle in the air in case there is not enough room on the bed (configurable - requires the user to remove the extruded filament)\n\n- Print the first layer slowly and (optionally) at the initial higher temperature when continuing for better adhesion\n\n- Optionally retrace (iron) the last printed layer to melt it for better adhesion\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsirmaz%2Fgcode_power_splitter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcsirmaz%2Fgcode_power_splitter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsirmaz%2Fgcode_power_splitter/lists"}