Hi, I am a 3D printer enthusiast and a novice programmer. I am writing my own 3D printer host software in Python. I am able to send individual lines of G-code to my home-built printer (Marlin firmware), and now I want to try some test prints with many hundreds of lines of G-code. My slicing program saves it's G-code into a text file, and the program grabs a line and sends it serially to the printer.
My question: For sending multiple lines in order, and getting the timing right, there must be some sort of confirmation from Marlin to the host software that the previous command was completed, right? My Python host software would just send line-by-line everything in my text document as quickly as possible if there isn't some sort of handshake put into place. Can someone please help me understand how Printrun/Pronterface deals with this?