Puddle: A Dynamic, Error-Correcting, Full-Stack Microfluidics Platform
- Max Willsey ,
- Ashley Stephenson ,
- Chris Takahashi ,
- Pranav Vaid ,
- Bichlien Nguyen ,
- Michal Piszczek ,
- Christine Betts ,
- Sharon Newman ,
- Sarang Joshi ,
- Karin Strauss ,
- Luis Ceze
ASPLOS '19 |
Microfluidic devices promise to automate wet lab procedures by manipulating small chemical or biological samples. This technology comes in many varieties, all of which aim to save time, labor, and supplies by performing lab protocol steps typically done by a technician. However, existing microfluidic platforms remain some combination of inflexible, error-prone, prohibitively expensive, and difficult to program. We address these concerns with a full-stack digital microfluidic automation platform. Our main contribution is a runtime system that provides a high-level API for microfluidic manipulations. It manages fluidic resources dynamically, allowing programmers to freely mix regular computation with microfluidics, which results in more expressive programs than previous work. It also provides real-time error correction through a computer vision system, allowing robust execution on cheaper microfluidic hardware. We implement our stack on top of a low-cost droplet microfluidic device that we have developed. We evaluate our system with the fully-automated execution of polymerase chain reaction (PCR) and a DNA sequencing preparation protocol. These protocols demonstrate high-level programs that combine computational and fluidic operations such as input/output of reagents, heating of samples, and data analysis. We also evaluate the impact of automatic error correction on our system’s reliability.