Python Forum
Using Python to add text lines in a gcode file
Thread Rating:
  • 2 Vote(s) - 4 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Using Python to add text lines in a gcode file
#1
I have been building a 3D printer and would like to create a post-processing plugin for my slicer as the slicer doesn't provide a feature that I require. I'm using Cura as a slicer and it accepts python scripts as plugins to modify the generated Gcode as a built-in feature. Here is a (shortened) sample of the generated gcode:
Output:
;LAYER_COUNT:191   ;LAYER:0   M106 S255   G0 F3600 X99.873 Y99.731 Z0.3   ;TYPE:WALL-INNER   G1 F1800 X100.034 Y99.574 E0.02699   G1 X100.225 Y99.441 E0.05491   G1 X100.445 Y99.339 E0.08401   ;TIME_ELAPSED:18.234693   ;LAYER:1   M107   G0 F5400 X99.456 Y98.484 Z0.45   ;TYPE:WALL-INNER   M106 255   G1 F3300 X99.604 Y98.363 E47.83319   G1 X99.774 Y98.299 E47.84409   G1 X100.033 Y98.238 E47.86005   G0 X99.568 Y98.521   ;TIME_ELAPSED:37.123855   ;LAYER:2   M107   G0 F7200 X98.896 Y97.697 Z0.6   ;TYPE:WALL-INNER   M106 255   G1 F4800 X99.103 Y97.5 E80.19273   G1 X99.378 Y97.417 E80.20996   G1 X99.486 Y97.403 E80.2165   G0 X107.174 Y111.477   ;TIME_ELAPSED:1240.100936   M107   ;End of Gcode  
After each Z#.## move, I would like to insert some more lines of Gcode underneath. This could be done by looking at "LAYER" and inserting sample code 3 lines under. This is some sample code of what I would like to add.
Output:
G0 X100 Y50   G1 F100 X100 Y10   G1 F20 X110 Y10   G1 F100 X110 Y170   G1 F100 X110 Y10   G1 F20 X100 Y10   G0 X100 Y50  
So the end result would be:
Output:
;LAYER_COUNT:191   ;LAYER:0   M106 S255   G0 F3600 X99.873 Y99.731 Z0.3   G0 X100 Y50   G1 F100 X100 Y10   G1 F20 X110 Y10   G1 F100 X110 Y170   G1 F100 X110 Y10   G1 F20 X100 Y10   G0 X100 Y50   ;TYPE:WALL-INNER   G1 F1800 X100.034 Y99.574 E0.02699   G1 X100.225 Y99.441 E0.05491   G1 X100.445 Y99.339 E0.08401   ;TIME_ELAPSED:18.234693   ;LAYER:1   M107   G0 F5400 X99.456 Y98.484 Z0.45   G0 X100 Y50   G1 F100 X100 Y10   G1 F20 X110 Y10   G1 F100 X110 Y170   G1 F100 X110 Y10   G1 F20 X100 Y10   G0 X100 Y50   ;TYPE:WALL-INNER   M106 255   G1 F3300 X99.604 Y98.363 E47.83319   G1 X99.774 Y98.299 E47.84409   G1 X100.033 Y98.238 E47.86005   G0 X99.568 Y98.521   ;TIME_ELAPSED:37.123855   ;LAYER:2   M107   G0 F7200 X98.896 Y97.697 Z0.6   G0 X100 Y50   G1 F100 X100 Y10   G1 F20 X110 Y10   G1 F100 X110 Y170   G1 F100 X110 Y10   G1 F20 X100 Y10   G0 X100 Y50   ;TYPE:WALL-INNER   M106 255   G1 F4800 X99.103 Y97.5 E80.19273   G1 X99.378 Y97.417 E80.20996   G1 X99.486 Y97.403 E80.2165   G0 X107.174 Y111.477   ;TIME_ELAPSED:1240.100936   M107   ;End of Gcode  
Any Help Would be appreciated

Thanks
Reply


Messages In This Thread
Using Python to add text lines in a gcode file - by Johnlab - May-18-2017, 01:25 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Replace a text/word in docx file using Python Devan 4 3,675 Oct-17-2023, 06:03 PM
Last Post: Devan
  save values permanently in python (perhaps not in a text file)? flash77 8 1,282 Jul-07-2023, 05:44 PM
Last Post: flash77
  What are these python lines for? What are tey doing? Led_Zeppelin 7 1,662 Feb-13-2023, 03:08 PM
Last Post: deanhystad
Thumbs Up Need to compare the Excel file name with a directory text file. veeran1991 1 1,165 Dec-15-2022, 04:32 PM
Last Post: Larz60+
  Delete multiple lines from txt file Lky 6 2,365 Jul-10-2022, 12:09 PM
Last Post: jefsummers
  Modify values in XML file by data from text file (without parsing) Paqqno 2 1,743 Apr-13-2022, 06:02 AM
Last Post: Paqqno
  Editing text between two string from different lines Paqqno 1 1,341 Apr-06-2022, 10:34 PM
Last Post: BashBedlam
  failing to print not matched lines from second file tester_V 14 6,222 Apr-05-2022, 11:56 AM
Last Post: codinglearner
  Extracting Specific Lines from text file based on content. jokerfmj 8 3,114 Mar-28-2022, 03:38 PM
Last Post: snippsat
  Converted Pipe Delimited text file to CSV file atomxkai 4 7,088 Feb-11-2022, 12:38 AM
Last Post: atomxkai

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020