Our original printer implementation used a syringe to extrude metallic ink onto a substrate. This came with multple problems: Resolution was not even close to what was required, the image processing was extremely complicated and would take a long time on our embedded computer. Because of its complexity, the printing process was hard to implement.
For the syringe printing system we had to do much more processing. The first step was to break the image into continuous regions. This is know as "blob detection". The image below shows a sample circuit after it has been run through our blob detector and each blob is colored a random color.
Then we had to take each of those blobs and convert them to polygons; this allowed the motor to move smoothly along the perimeter of the polygon. Then those regions could be filled with horizontal or vertical lines. After outlining all of the polygons with our metallic ink we had to fill them with ink. Covering all of those paths took a long time. However, with the inkjet print head we could actually print multiple points simultaneously which helped decrease our printing time.
We recently decided to switch to an inkjet printing technology because it simplifies just about everything and gives us a huge performance boost. Using an inkjet printhead we can print a small circuit in under a minute. Using the syringe system, that circuit would have taken around 15 minutes to print. It's great to be able to print a circuit and not have to wait to see what it looks like.
Since inkjet printing is simpler we also could use a much simpler processing algorithm. All we needed to go is read the image in a specific order and break it into patterns that the inkjet head could create. It's almost as simple as iterating over a 2-dimensional array.
Our inkjet implementation is super fast and efficient and helps you get your prototypes printed faster.