My personal contrbution to the machine building weeks was to program and test both the electronical and the
  interface part. I've mainly studied the grbl firmware and i've written the python interface to
  control the machine.
  For more information and the detailed code FOLLOW THIS LINK