Team:BostonU HW/Parts


Parts to Submit

Neptune was designed to help lower the barrier of entry to microfluidics to any biologist by providing accessible, parametric, and free tools which can be used to make many iterations of devices quickly and cost-efficiently. We accomplished this by the sum of all of our deliverables that we are presenting and contributing to the iGEM community.



Neptune is an Open Source tool. All software components are readily available for download and installation by anyone on either Github or NONA.

Through Neptune’s Software User Interface, biologists can build their chip from the ground up. By creating a project in Neptune, a user is provided with all of the necessary tools to successfully build their device. At any point while using Neptune, the user can refer to their dashboard for helpful hints and progress tracking.

First, the user will be able to specify their design at a high level on the Specify page. Through the simple IDE tool, they can specify their design in terms of the inputs, outputs and any operations and features between those two in the Liquid Flow Relations (LFR) file. All of these operations and features are defined in the User Constraint (UCF) File, which is provided to the user by default. However if he or she wishes to add to or change the UCF file they may do so on this page. Once the user is finished describing their chip in the LFR file and have made any edits necessary to the UCF file, they can compile their code and move on to the Design stage of Neptune.

In the Design stage, the user is provided a more detailed description of their microfluidic in the form of a MINT (Microfluidic Netlist) file, which is automatically outputted from the Specify stage. If the user wishes to work with a different MINT description, they can simply import that file here. Also within the Design page of Neptune is the INI file. The INI file contains detailed parameters for the features of the microfluidic chip. This file takes into consideration factors such as design rules, performance, and hardware constraints. It provides the capability for rapid prototyping designs with ease, since through the INI file, a user may edit all features on their chip of the same type at once. For example. If Dr. Ali (from the example above) realizes he made the channels of his chip too small, he can widen all of them all at once by simply editing this parameter in the Design stage instead of manually changing each individual channel with one at a time by hand in a CAD tool. The user can compile his MINT and INI files in the Design stage and move on to the Build and Assemble stages.

In the Build stage of Neptune, the user can select the hardware he or she would like to use for their system. The Build page guides the user through this process based on their design step in order to provide them with the most optimized hardware solution for their needs. When the user is finished, Neptune’s Build page provides them with an ordering list of all of the necessary components they will need to assemble and use their device. Once they have ordered and received these parts, they can proceed to the Assemble stage.

Neptune will guide the user through the process of milling out their chip (using the SVG file outputted from the Design stage), 3-Printing supporting hardware infrastructure (the files for which are dynamically generated and provided to fit the user’s needs based on their current design in this stage), and assembling all of their ordered components to complete their microfluidic system.

After the user has Assembled his or her microfluidic, he or she may control their device from within Neptune in the Control stage. On the control page, the user can connect Neptune to his arduino by opening a serial communication connection. He or she can then open or close valves or set a volume to be dispensed evenly over a given time for dispensers all with the click of a button.


Neptune Hardware provides elegant, parametric, expandable solutions to controlling microfluidic devices. These hardware components are designed to integrate seamlessly with Neptune’s Software.

Because Neptune is inherently modular to change with synthetic biologists needs, Neptune’s electronic control circuitry must be equally as modular to ensure the user is not overpaying for extraneous hardware nor is unable to safely control their setup. The electronic system is comprised of power inputs, stackable Arduino motor controller shields, an Arduino Mega, and varies headers and capacitors to make the system respond appropriately. The power is delivered through 5v 10W laptop power supplies which are readily available, safe, and deliver enough power to control up to 16 servos at once. The stackable controllers can each control 16 servos per board, and therefore users do not have to order a more expensive system that can control 200 servos if they only need 10 to get started.

A piston rod setup for syringes and servos used to control valves and dispensers on the chip was selected to prioritize low cost, ease of use, and modularity. In order to accurately control Neptune’s hardware, the mechanical motion of the servo and syringe paring must be completely defined. Therefore, the equation for off-center piston-rod motion was derived. This involved geometric modeling and trigonometry to translate the rotational motion of a servo arm to linear syringe pump motion. After the equation for off-center and on-axis piston rod motion was verified and tested, the response was modeled with a range of values for each parameter. The ideal parameters for a smooth and most linear response were selected, as well as limits imposed to ensure Neptune always delivers smooth syringe motion.

An inherent characteristic of the piston rod mechanical system is a non-linear response from the syringe pump being controlled. Based on where the servo arm is in its circular path of motion, the syringe pump will move different amounts with the same change in theta of the servo arm. Furthermore, the equation derived to map this motion is not invertible, preventing a simple equation to obtain change in linear motion with a change in theta of the servo arm. This problem was overcome by developing an algorithm to ensure a constant flow rate is always achieved with Neptune given the specific values of the active servo and syringe, involving two lookup tables and linear extrapolation.

Neptune’s baseboard must retain system expandability to arbitrary dimensions and maintain ease of use by providing places to auto-align components. This is done by creating modular squares that can be milled out one at a time and connected together. The 1/8” diameter holes are arranged in a grid, spaced 0.3” from one another and 0.15” from the edge of the board, enabling two boards to be connected forming a space of 0.3” between all holes. This is compatible with an emerging standard in microfluidic hardware, the MEC board, developed by the GroverLab at University of California, Riverside. Neptune’s board can use a multitude of materials and even a combination of materials, currently tested with HDPE plastic, ABS plastic, and wood.

To ensure Neptune meets the requirements of any microfluidic experiment with different requirements for flow-rate and max volume to be dispensed, Neptune has completely parametric 3D parts. These parts hold and align the servo and syringe combination and enable the fluid motion of both. From 100mL to 10uL, Neptune’s 3D printed hardware will adjust in shape to accommodate different size syringes and servos to meet synthetic biologist’s experimental needs. While Neptune has tested servos and syringes on file to choose from by default, should a biologist need more volume to dispense or more precision in flow-rates they can input their own servo or syringe to obtain the exact response they desire. The final result is completely parametric 3D parts that adapt to a specific servo or syringes’ dimensions, enabling a massive amount of freedom for synthetic biologists in using Neptune.

To bridge the gap between clicking a computer screen and moving fluid through a chip, users must select servos and syringes to move this fluid in the first place. In order to perfectly match the requirements of synthetic biologists to an appropriate servo/syringe combination, Neptune has an algorithm to convert the desired max volume and minimum tolerance of each dispenser to published values for servos and syringes. On the Build page this is seen clearly, when entering in fundamental requirements results in all servo/syringe combinations that can fulfill those specifications—even including price ranges.

Reliability and repeatability of experiments are essential for Neptune to deliver results. The firmware developed for the Arduino Mega ensures these standards are met and maintained. Currently implemented, this firmware has the capability to work with both digital and analog servos, up to 13 servo shields stacked on top of the Arduino Mega (enabling the control of over 200 servos at once), control valves with instant motion, and control dispensers with variable flow-rates. In addition to working seamlessly with Neptune’s control page, there is another option to use the Arduino IDE should the need arise, retaining the ability to control both valves and dispensers.