In regards to what sensor we will actually use for detecting the failed print, we were originally considering a rotational sensor. In this scenario we would use an Arduino tinkerkit micro servo module as seen in Figure 1; this would detect the actual motion of the filament. We decided on this servo module because of its small size that would aid in fitting it to a printer head, its Arduino compatibility, and its low cost ($8.99). However this method would require an additional servo motor and would be more expensive than the sensor we decided to go with.

In actuality we decided to use a color sensor to detect the failed print. The color sensor we decided on is an RGB color sensor, as seen in Figure 2, with an IR filter and white LED.

We will mount strips of color on a wheel that will be rotated as the filament is fed into the nozzle. The color sensor will then record the color changes as the wheel rotates at a rate of one measurement per second. The data from the color wheel will then be uploaded to excel where the changes in color can be seen and matched to the time. If the color data shows no change in the values, then a print is said to have failed at that time. This time can then be tracked back to the GCode lines that were recorded with the screenshot application.
The program we will be using to take screenshot of the G-Code is called Auto Screen Capture Capabilities. The program allows you to take screen shots of multiple screens and has a healthy selection of sampling frequency options. Specifically, one can choose frequencies in the milliseconds, seconds, minutes, and hours. Also, start and finish times can be specified to encapsulate the entirety of the build duration. One can even choose specific days to begin screenshots. This program will allow the time the build failed to be matched to the specific G-Code line. Another program, MatterControl, is a 3D printing software which would allow G-code to be displayed in real time in a G-code Terminal on a desktop.
In order to utilize the color sensor we needed a Digital Analog Converter (DAC). A DAC takes the voltages from the sensor and converts it into values the computer can understand. We plan on using the Arduino UNO Rev3, as found in Figure 3, as our digital converter. There are some with more or different features, but because it is the cheapest and most simple option for what our color sensor requires we have chosen the UNO Rev3. It can be found for $20-30.
