At Science Hack Day Boston 2015 I joined a team led by Dan Burkhardt working on a “bioprinter”: a 2D printer based on the InkShield, designed to print cells directly on Petri dishes. The basic idea is to use an Arduino to control both an ink head and a pair of stepper motors, one for each degree of freedom. In our implementation, the Arduino accepts sequences of G-codes, sent one by one over the serial port. Together with Pascal Timshel, I wrote the Python software that converts PNG images provided by the user into the G-codes and sends them to the Arduino.
By the end of the hackathon, we had a proof-of-concept design and were able to print arbitrary patterns with ink. Since then, Dan (who at the time worked in a biology lab at UMass) has used the device to print actual cells.