I thought it would be fun to implement a rudimentary version of Octoprint that can receive a gcode file and initiate a print on my Prusa i3.

What are the requirements for initiating a print on a 3D printer via USB?