poseidon project: open source bioinstrumentation

The Poseidon syringe pump and microscope system is an open source alternative to commercial systems. that costs less than $400 and can be assembled in an hour. It uses 3D printed parts and common components that can be easily purchased either from Amazon or other retailers. The microscope and pumps can be used together in microfluidics experiments, or independently for other applications. The pumps and microscope can be run from a Windows, Mac, Linux, or Raspberry Pi computer with an easy to use GUI.

What is included?

  • Computer Aided Design (CAD) files of the 3D printed components.
  • Controller software (Python) and a graphical user interface (GUI) to control the pumps.
  • Arduino firmware to send commands to the motors and receive commands from the GUI.
  • Bill of materials for sourcing and purchasing materials.
  • Detailed assembly instructions of hardware compnents.
  • Single click executable files for Mac, Windows, Linux, and Raspberry Pi systems.

All files are available at the poseidon GitHub repository: https://github.com/pachterlab/poseidon



The poseidon system was designed to be customizable. It uses the Raspberry Pi and Arduino electronics boards, which are supported by a strong ecosystem of open source hardware and software, facilitating the implementation of new functionalities.

The pump driver uses an Arduino with a CNC shield to run up to three pumps. Each pump has a stepper motor that drives lead screw which in turn moves a sled that is mounted on linear bearings. The displacement of the sled moves the syringe forward or backward allowing the user to dispel or intake liquid.

The microscope controller station uses Raspberry Pi with a touchscreen to connect to the Arduino and microscope via USB. Because the microscope and Arduino use USB connections, the they can alternatively be connected to any computer instead of a Raspberry Pi.


Hardware and software components developed for the poseidon system

  1. Computer Aided Design (CAD) files for the pumps and microscope controller station
  2. Pump controller software and Graphical User Interface (GUI) to control the Arduino
  3. Arduino firmware used to drive the motors

The 3D printed components can be fabricated on any desktop fused filament fabrication (FFF) 3D printer. They were designed using Autodesk Fusion 360, a proprietary CAD software that offers free academic licenses. To modify the 3D models the user can either use Fusion 360 or any other CAD software.

The GUI was created using Qt designer, a drag and drop application for organizing buttons that allows the used to easily make modifications. This GUI is used to interface with a Python script that controls both the microscope and Arduino via USB.

The pumps are driven by an Arduino board that interprets commands sent via USB and sends the proper signal to control the stepper motor movement. The user can take advantage of this by developing custom movement patterns using the Arduino functions.


The poseidon system was developed at the Pachter Lab at Caltech by:

Prior work and references

As with everything in life, the Poseidon project was not developed in a vacuum.

The pumps design was based on the open source syringe pumps published by the Pearce Research Group:

Open-Source Syringe Pump Library
Bas Wijnen, Emily J. Hunt, Gerald C. Anzalone, Joshua M. Pearce
PLOS One, 2014. https://doi.org/10.1371/journal.pone.0107216

With subsequent refinements published on http://www.appropedia.org/Open-source_syringe_pump

The microscope was based on a design published by the Satija Lab:

Single-Cell Single-cell RNA-seq of rheumatoid arthritis synovial tissue using low-cost microfluidic instrumentation
William Stephenson, Laura T. Donlin, Andrew Butler, Cristina Rozo, Ali Rashidfarrokhi, Susan M. Goodman, Lionel B. Ivashkiv, Vivian P. Bykerk, Dana E. Orange, Robert B. Darnell, Harold P. Swerdlow, Rahul Satija
Nature Communicationsvolume 9, Article number: 791 (2018)

All necessary files for inDrops assembly are avaialble on Metafluidics


poseidon is distributed under the BSD 2-Clause License