Literature DB >> 35959194

An open source 16-channel fluidics system for automating sequential fluorescent in situ hybridization (FISH)-based imaging.

Zhaojie Deng1, Brian J Beliveau1,2.   

Abstract

Fluorescent in situ hybridization (FISH) can provide spatial information about DNA/RNA targets in fixed cells and tissues. However, the workflows of multiplexed FISH-based imaging that use sequential rounds of hybridization quickly become laborious as the number of rounds increases because of liquid handling demands. Here, we present an open-source and low-cost fluidics system that is purpose built for automating the workflows of sequential FISH-based imaging. Our system features a fluidics module with 16 addressable channels in which flow is positive pressure-driven and switched on/off by solenoid valves in order to transfer FISH reagents to the sample. Our system also includes a controller with a main printed circuit board that can control up to 120 solenoid valves and allows users to control the fluidics module via serial communication. We demonstrate the automatic and robust fluid exchange with this system by targeting the alpha satellite repeat in HeLa cell with 14 rounds of sequential hybridization and imaging. We anticipate that this simple and flexible system will be of utility to researchers performing multiplexed in situ assays in a range of experimental systems.
© 2022 The Author(s).

Entities:  

Keywords:  ESP32; Laboratory automation; Liquid handling; Pneumatic driven; Sequential FISH-based imaging

Year:  2022        PMID: 35959194      PMCID: PMC9358477          DOI: 10.1016/j.ohx.2022.e00343

Source DB:  PubMed          Journal:  HardwareX        ISSN: 2468-0672


Specifications table

Engineering and materials scienceMedical (e.g., pharmaceutical science) NeuroscienceBiological sciences (e.g., microbiology and biochemistry) Educational tools and open source alternatives to existing infrastructure Imaging tools Biological sample handling and preparation Electrical engineering and computer science

Hardware in context

Fluorescent in situ hybridization (FISH) is a technique that uses fluorescently labeled nucleic acid probes to target genomic and/or transcriptomic sequences of interest in cells and tissues through hybridization. After hybridization, the locations and abundances of the targets can be detected by fluorescence microscopy. Therefore, FISH enables researchers to obtain spatial genomic and transcriptomic information relevant to their research. Recent developments in FISH technology have focused on improving its multiplexing capability in order to efficiently detect more than a dozen genes and/or RNAs in one experiment by either spectral encoding [1], [2] or sequential hybridization [3], [4], [5], [6]. Recent advances in multiplexing strategies involve combining spectral encoding of the DNA/RNA targets with sequential hybridization of FISH readout probes to detect thousands of DNA/RNA species [7], [8], [9], [10]. Sequential FISH procedures usually involve many rounds of hybridization. During each round, readout probes are hybridized and imaged and their signal is removed by either one or two of these methods: photobleaching, competitive displacement via branch migration facilitated by the binding of “toehold” oligonucleotides, or chemical stripping of the readout probes. Protocols for sequential FISH-based imaging are usually complicated and involve multiple liquid handling and/or exchange steps in each hybridization round. Therefore, they are time consuming and labor-intensive for manual implementation, preventing them from being widely adopted. Commercially available liquid handling solutions [11], [12], [13] are either hard to adapt to sequential FISH-based imaging or are expensive when the rounds of imaging need to be scaled up. An open-source integrated automation solution capable of handling more than a dozen rounds of fluid exchange for sequential hybridization would help address this challenge. Integrated microfluidics platforms have been demonstrated to perform all assay steps in an entire FISH protocol [14]. However, these platforms can only perform up to a dozen hybridization rounds and they are difficult to scale up. Other solutions utilize peristaltic pumps combined with rotative valves to automate fluid exchanges up to 24 rounds in imaging chambers [15] or with Lego-hardware to support up to 128 syringe pumps to input reagents into a peristaltic pump driven flow system [16]. While these solutions provide high-throughput automation, peristaltic pumps offer less stability in flow rate control for long-term experiments like performing sequential FISH for more than a dozen rounds [17]. On the other hand, pressure-driven provides high stability and pulseless flow [17]. Here, we present an open-source fluidics system with 16 channels individually driven by positive pressure for the automation of sequential FISH-based imaging protocols. We show robust fluid exchange with the system through 14 rounds of fluorescent oligo hybridization (2 other channels were used for washing buffer and probe displacement buffer) to readout primary probes hybridized at the alpha satellite repeat in HeLa cells. While maintaining a comparable dead volume (100 µL) to commercial ones, this open-source, standalone fluidics system offers a custom designed sample loading module (no extra tools required) for conveniently loading probe solutions to significantly reduce experiment prep time. The version of the system introduced here provides support for 2 mL microcentrifuge tubes and large volume glass bottles that use “GL45” caps, and in practice any other type of fluid reservoir could be used (e.g., 15 or 50 mL conical tubes) provided they have an integrated Luer adapter. Moreover, as each channel is controlled by its own solenoid valve, in theory these reservoirs could be replaced over the course of an imaging experiment. We demonstrate the integrated operation of our system with a Nikon Eclipse Ti-2 microscope controlled by proprietary Nikon NIS-Elements software, but as our system itself relies only on open-source code and serial communication to operate, it can readily be paired with any proprietary or open source instrument control software that supports serial communication. Our system costs ∼3–6-fold less than similar commercial options and requires an estimated ∼1 month of construction and basic testing. It can also be integrated with a microscope enabling users to run/test FISH-based imaging protocols easily in their own laboratories.

Hardware description

Design overview

The fluidics system here was designed with full automation and minimized reagent cost in mind. It also was built with low cost and widely available components. It operates via positive pressure-driven flow to introduce FISH reagents to the sample. The positive pressure can come from any common laboratory compressed air source. The whole system includes a fluidics module and a PCB controller. An overview of the fluidics module is shown in Fig. 1. A compressed gas line runs first through a filter module (component R2) and then a pressure regulator (component R3). The pressurized gas is then distributed into 16 individual lines by a splitting manifold (component R6) and 2 solenoid valve and manifold assemblies (component SV1&SV2). These 16 gas lines (T4) can be individually addressed to pressurize a designated reservoir filled with FISH probes or washing buffer. The 16 fluid lines (T2) coming out of the reservoirs are then combined by a mini manifold (with 16 inlets and 1 inlet) and become a single fluid line connected directly to the inlet of a sample chamber. A sample loading module (not shown in the diagram) composed of an array of 16 custom designed and 3D-printed Eppendorf tube adapters (component E1 here) was designed and assembled for easy sample loading using conventional 2 mL Eppendorf tube (component b). A structural frame (not shown in Fig. 1 but shown in the Graphical Abstract above) was built to organize all the components into a standalone machine.
Fig. 1

Overall schematic of the fluidics module (pneumatic and fluidcs components) designated by letters and numbers (as referenced to the Bill of materials).

Overall schematic of the fluidics module (pneumatic and fluidcs components) designated by letters and numbers (as referenced to the Bill of materials).

Controller PCB

A controller was designed for controlling the on/off state of the solenoid valves, the pressure regulator, and a flow rate sensor, as well as handling serial communication with the microscope PC running the imaging routines. The main PCB of the controller is based on the design in the open-source microfluidics control system by Craig Watson [18]. It uses Espressif ESP32 devkit C as microcontroller and PCA9698 as I/O expander. Here, the PCB can address up to 120 solenoid valves after adding 2 more PCA9698 chips. Additionally, an interface is also added for a flow rate sensor (MFS, ElveFlow) powered by 9 V and it uses analog pins to read in the voltage output by the sensor. The 9 V is provided by a 12 V to 9 V regulator. The interface for the pressure regulator is designed to control a commercial digital pressure regulator from (MPV, Proportion-Air). This controller handles all the messages from the PC through USB serial communication to operate the fluidics system.

User interface

A user interface for flow rate calibration was developed using PyQt (Fig. 2). It has 4 tabs. The first 3 tabs are designed to run the main procedures for flow rate calibration including channel priming, flow rate calibration, and flow rate verification. The 4th tab is for selecting an individual channel to inject a solution for a user-defined amount of time for eliminating bubbles before setting up an imaging experiment. Calibration data and the resulting injection time (from a user defined volume to inject) for each channel will be saved as.npy files by the app. In this demonstration with a use case in our lab, the resulting injection times for each channel in the.npy file named WaitTime.npy can be transferred into a NIS-Elements (Nikon software for imaging) Macro file and used in NIS-Elements’s ND acquisition with time-lapse imaging. Nikon NIS-Elements macro codes are provided in the project’s repository for running the 14-round sequential FISH imaging of the alpha satellite repeat in HeLa cell as a demonstration experiment with the fluidics system.
Fig. 2

The GUI for the automatic calibration of the fluidics system. Shown here is the calibration tab with calibration parameters configured for target flow rate 600 µL/min.

The GUI for the automatic calibration of the fluidics system. Shown here is the calibration tab with calibration parameters configured for target flow rate 600 µL/min.

Design files summary

bill_of_materials.xlsx: There are 8 sheets in this file. Except the sheets named ‘Tubings’ and ‘Remaining components’, each sheet lists components for a module and/or assembly described in the step-by-step building guide in the supplementary materials. fluidics_system_controller_PCB_design_files.zip: KiCAD design files for the controller PCB. Eppendorf_tube_adaptor_3D_print_files.zip: STL files for 3D printing the Eppendorf tube adaptor and the slot panel that is designed for arranging and securing the adapters. laser_cut_acrylic_panel_organizer.ai: Illustrator file for laser cutting the panels for assembling the structural frame and the Eppendorf tube adapter array. controller_case_laser_cut.3dm: Rhinoceros design file for laser cutting the controller case. case_for_pressure_regulator_laser_cut.pdf: pdf file for laser cutting the pressure regulator case. large_reservoir_holder.stl: STL file for 3D printing the large reservoir holders for securing large glass bottles for the washing buffer and displacement buffer used in the 14-round sequential FISH imaging demonstration experiment. user_interface_app_for_flow_rate_calibration.zip: Python scripts for the user interface app for automatic flow rate calibration. NIS-Element_Macro_codes.zip: Folder with NIS-Elements Macro code for running the fluidics system and routines for the fluid exchange in the 14-round sequential FISH imaging demonstration experiment. Fluidics System Controller with ESP32: Folder with source code for the firmware of the controller PCB.

Bill of materials summary

A separate bill of materials file named “bill_of_materials.xlsx” is included in the supplementary materials with multiple sheets. Each sheet lists parts for an individual module and/or assembly that makes up the fluidic system. The table below lists all the parts from that file. The cost for the component is listed in currency USD. The following designator abbreviations are used: “T” = “Tubings”; “P” = “Printed Circuit Board” (PCB); “S” = “Structural Frame”; “O” = “One-way check valve assembly”; “E” = “Eppendorf tube adapter array”; “SV” = “Solenoid valve array”; “C” = “14-channel imaging”; “R” = “Remaining components”.

Build instructions

Note: For convenient reference, all the parts (except parts for solenoid valve array assembly) used in this guide are named with a capital letter and a number. The capital letter for a specific part is the first letter of the name of the sheet in the bill_of_materials.xlsx file where the part is listed. For parts for solenoid valve array assembly, their names start with capital letters SV. Most of the parts used to build an assembly/module are listed in a sheet with a name indicating that assembly/module. Tubings are used in multiple assembly/module building sections. Part names for tubings are listed in the sheet named ‘Tubings’ in the bill_of_materials.xlsx file.

PCB assembly

Reference the sheet named ‘PCB’ in the bill_of_materials.xlsx file for components for this section. Also reference to the PCB schematic file and the PCB layout file in a.zip file (provided in the project’s Mendeley data repository: https://doi.org/10.17632/tkm4w7wp3v.1) named ‘fluidics_system_controller_PCB_design_files.zip’ for component placement positions on the PCB. Solder PCB components as shown in Fig. 3, (A) shows the top side of the PCB and (B) shows the bottom side of the PCB before soldering. Most components are soldered on the top side of the PCB as shown in Fig. 3 (C). An enclosure for the PCB was custom-built by laser cut acrylic panels as shown in Fig. 3 (D). Design files for the enclosure are provided in https://doi.org/10.17632/tkm4w7wp3v.1.
Fig. 3

PCB of the controller before (A and B) and after (C) soldering and secured inside a custom-built enclosure (D).

PCB of the controller before (A and B) and after (C) soldering and secured inside a custom-built enclosure (D). Note: the footprint for the ESP32 downloaded from SnapEDA (at the time the PCB was designed) was incorrect, fly-wires are used to connect pins on one side of the ESP32 to one of the female header connectors Fig. 3 (C). Make sure the pins from ESP32 are inserted all the way into the headers (this should be the first thing to look at when debugging is needed).

Structural frame assembly

Reference the sheet named ‘Structural frame’ in the bill_of_materials.xlsx file for part names for this section. The structural frame refers to the aluminum frame combined with the laser cut acrylic panels that holds all the assemblies/modules and components for the fluidics system for the purpose of tubing organization. The structural frame consists of 4 vertical positioned 30-inches T-slots (Part S1) that define the footprint of the fluidics system. 12 horizontally positioned 12-inches T-slots (Part S2) define the 6 levels that hold the major components and assemblies/modules. Except the 3rd level, from bottom to top, the major assemblies/modules and components are as follows: mini manifold, one-way-check valve assembly, Eppendorf tube adapter array, solenoid valve array assembly, controller PCB as shown in the graphic abstract in the main text. Between the two 12-inches T-slots at each level (this only applied to the four bottom levels) is one laser cut acrylic panel for tubing organization. The vertical positionings of the Eppendorf tube adapter array, the one-way-check valve assembly, and the mini manifold are critical for proper flow. The Eppendorf tube adapter array is required to be above the outlet of the mini manifold. Begin by assembling the 1st level (the most bottom level) of the aluminum frame. Gather two sets of the parts shown in Fig. 4 (A), Parts S3, S4, S5, S6 (as in the bill_of_materials.xlsx file), another two of Part S5, two of Part S1, and one of Part S2. First, put the two extra Part S5s into the slot of Part S2 as indicated in Fig. (B) (The two Part S5s here can be replaced post assembly by Part S11 (Post-Assembly ), same for other 12-inches T-Slots where two of Part S5 are required to put into the slot). Then, connect the two 30-inches T-slots (Part S1) with the 12-inches T-slot (Part S2) by the two sets of parts shown in Fig. 4 (A). For the 12-inches T-slot, make sure the side with the two Part S5s in it face up. The result for this step will look like Fig. 4 (C). Here, Part S2 is one inch above the bottom of Part S1.
Fig. 4

Structural frame building process 1.

Structural frame building process 1. Repeat 1 to assemble another side of the frame before moving to the next step. In this step we will get two of the assembled part in Fig. 5 (C).
Fig. 5

Structural frame building process 2.

Connect the two assembled parts from 2 with one acrylic panel, Part S12, as shown in Fig. 5 (A). Continue to install the remaining 12-inches T-slots (Part S2) onto the 30-inches T-slots (Part S1). Position each level at a height so that there will be enough space for sample loading and for reaching to all the components when maintenance is required. Remember to put two of Part S5 into the slot (the one that will be facing up) of each 12-inches T-slot for level 2, 3, 4 (counting from the bottom). Installed the acrylic panel, Part S13, to the two 12-inches T-slots on the 2nd level from the bottom as shown in Fig. 5 (B). Installed the acrylic panel, Part S14, to the two 12-inches T-slots on the 4th level from the bottom as shown in Fig. 5 (C). This step is optional and should be done after Section 5.3 is completed. Installed the acrylic panel, Part S15, to the two 12-inches T-slots on the 3rd level from the bottom. The acrylic panel used at this level is for organizing the tubings immediately connected to the one-way-check valves. Part S7 acts as a base to stabilize the whole fluidics system. Attach one Part S7 to the bottom end of the structural frame at one side with one set of Part S4, S5, S6, S8,S9, S10. Attach another Part S7 to the other side. This step should be implemented after finishing this building guide if the working area has limited space for accessing all sides of the frame. Structural frame building process 2.

One-way-check valve assembly

Reference the sheet named ‘One-way-check valve assembly’ in the bill_of_materials.xlsx file for part names for this section. The one-way-check valves used here are for preventing backflow. They are connected to the inlets of the mini manifold (Part O1). Cut tubing (Part T2) to length of ∼3 in. and insert them into the 16 inlets of the mini manifold (Part O1) as shown in Fig. 6 (A).
Fig. 6

Installation of the mini manifold on to the structural frame.

Installation of the mini manifold on to the structural frame. Install the mini manifold to the structural frame as shown in Fig. 6 (B) with a screw (Part O2) and a nut (Part O3). Insert the other end of the tubing (that connected to the mini manifold) through the holes in the acrylic panel (Part S13) Connect one-way-check valves to the tubing after 3. Two different kinds of valve are used (Part O4 and Part O5). Part O4 plus its fittings has a smaller dead volume and is used for channel # 1-12, 15, and 16 for fluorescent probe reagent injection. Part O5 plus its fittings (two of Part E6, E7, O6, and one of Part C6) has a larger dead volume but the fittings provide a more secured connection when applying high flow rate and using buffers with high viscosity like the displacement buffer. Therefore, Part O5 is used for channel # 13 and 14. To connect check valve Part O4, cut tubing Part T6 to length of ∼3/4 in., then insert the tubing (that connected to the mini manifold) into Part T6 as shown in Fig. 7 (A). Then insert both tubings into one end of the check valve as shown in Fig. 7 (B). Here tubing Part T6 acts as a fitting to secure the connection between tubing Part T2 and the check valve. There is a direction for check valve Part O4, the yellow end is the inlet, the clear end is the outlet.
Fig. 7

Connect check valve (Part O4) to the 0.02 “ ID tubing (Part T2) with another tubing (Part T6) cut to length of about 3/4 inches.

Connect check valve (Part O4) to the 0.02 “ ID tubing (Part T2) with another tubing (Part T6) cut to length of about 3/4 inches. Fittings and the check valve Part O5 are shown in Fig. 8 (A). Assemble the parts in Fig. 8 (A) together as shown in Fig. 8 (B). Make two of this assembly. Then connect them to two outlets of the mini manifold.
Fig. 8

Connection of fittings to check valve Part O5.

Connection of fittings to check valve Part O5. Fig. 9 shows the result after all the one-way-check valves are connected to the mini manifold.
Fig. 9

One-way-check valve assembly.

One-way-check valve assembly.

Eppendorf tube adapter assembly

Reference the sheet named ‘Eppendorf tube adapter array’ in the bill_of_materials.xlsx file for part names for this section. The Eppendorf tube adapter is a custom designed and made 3D print part. It enables using 2 mL Eppendorf tubes as reservoirs for positive-pressure-driven liquid sampling application. Install heat-set inserts. Gather one of Part E1 and two of Part E2 as shown in Fig. 10 (A). Follow online tutorials (e.g.) to install the two heat-set inserts Part E2 into the two holes in Part E1. The result for this step is shown in Fig. 10 (B).
Fig. 10

Installation of heat-set inserts.

Installation of heat-set inserts. Put on an O-Ring. Gather one ofand the resulting part inupside down as shown inFig. 11(A). Slide the O-Ring,, onto the extruded port on the adapter body,Fig. 11(B). Make sure the O-Ring is seated in the designed circular indentation closed to the edge of the port.
Fig. 11

Placement of an O-ring.

Placement of an O-ring. Connect the pressure tubing and sampling tubing to the Eppendorf tube adapter. Cut a piece of pressure tubing, Part T4, to length of 1 ft. Cut a piece of sampling tubing, Part T2, to length of 3 ft. Gather the tubing fittings, Part E4, E5, E6 and E7, one of each. Insert the cut pressure tubing into one of Part E4 and E5 as shown in the middle of Fig. 12 (A). Insert the cut sampling tubing into one of Part E6 and E7 as shown on the right side of Fig. 12 (A). Use Teflon tape (not shown here) to tightly wrap the thread of the fitting Part E4 and E6, then screw the fittings into the heat-on inserts in the resulting part from 2. The sampling tubing goes into the hole aligned with the extruded port of the adapter body. And let out around 2 in. length of the sampling tubing from the extruded port. This portion of the tubing will go into an Eppendorf tube to sample reagent. Make sure the tip of this tubing portion just touches the bottom of the Eppendorf tube when the Eppendorf tube is properly hooked up to the port. The result will look like Fig. 12 (B).
Fig. 12

Connection of pressure tubing and sampling tubing to the Eppendorf tube adapter.

Connection of pressure tubing and sampling tubing to the Eppendorf tube adapter. Test. Before continuing this step, the firmware should be uploaded to ESP32 of the PCB and make sure commands can be successfully sent to the PCB through USB to control the valves, pressure regulator, and flow rate sensor. Connect a standard 2 mL Eppendorf tube filled with 1.5 mL DI water or color dye to the adapter as shown in Fig. 13. Connect the pressure tubing to a pressure source of 15 psi or use the controller and the pressure regulator to regular the pressure to 15 psi. Connect the sampling tubing to the flow rate sensor (Part R1) listed in the sheet named ‘Remaining components’ in the bill_of_materials.xlsx file. Downstream also connects a check valve (Part C7) to introduce a flow resistance that is comparable to that used in actual experiment (See Section 5.1 Step 3 in the Calibration and operation guide). Use serial commands in a terminal or use the user interface app to read the flow rate through the controller PCB. If the returned flow rate goes over 200 (uint8) when 15 psi pressure is applied, then the Eppendorf tube adapter assembly passes the test. If the flow rate is too low, check the seal of the fittings. If you hear loud hissing sounds from the adapter body when applying pressure and the flow rate cannot go over 200 (uint8), this means there is a leak in the 3D printed adapter. Printing extra adapters is recommended. Only assemblies that pass the test can be used for the rest of the build.
Fig. 13

Quality testing of the Eppendorf tube adapter assembly.

Quality testing of the Eppendorf tube adapter assembly. Repeat 1 to 3 to make 20 of the Eppendorf tube adapter assembly. And select 16 of the assembly that passes the test in 4 for the rest of the build.

Sample loading module assembly (Eppendorf tube adapter array)

Reference the sheet named ‘Eppendorf tube adapter array’ in the bill_of_materials.xlsx file for part names for this section. The sample loading module assembly combines the 16 Eppendorf tube adapter assemblies into a single module for organized and easy sample loading purposes. Gather Part E8 and E9 shown in Fig. 14 (A). Align them as shown in Fig. 14 (B). Flip over both when maintaining the alignment and put them on two supports as shown in Fig. 14 (C). Put one Eppendorf tube adapter assembly built from Error! Reference source not found. in this guide into one slot like the one shown in Fig. 14 (C). Finish this step by putting 15 Eppendorf tube adapter assemblies into the remaining 15 slots.
Fig. 14

Alignment of the bottom laser cut acrylic panel and the 3D printed slot.

Alignment of the bottom laser cut acrylic panel and the 3D printed slot. Gather Part E10 shown in Fig. 15 (A) and put it on top of the resulting part from 1 as shown in Fig. 15 (B) with the fittings and tubing coming out of the rectangular holes. Align the screw holes of the top acrylic panel (Part E10), the bottom acrylic panel (Part E9) with that of the 3D printed slot panel (Part E8). Secure the assembly with 4 sets of Part E11 and E12 as shown in Fig. 15 (B) and (C).
Fig. 15

Installation of the top laser cut acrylic panel.

Cut two of Part E13 (a 300 mm long steel threaded rod) into half. Gather 16 sets of Part E14 and E15. Insert one of the cut Part E13 into one of the axillary holes of the acrylic panels and secured with 4 sets of Part E14 and E15 as shown in Fig. 16 (A). Then repeat this for the remaining 3 axillary holes of the acrylic panels. Put 2 Post-Assembly T-Slot Nuts (Part S11) into the bottom slot of each of the two 12-inches T-slots on the 4th level counting from the bottom of the structural frame. Install the sample loading module onto the structural frame by screwing the 4 long steel threaded rods into those T-Slot Nuts (Part S11) as shown in Fig. 16 (B). Insert the tubing into the corresponding holes in the acrylic panel for tubing organization, Fig. 16 (B).
Fig. 16

Installation the sample loading module onto the structural frame.

Installation the sample loading module onto the structural frame. Installation of the top laser cut acrylic panel.

Solenoid valve and manifold assembly

Reference the sheet named ‘Solenoid valve array’ in the bill_of_materials.xlsx file for part names for this section. Screw fittings, Part SV3, to all 10 output ports of the 10-Station solenoid manifold, Part SV2. Install 10 solenoid valves, Part SV1, with the screws coming with them onto the manifold as shown in Fig. 17 (A). 4 solenoid valves have been installed in Fig. 17 (A). Though only 8 solenoid valves on one 10-Station solenoid manifold will be in use it is necessary to install all 10 solenoids valves to block leakage through remaining installation holes. Alternatively, 8-Station solenoid manifolds can be used but they were not available at the time when this fluidics system was being built.
Fig. 17

Assembly of the solenoid valve array.

Screw fittings, Part SV4, to the pressure port of the 10-Station solenoid manifold, Part SV2. Repeat 1 and 2 to make another solenoid valve array. Put 2 Part SV6 into the top slot of each of the two 12-inches T-slots on the 5th level (counting from the bottom of the structural frame) Use 2 Part SV5 to secure each solenoid valve array assembly onto one of the two 12-inches T-slots on the 5th level. Specifically, insert Part SV5s into the mounting holes on the manifold (Part SV2) and screw them into Post-Assemble T-Slot Nuts (Part SV6). The result will look like Fig. 17 (B). Only 8 solenoid valves were installed in Fig. 17 (B) for demonstration but 10 were installed for the finalized build for the reason mentioned in 1. Cut two pieces of pressure tubing, Part T4, each to length of 3 in.. For each solenoid valve array assembly, connect the 2 output ports of the solenoid manifold that are not in use with one of the cut tubing. This is to block leakage through the output ports where the solenoid valves are not in use. Assemble the wires from one solenoid valve array assembly into a connector (Part P5). Connect the pressure tubing from the Eppendorf tube adapters to the outlet ports of the solenoid valve manifold and the sampling tubing to the one-way-check valves as shown in Fig. 18 (here shows only one-way-check valve Part O5 for demonstration purpose, but in the final built Part O5 is used only for channel # 13 and 14, Part O4 is used for the remaining channels as shown in Fig. 9).
Fig. 18

Connection of tubing to solenoid valves and one-way-check valve assembly.

Connection of tubing to solenoid valves and one-way-check valve assembly. Assembly of the solenoid valve array.

Installation of the remaining components

Reference the sheet named ‘Solenoid valve array’ in the bill_of_materials.xlsx file for part names for this section. Reference the sheet named ‘Remaining components’ in the bill_of_materials.xlsx file for part names for this section. The mounting screws and T-Slot nuts for installing the remaining components will not be listed here because they are sourced from those listed in previous sections and it should be straightforward to choose the suitable screw and T-slot nut sets to mount/install the remaining components. Install the air filter, Part R2, on to the structural frame as shown in Fig. 19 (A). The position of the air filter is required to be close to the bottom of the whole fluidics system.
Fig. 19

Installation of the air filter and the pressure regulator.

Installation of the air filter and the pressure regulator. Install the pressure regulator, Part R3, on to the structural frame as shown in Fig. 19 (B). A custom designed laser-cut case is assembled to house the regulator. The designed file for the case is ‘case_for_pressure_regulator_laser_cut.pdf’ in the project repository. Connect the air filter outlet to the inlet of the pressure regulator with tubing, Part T1 as shown in Fig. 19 (C). The fitting for the inlet and outlet of the air filter is Part R4. The fitting for the inlet and outlet of the pressure regulator is Part R5. The inlet of the air filter should be connected to a compressed gas source before using the fluidics system for experiment. Connect the outlet of the pressure regulator to the inlet of the splitting manifold (Part R6) with tubing, Part T1, as shown in Fig. 20 (A). The fitting for the inlet of the splitting manifold is Part R7.
Fig. 20

Connection of the pressure regulator to the splitting manifold.

Connection of the pressure regulator to the splitting manifold. Connect the two outlets of the splitting manifold to the pressure port (Part SV4) of the two solenoid valve manifolds with tubing, Part T1, as shown in Fig. 20 (A). The fitting for the outlet of the splitting manifold is Part R4. Screw the plug, Part R8, to the other port of the splitting manifold (Fig. 20 (B)). Mount the PCB controller on the top level of the structural frame using the mounting hole on the case Fig. 21 (A).
Fig. 21

Mounting of the PCB controller on to the structural frame.

Mounting of the PCB controller on to the structural frame. Plug the flow rate sensor (Part R1) and the pressure regulator (Part R3) into their designated 4-pin headers (J6 and J4 in the PCB schematic respectively) on the PCB Fig. (B). The wire for the flow rate sensor must be modified from a M8 connector to be able to plug into the 4-pin header. A bubble trap (Part R9) is recommended to be connected between the mini manifold (Part O1) and the flow rate sensor in the flow path. Plug the wire from the two solenoid valve array assemblies into the PCB through their connectors as indicated by the red dash line rectangle in Fig. 22 (A). The PCB has 15 male wire-to-board connectors (Part P6) and can control up to 120 solenoid valves. Plug the female wire-to-board connectors (Part P5) wired to the solenoid valve array assemblies into any of these male wire-to-board connectors will work as long as the valve number in the NIS-Elements Macro code and the user interface app (but Not the firmware!!) changed correspondingly. For experiments described in the main text and the operation guide, they are plugged into the 2 connectors indicated by the red dash line rectangles in Fig. 22 (B).
Fig. 22

Connection of the solenoid valves to the PCB.

Connection of the solenoid valves to the PCB. Note: The (defined in the firmware code) for valves used here is 16, 17, 18, 19, 20, 21, 22, 23, 104, 105, 106, 107, 108, 109, 110,111.

Operation instructions

Note: In this guide, we run through a step-by-step calibration and operation procedure for an example 14-round sequential FISH-based imaging experiment described in the main text. Reference the sheets named ‘14-channel imaging’ (part names start with capital C), ‘Eppendorf tube adapter array’ (part names start with capital E), ‘Tubings’ (part names start with capital T), and ‘Remaining components’ (part names start with capital R) in the bill_of_materials.xlsx file for part names for this guide. The code for the user interface app for automatic flow rate calibration and the NIS-Elements Macro code for integrating Nikon microscope for imaging with liquid handling through the fluidics system can be found in the project’s Mendeley data repository (https://doi.org/10.17632/tkm4w7wp3v.1). The routines used in this example for fluorescently labeled oligo exchange is adapted from protocol in [19] and are given in the section named ‘Fluorescent oligo exchange and imaging routines’ in this guide.

System setup

Use new tubing to connect two large reservoirs to channel #13 and #14 with fittings and put them into the 3D-printed holders as shown in Fig. 23. The part numbers for the bottles and caps are Part C1 and Part C2. The fittings are Parts E4, E5, E6 and E7. (3D-print holders for the bottles were installed to the base of the structural frame, the design file named ‘large_reservoir_holder.stl’ for the holder can be found in the project’s repository.
Fig. 23

Large reservoir for PBS and displacement buffer.

Large reservoir for PBS and displacement buffer. Use a Q-tip to apply mineral oil to the O-rings of the Eppendorf tube adapters. This is for lubricating the O-ring which makes attaching the Eppendorf tubes to the adapters very easy when loading reagents in the following section. Connect a bubble trap (Part R9) between the outlet of the mini manifold (Part O1) and the inlet of the flow rate sensor in the flow path. Connect the tubing from the outlet of the flow rate sensor to one end of a channel of an idibi 6-channel slides (Part C3) with an Elbow Luer Connector (Part C4). With another Elbow Luer Connector (Part C4), connect the other end of the channel to a tubing-valve assembly as shown in Fig. 24. The components in the tubing-valve assembly from top to down are: Part T4, Part C5, Part T5, Part C6, Part C7, Part T5. The one-way-check valve (Part C7) is for the purpose of stopping the flow generated due to gravity when all the solenoid valves are closed (when there is no reagent injection happening).
Fig. 24

The waste end connection.

The waste end connection.

Pre-run priming

1. Load 14 2 mL Eppendorf tubes each with 1.5 mL 1X PBS onto the fluidics system. 2. Put 200 mL 1X PBS into each of the two large reservoirs. And close the two reservoirs with the caps connected to channel #13 and #14. 3. Connect the main inlet tubing of the fluidics system to a 30 psi pressure source. 4. Connect the fluidics system controller to a computer through the USB port (make sure the driver for ESP32 is installed). 5. Connect the tubing from the outlet of the air filter (Part R2) to an air source with pressure of 30 psi. 6. Open the user interface app. Choose a folder to save the calibration data by clicking the ‘Save’ button in the ‘Setup’ tab. Then click the ‘Washing and Priming’ button to start the priming process to prime the fluidics channels with the loaded 1X PBS. One run of ‘Washing and Priming’ takes about 15 min. Two runs of ‘Washing and Priming’ are enough to fully prime the channels and eliminate bubbles from the system. 7. Check the recorded flow rate after each run. The recorded flow rate for all 16 channels will be displayed in the table in the ‘Setup’ tab of the app after the ‘Washing and Priming’ process finished. Each row is the flow rate for one channel measured every 3 secs. The pressure for ‘Washing and Priming’ is set at 127 (uint8) which is corresponding to 15 psi and the flow rate should be close to the maximum flow rate, 255 (uint8), read out by the flow rate sensor. Note: While the one-way-check-valve eliminates all detectable backflow when fully functional, this part can weaken and fail. If a reagent reservoir’s volume increases during the priming step, this is likely an indication of a defective one-way-check-valve that needs replacement.

Flow rate calibration and verification

Load 14 2 mL Eppendorf tubes each with 1.5 mL 1X PBS onto the fluidics system. (The same set of Eppendorf tubes used for Section 6.2 can be re-used in this calibration step) Put 80 mL displacement buffer [19] into a new large reservoir and replace the reservoir connected to channel #13 with it. Inspect flow path, especially the section from the outlet of the mini manifold to the outlet of the ibidi channel slide, to make sure there are no air bubbles trapped in the channel. If there are bubbles, inject 1X PBS by clicking the ‘Channel_14′ button in the ‘Run single channel’ tab to try flushing out the bubbles. Bubbles tend to be trapped at the fitting used to connect the tubing to the ibidi channel slide inlet. If bubbles keep sticking at the fitting, try disconnecting the fitting and reconnecting it several times while 1X PBS is being injected until the bubbles are flushed out. Click the ‘Calibration’ tab and select 600 µL/min as the targeted calibration flow rate. Click the ‘Start calibration’ button to start the calibration procedure. The calibration procedure takes about 40 min to run. The calibration parameters used here are pre-tested, and more information about how to use the app to do calibration for reagents other than PBS and displacement buffer used in this example or other flow rate is presented in Section 6.7. Once the calibration procedure finished. Load 14 2 mL Eppendorf tubes each with 1.5 mL 1X PBS onto the fluidics system. (The same set of Eppendorf tubes used for Section 6.2 can be re-used in this calibration step). Click the ‘Calibration verification’ tab and click the ‘Flow rate verification’ button. This step verifies the calibrated flow rate by measuring the flow rate for each channel when applied the calibrated pressure. It takes about 15 min. Click the ‘Convert flow rate and show injection time’. The main table in the app window will show the flow rate converted to unit of µL/min for each channel measured in 6 (top row) and injection time (bottom row). Injection volume 800 µL (for fluorescently labeled oligos and displacement buffer) was used to calculate the injection time for this experiment. For 1X PBS, injection volume of 1.6 mL was used to calculate the injection time.

Imaging routine setup (with NIS-Elements as an example)

This section gives an overview of how to interface with NIS-Elements software for integrated imaging with fluid exchange. Depending on how the microscope is configured, components of the microscope (e.g., camera, filter wheel, automated stage, light source) may be controlled by communications relayed by NIS-Elements or by low-latency hardware triggering with TTL. In either case, the interface between the fluidics system and NIS-Elements (or equivalent if using different instrument control software) is achieved by serial communication. Download a.zip file named ‘NIS-Elements Macro codes.zip’ from the project’s Mendelay repository (https://doi.org/10.17632/tkm4w7wp3v.1) and extract two folders named ‘automatic update Element macros’ and ‘Macros for 16 channel fluidics system V1’. These two folders include custom written NIS-Elements macro code, macro template scripts, a Python script, and a folder with example files generated from flow rate calibration. Two files named ‘WaitTime.npy’ and ‘pr_set_channels_hex.npy’ generated by the user interface app after the calibration and verification from Section 6.3 are used as input to for the python script (named ‘update_Element_macro_script.py’) for automatically updating the injection time and the set pressure for all 16 channels in the relevant NIS-Elements Macro scripts. In the NIS-Elements software, open the Macro Panel and set up macro buttons with relevant scripts in the folder ‘Macros for 16 channel fluidics system V1′. Reference the help document in the actual version of the NIS-Elements in use for information about how to set up macro buttons with custom written macro scripts. The Macro Panel used for this example will look like the one in Fig. 25.
Fig. 25

Macro Panel with macro buttons set up for controlling the fluidics system in the NIS-Elements software.

Macro Panel with macro buttons set up for controlling the fluidics system in the NIS-Elements software. Click the ‘Open serial port’ button in the Macro Panel. It might require changing the serial port number (the global variable named ‘nSerialPort’) in the macro script named ‘Open serial port.mac’ to the actual serial port number that is assigned to the USB port which the fluidics system is plugged into. Right click the ‘update variable’ button in the Macro Panel to open the macro script associated with this button. The values set for the variables named ‘WaitTimeIncubation’,’WaitTimePBS_sit’,’WaitTimePBS’,’WaitTimDB_sit’,’WaitTimeDB’ are for this specific example experiment. Users can change these values accordingly for their probes exchange handling protocol and then left click the ‘update variable’ button to apply the changes.’WaitTimePBS_sit’ and’WaitTimePBS’ work similarly but allow experimental routines that require two different wait times after injecting 1X PBS. Same with’WaitTimDB_sit’ and’WaitTimDB’. In this and the next two steps, only settings that are relevant to control the fluidics system are described. Reference the help document in the software for other settings in the ND Acquisition panel. Open the ND Acquisition panel in NIS-Elements, click the Time tab and select it as shown in Fig. 26. Add 29 phases each with the parameters named ‘Interval ‘set as 2 sec and ‘Loops’ set as 1.
Fig. 26

The set-up of the time phases in the ND Acquisition panel.

Each phase # is the phase number associated with the time the images were taken in the 3 fluorescent imaging channels. During each phase, serial command was sent from NIS-Elements to the fluidics system controller to control which channel to inject. Here phase # 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 are phases when steps (see Fluorescent oligo exchange and imaging routines at the end of this guide) designed for fluorescently labeled oligo injection and hybridization were running (hybridization step for Fig. 5 in the main text). Other phases are when steps (see Fluorescent oligo exchange and imaging routines at the end of this guide) designed to strip fluorescently labeled oligos (i.e., the washing step for Fig. 31).
Fig. 31

Result of the sequential FISH-based imaging targeting pan-alpha in HeLa cell. (A) Images taken after injecting fluorescently labeled oligos from fluidics channel # 1, 2, and 3 (after the hybridization step in Cycle 1, 2 and 3). (B) Zoom-in images of one cell from (A). (C) The average pixel intensity of pan-alpha puncta in images taken in fluorescent imaging channels 488 nm, 565 nm, and 647 nm in each Cycle.

Phase #1 here is the washing step for Cycle 0 in Fig. 31. Phase # 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29 include the washing steps for Cycle 1 to 14 in Fig. 31. Phase # 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 include the hybridization steps for Cycle 1 to 14 in Fig. 31. The set-up of the time phases in the ND Acquisition panel. In the Advanced section, select ‘Time Phase 1′ from the drop-down menu. Then select ‘Execute before Time phase’. In the text box next to it, put in the command named ‘RunMacro(“Path to the script”)’ with “path to the script” pointing to the location of the macro script named ‘phase1.mac’. Repeat 6 for the remaining 28 phases. For example, select macro script named ‘phase2.mac’ for ‘Time phase 2′, select macro script named ‘phase3.mac’ for ‘Time phase 3′, so on and so forth. Note: There are 2 issues frequently happening in this version of NIS-Elements and below give the work arounds for these 2 issues in order to continue running the experiment smoothly. Sometimes NIS-Elements Macro interprets time in seconds as milliseconds. Use the button named ‘time’ in the Macro Panel to test whether the time counting is correct or not. This button runs a script that sets the pressure to maximum, waits for 3 s, then sets the pressure to zero. Click once this button and observe the macro running status at the bottom of the NIS-Elements software. If the time between setting the pressure to maximum and to zero is not 3 s, restart the PC and try again. Usually, a one-time restart of the PC should fix the issue. Unsuccessful serial communication between NIS-Elements and the fluidics system controller when the USB of the controller first plugged in. Closing NIS-Elements and opening it back up will solve this issue.

Sample loading

Connect an ibidi channel slide with pre-seeded Hela cell with primary probes hybridized to pan alpha satellite (reference to [19] for FISH protocol) to the fluidics system. Use the same method described in 3 of Section 6.3 to eliminate bubbles. Load 14 2 mL Eppendorf tubes each with 1.5 mL fluorescent oligo solution (in 1XPBS) onto the fluidics system. For this example, the fluorescently labeled oligos loaded for each channel are listed as in Table 1. The concentration used here is 1 µM.
Table 1

Fluorescently labeled oligos loaded for each channel.

Channel #1234567891011121516
Fluor oligos488565648488565648488565648488565648488565
Fluorescently labeled oligos loaded for each channel.

Running the experiment

Connect the fluidics system controller to the imaging computer through the USB port. Run ND acquisition in NIS-Elements once the cell sample is in focus.

Manual flow rate calibration

This section describes the procedure to conduct flow rate calibration using the user interface app for reagents other than PBS and displacement buffer used in the demonstrated example Section 6.1 to Section 6.6) and how to extend the calibration routine to achieve flow rates other than the 3 default flow rates. The calibration routine is designed based on the linear relationship between the applied pressure and the flow rate. There is a coarse calibration followed by a fine calibration. The difference between the coarse calibration and the fine calibration is in the step size of the incremental applied pressure. The coarse calibration determines a range of applied pressure within which a more precise pressure can be determined to generate the target flow rate. The combination of coarse and fine calibrations was designed to minimize the searching time of the required pressure (to achieve the target flow rate) and the amount of the calibration reagent required. The whole calibration routine takes about 40 min and can be completed with 2 mL reagent in the Eppendorf tube reservoir. The pressure search range can be set in the text boxes in the ‘Calibration’ tab. The pressure search range (in the order of start pressure, stop pressure, step size) for channel #1-12 and 16 can be entered in the first row. The pressure search range for channel #15 can be entered in the second row (for our internal build used for the experiments described in this manuscript, channel #15 has a much higher flow resistance due to hardware component variability). The pressure search range for channel #13 and 14 can be entered in the third and fourth row (for regular usage in our lab, these two channels are designated for large reservoirs for displacement buffer and PBS). Users can manually change these parameters: start pressure, stop pressure, step size to achieve optimal calibration result. The default values here are verified and tested to be robust for 1X PBS and displacement buffer used in the 14-round sequential FISH-based imaging experiment. Users can load the resulting calibration data for individual channel by clicking two buttons named ‘Coarse calibration data’ and ‘Fine calibration data’ and they will be shown in the corresponding tables (first row is the applied pressure; second row is the resulting flow rate). Users can examine these calibration data to identify a more suitable calibration parameter set (start pressure, stop pressure, step size) if the calibrated pressure does not archive the target flow rate. The calibrated pressure for each channel is shown in the table under the button named ‘Calibrated set_pressure’ (In the first row it is shown as Decimal data and in the second row it is shown as Hex data). As for flow rates other than the 3 default pre-tested flow rates, the python scripts for the interface app provided in the project’s repository can be modified (by changing the value assigned to the variable named FLOW_RATE) easily to adapt the calibration routine to calibrate other targeted flow rates.

Fluorescent oligo exchange and imaging routine

Inject 800 µL of fluorescent hybridization solution (fluorescent oligos + 1X PBS) and incubate for 1 h. Wash 2X with 800 µL of 1X PBS. Acquire a multichannel Z-stack. Wash with 3X with 800 µL displacement buffer: inject 3X 800 µL displacement buffer (1X PBS + 60 % vol/vol formamide), then let it sit for 4 min. Wash 4X with 800 µL of 1X PBS. Acquire a multichannel Z-stack. Repeat 1 to 6 for all the fluidic channels.

Validation and characterization

Flow rate control

A robust flow rate control is important for controlling the injection volume. The flow rate is linearly proportional to the amount of pressure that is applied to the reservoir. A calibration routine is integrated into the user interface. This routine can complete the automatic flow rate calibration with the 1.5 mL of 1X PBS buffer that is loaded in the 2 mL Eppendorf tube. This helps to minimize the sample loading effort for calibration. By default, 3 target flow rates, 140 µL/min, 630 µL/min (denoted by 600 µL/min in the calibration tab in the user interface), and 995 µL/min (denoted by 1000 µL/min in the calibration tab in the user interface) can be selected from the user interface with tested calibration parameters. The flow rate calibration routine that can calibrate all 16 channels without any human interaction takes about 40 mins. Fig. 27 shows the measured flow rate for all 16 channels for the three target flow rates, repsectively. The average accuracy of the 16 channels is < +/-5% of the target flow rate.
Fig. 27

Flow rate calibration result of target flow rates of 140 µL/min, 630 µL/min, and 995 µL/min. Mean and standard deviation (SD) are based on 3 measurements.

Flow rate calibration result of target flow rates of 140 µL/min, 630 µL/min, and 995 µL/min. Mean and standard deviation (SD) are based on 3 measurements.

Minimum injection volume

The fluidic system is designed and built to minimize dead volume (the volume of reagent that used to fill up one individual channel before injecting into the imaging chamber) to reduce reagent cost, especially that of fluorescently labeled oligos. The total dead volume measured by filling one individual channel with DI water is about 200 µL (volume of ∼1.5 ft of 0.02″ ID tubing (∼90 µL) + volume of the one-way check valve (∼20 µL) + dead volume of the 16–1 manifold (∼1.4 µL) + dead volume of in-line bubble remover (∼90 µL)). However, for a channel that is primed with a priming reagent (1X PBS or DI water), it would be required to inject a volume more than this amount to ensure the concentration of the injected reagent when reaching the imaging chamber is maximum (equal to the concentration of the reagent in the Eppendorf tube reservoir). The minimum injection volume (when a channel is primed with 1X PBS) for the reagent concentration to reach maximum in the imaging chamber is empirically determined by an experiment. During the experiment, images of the imaging chamber were recorded every 3 s in real-time for each channel from when the reagent (a blue dye is used here, ELVEFLOW Microfluidic Dyes Channels Visualization Kit, SKU: LVF-KXX-06) is injected and the imaging lasted for 75 s for each channel. Between switching channels, 2 mL 1X PBS was injected to wash out the dye from the previous channel and the fluorescent intensity of image of the imaging chamber is verified to decrease to minimum after the washing. The resulting averaged fluorescent intensities change over time for each channel is shown in the plot in Fig. 28. Channel # 1–12, # 15, and # 16 is shown here. Channel # 14 was used for injecting 1X PBS for washing during the experiment. Channel # 13 is not used for this experiment since it is designated for injecting a displacement buffer (for FISH) in the actual sequential FISH experiment. Also, the flow rate is recorded in real-time for estimating the minimum injection volume. The minimum injection volume is estimated as the volume that has been injected when the fluorescent intensity in the imaging chamber first reaches 98 % of that in the Eppendorf tube reservoir. Fig. 29 shows the resulting minimum injection volume for each channel. For all the channels, the injection volume calculated based on this experiment shows to be < 800 µL. Therefore, 800 µL is used as the default minimum injection volume.
Fig. 28

Fluorescent intensity time course during dye injection for 14 channels: channel # 1–12, # 15 and 16. Each data point is the average fluorescent intensity of an image. The images were taken every 3 secs from the onset of the dye injection from one channel till the 75 secs end time. Flow rate is 1 mL/min.

Fig. 29

Minimum injection volume for fluorescent intensity reaches plateau in the imaging chamber. This is calculated from Fig. 28. The minimum injection volume is determined by the time at which the fluorescent intensity reaches 98% of the maximum fluorescent intensity in the plot.

Fluorescent intensity time course during dye injection for 14 channels: channel # 1–12, # 15 and 16. Each data point is the average fluorescent intensity of an image. The images were taken every 3 secs from the onset of the dye injection from one channel till the 75 secs end time. Flow rate is 1 mL/min. Minimum injection volume for fluorescent intensity reaches plateau in the imaging chamber. This is calculated from Fig. 28. The minimum injection volume is determined by the time at which the fluorescent intensity reaches 98% of the maximum fluorescent intensity in the plot.

Minimal cross-contamination validation

An experiment was designed and carried out to evaluate the degree of cross-contamination between channels. Reservoirs for channels # 1–12 and 15, 16 were loaded with fluorescent oligos following this order and then repeated: 488-oligo, 565-oligo, 647-oligo. Reservoirs for channel #13 were loaded with 1X PBS as a washing buffer. And all the channels were primed with 1X PBS. Images were taken in three fluorescent channels (488, 565, 647) after injecting 800 µL (the minimum injection volume from 7.2) fluorescently labeled oligos from one fluidics channel. 2 mL of 1X PBS was injected afterwards and images were then taken again (in the three fluorescent channels). These were repeated from the first fluidics channel until the last fluidics channel. Once the reagents were loaded the experiment routine was run automatically with injection commands issued and images taken by NIS-Elements. The average fluorescent intensities in the three fluorescent channels are shown in Fig. 30. The order of which fluorescent channel has maximum intensity value follows the order of the fluorescent oligos being injected. Moreover, the fluorescent channels that are not associated with the intended injected fluorescent oligos have very low intensity values. The fluorescent intensity value is also low when 1X PBS was injected to wash the oligo away from the imaging chamber. The fluorescent intensity is very consistent across channels when the same fluorescent oligos is injected. These results show that sequential injection with the fluidics system combined with imaging can be successfully carried out without significant cross-contamination between channels and the concentration of reagent injected from each channel remains consistent.
Fig. 30

Average fluorescent intensity of images taken in fluorescent imaging channels: 488 nm, 565 nm, and 647 nm. Fluorescently labeled oligos were loaded into the Eppendorf tube reservoirs in this order: 488-oligo for channel 1, 565-oligo for channel 2, 647-oligo for channel 3 and this order was repeated for channels # 4–12 and # 15 and # 16. Images were taken after 800 µL fluorescent oligo reagent from one channel was injected. 2 mL 1X PBS was injected as a washing step to wash out the oligos from the previous injection before injecting fluor oligos from the next channel. Images were also taken after the 2 mL 1X PBS injection finished for that round.

Average fluorescent intensity of images taken in fluorescent imaging channels: 488 nm, 565 nm, and 647 nm. Fluorescently labeled oligos were loaded into the Eppendorf tube reservoirs in this order: 488-oligo for channel 1, 565-oligo for channel 2, 647-oligo for channel 3 and this order was repeated for channels # 4–12 and # 15 and # 16. Images were taken after 800 µL fluorescent oligo reagent from one channel was injected. 2 mL 1X PBS was injected as a washing step to wash out the oligos from the previous injection before injecting fluor oligos from the next channel. Images were also taken after the 2 mL 1X PBS injection finished for that round.

Automating a sequential FISH-based imaging experiment

To demonstrate the fluidics system’s capability of performing oligo probe exchange for sequential FISH-based imaging, an experiment was carried out using DNA-SABER FISH targeting the alpha satellite repeat in HeLa cells with three different fluorescent readout oligos. For experimental simplicity, we chose to cycle through imaging the same target with distinct fluorescent channels over 14 rounds in fixed tissue culture cells for our proof-of-concept demonstration. However, with a system such as the one described here, multiplexed FISH could be conducted instead against 14 distinct targets (or more if combinatorial encoding were used) and/or RNA/DNA targets in fixed tissue specimens. We do note that the SABER exchange protocol listed in Section 6.7 may need to be further optimized for different FISH targets and sample types. Live HeLa cells were seeded into ibidi 6-channel slides (ibidi 80607) and allowed to adhere overnight in a mammalian tissue culture incubator. These cells were then fixed, permeabilized, and hybridized with primary probe using a standard “3D DNA FISH” protocol [19]. Each of the primary probes has a SABER [19] concatemer sequence (the ‘p27’ concatemer sequence) that can be targeted by SABER fluorescent oligos as readout probes. Three different SABER fluorescent oligos were loaded into the Eppendorf tubes for fluidics channels # 1–12, channels # 15 and 16 in the following order and then repeat: p27-488, p27-565, p27-647. Reservoirs for channels # 13 and 14 were loaded with a displacement buffer and 1X PBS separately. Fluorescently labeled oligos were injected sequentially and images were taken once the oligos from the current fluidics channel were incubated in the imaging chamber for 1 h (hybridization step) and after the oligos were stripped away by injecting the displacement buffer (washing step). The displacement buffer consisted of 0.4X PBS + 0.04 % (vol/vol) Tween-20 + 60 % (vol/vol) formamide. The fluorescent oligo exchange and imaging routines were controlled by NIS-Elements communicating with the fluidics system’s controller by serial commands. No human intervention was needed once the experiment started to run. The fluorescent images for the first three rounds of hybridization are shown in Fig. 31 (A). The alpha satellite pattern was illustrated by the corresponding fluorescent oligos. Zoom-in images of one cell from Fig. 31 (A) are shown in Fig. 31 (B). The average pixel intensity was quantified by averaging the fluorescent intensity of pixels belonging to the alpha satellite puncta. This is shown in the plot in Fig. 31 (C). The plot shows that the intensity has the highest value in the imaging channel that is associated with the intended injected fluorescent oligos and the intensity is very low in the other two imaging channels. Also, the intensity from images taken after introducing the displacement buffer is low (images taken after the washing step in each cycle). Result of the sequential FISH-based imaging targeting pan-alpha in HeLa cell. (A) Images taken after injecting fluorescently labeled oligos from fluidics channel # 1, 2, and 3 (after the hybridization step in Cycle 1, 2 and 3). (B) Zoom-in images of one cell from (A). (C) The average pixel intensity of pan-alpha puncta in images taken in fluorescent imaging channels 488 nm, 565 nm, and 647 nm in each Cycle. Cycle 1 to 12 inject fluorescently labeled oligos from fluidics channels #1 to 12, Cycle 13 and 14 inject fluorescently labeled oligos from fluidics channels # 15 and 16. Each cycle includes a hybridization step (indicated as Hyb in the x axis) followed by a washing step (indicated as Wa in the x axis) except Cycle 0. Cycle 0 only has a washing step. Images were taken after the hybridization step as well as after the washing step in each cycle. Fig. 32 shows that the staining pattern is entirely removed at the contrast level of the original imaging and only weakly present if the contrast is heavily increased. The decrease of intensity in the plot of Fig. 31 observed over increasing numbers of exchange cycles is likely due to the instability of the fluorescent oligos in the 1X PBS buffer. Nevertheless, the result demonstrates that the fluidics system is robust in handling complicated fluidics exchange routines for sequential FISH-based imaging. We thus anticipate this system could be used for a broad set of optical methods that require fluid exchange including live-cell imaging, multiplexed immunofluorescence, and single-molecule localization microscopy.
Fig. 32

Removal of fluorescently labeled readout oligos using the fluidic system. The images corresponding to the first (A), second (B), and third (C) cycles from Fig. 31 are shown before and after the washing steps at min/max (left) and elevated (right) contrasts.

Removal of fluorescently labeled readout oligos using the fluidic system. The images corresponding to the first (A), second (B), and third (C) cycles from Fig. 31 are shown before and after the washing steps at min/max (left) and elevated (right) contrasts.

CRediT authorship contribution statement

Zhaojie Deng: Conceptualization, Methodology, Software, Writing – original draft. Brian J. Beliveau: Conceptualization, Methodology, Writing – review & editing.

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Hardware nameIntegrated Multichannel Fluidics System
Subject area

Engineering and materials scienceMedical

(e.g., pharmaceutical science)

NeuroscienceBiological sciences

(e.g., microbiology and biochemistry)

Educational tools and open source alternatives to existing infrastructure

Hardware type

Imaging tools

Biological sample handling and preparation

Electrical engineering and computer science

Closest commercial analogMicrofluidics Unit – BRUKER. Available at: https://www.bruker.com/en/products-and-solutions/fluorescence-microscopy/super-resolution-microscopes/microfluidics-unit.html (Accessed: 28th January 2022). The fluidics system presented here has a controller that can control up to 120 channels and the built cost is at a fraction of that of the commercial system.
Open source licenseGPL, MIT
Cost of hardwareUSD5000
Source file repositoryhttps://doi.org/10.17632/tkm4w7wp3v.1; https://github.com/dzhaojie/Fluidics-system-for-FISH
Design file nameFile typeOpen source licenseLocation of the file
bill_of_materials.xlsxXLSXGPLAvailable with the article
fluidics_system_controller_PCB_design_files.zipPCB files, KiCADGPLhttps://doi.org/10.17632/tkm4w7wp3v.1;https://github.com/dzhaojie/Fluidics-system-for-FISH
Eppendorf_tube_adaptor_3D_print_files.zipSTLGPLhttps://doi.org/10.17632/tkm4w7wp3v.1;https://github.com/dzhaojie/Fluidics-system-for-FISH
laser_cut_acrylic_panel_organizer.aiIllustrator fileGPLhttps://doi.org/10.17632/tkm4w7wp3v.1;https://github.com/dzhaojie/Fluidics-system-for-FISH
controller_case_laser_cut.zip3 dm fileGPLhttps://doi.org/10.17632/tkm4w7wp3v.1;https://github.com/dzhaojie/Fluidics-system-for-FISH
case_for_pressure_regulator_laser_cut.pdfPDFGPLhttps://doi.org/10.17632/tkm4w7wp3v.1;https://github.com/dzhaojie/Fluidics-system-for-FISH
large_reservoir_holder.stlSTLGPLhttps://doi.org/10.17632/tkm4w7wp3v.1;https://github.com/dzhaojie/Fluidics-system-for-FISH
user_interface_app_for_flow_rate_calibration.zipPython scriptMIThttps://doi.org/10.17632/tkm4w7wp3v.1;https://github.com/dzhaojie/Fluidics-system-for-FISH
NIS-Elements Macro codes.zip.macMIThttps://doi.org/10.17632/tkm4w7wp3v.1;https://github.com/dzhaojie/Fluidics-system-for-FISH
Fluidics System Controller with ESP32C++ codeMIThttps://doi.org/10.17632/tkm4w7wp3v.1;https://github.com/dzhaojie/Fluidics-system-for-FISH
DesignatorComponentNumberCost per unit -currencyTotal cost -currencySource of materialsMaterial type
T1Polyurethane Tubing for Air and Water, 5/32″ ID, 1/4″ OD, Clear Colors, 50 ft roll5648K6923.523.5McMaster-CarrPolymer
T2Saint-Gobain™ Tygon™ ND 100-80 Tubing (500′ roll, 0.06″ OD, 0.02″ ID)14-171-284325.5325.5Fisher ScientificPolymer
T3Polyurethane Tubing for Air and Water, 1/16″ ID, 1/8″ OD, Clear Colors5648K676.56.5McMaster-CarrPolymer
T4E-3603 Tygon PVC Tubing for Chemicals, 1/16″ ID, 1/8″ OD5155T1217.517.5McMaster-CarrPolymer
T5E-3603 Tygon PVC Tubing for Chemicals1/8″ ID, 3/16″ OD5155T1629.529.5McMaster-CarrPolymer
T6Tubing, 50A Durometer, 0.058 in. ID × 0.077 in. OD (1.5 mm × 2 mm), 50 ft coil (15.24 m)T200710.510.5QOSINAPolymer
P1ESP32-DevKitCESP32-DevKitC1010EspressifSemiconductor
P2PCA9698PCA9698DGG,5184.5313.59NXPSemiconductor
P3UNL2803AULN2803ADW1.5122.65TISemiconductor
P4TLV2374296-11967-1-ND1.819.05DigiKeySemiconductor
P52.54 mm Pitch, 0.64 mm Width H-DAC 64 High Density Automotive Connectors, Dual Row, Female Harness Assembly, 16 Circuits, Polarization Option 1, Natural538-30700-11672.0230.3MolexPolymer
P62.54 mm Pitch, H-DAC 64 High Density Automotive Header, Dual Row, Vertical, 16 Circuits, Polarization Option 1, Natural, Tray538-30700-41602.4937.35MolexPolymer
P7Cable Crimp1393366-10.250DigiKeyMetal
P8Polarized Connectors - Housing (4-Pin)PRT-080970.452.25SparkFunPolymer
P9Polarized Connectors - Crimp PinsPRT-081001.951.95SparkFunPolymer
P10Polarized Connectors - Header (4 pin)PRT-08230.450.9SparkFunPolymer
P11DC Barrel Jack Adapter - Breadboard CompatiblePRT-108110.950.95SparkFunPolymer
P12Wall Adapter Power Supply – 12VDC 600 mATOL-094425.595.59SparkFunOther
P1312 V to 5 V regulatorR-78E5.0-1.03.263.26DigiKeySemiconductor
P1412 V to 24 V regulatorDSN600910.9910.99AmazonSemiconductor
P15Stackable Header – 3 PinPRT-138750.50.5SparkFunPolymer
P1612 V to 9 V regulatorR-78E9.0-0.52.892.89DigiKeySemiconductor
P17Pin header for ESP32 forPRT-001151.56SparkFunPolymer
P180.1 uF capacitor1276-1007-1-ND0.12digiKeySemiconductor
P196.8 uF capacitor478-8447-1-ND0.793.95digiKeySemiconductor
P2010 uF capacitor445-14484-1-ND0.383.8digiKeySemiconductor
P211.6 K resistorP20615CT-ND0.363.6digiKeySemiconductor
P221.8 K resistorP20621CT-ND0.363.6digiKeySemiconductor
P233.3 K resistorP20651CT-ND0.363.6digiKeySemiconductor
P24Printed PCB boardN/A121.33121.33OSHPARKSemiconductor
S120 mm × 20 mm T-Slotted Profile - Four Open T-Slots - 30 in.20-20206.752780/20, LLCMetal
S220 mm × 20 mm T-Slotted Profile - Four Open T-Slots - 12 in.20-20203.8746.4480/20, LLCMetal
S320 Series 2 Hole - Inside Corner Bracket20-41192.8568.480/20, LLCMetal
S45.30 mm ID WasherNov-400.115.2880/20, LLCMetal
S5M5 Slide-in Economy T-Nut Block141220.2116.880/20, LLCMetal
S6M5 × 10.00 mm Button Head Socket Cap Screw13-53100.2411.5280/20, LLCMetal
S745 mm × 45 mm T-Slotted Profile - Four Open T-Slots − 22 in.45-4545-Black-FB20.1240.2480/20, LLCMetal
S845 Series 2 Hole - Gusseted Inside Corner Bracket45-4332-Black5.2621.0480/20, LLCMetal
S9Bolt Assembly: M8 × 18.00 mm Black BHSCS with Standard Drop-In T-Nut - Bright Zinc75-36191.154.680/20, LLCMetal
S108.51 mm ID Washer11-60420.130.5280/20, LLCMetal
S11Post-Assembly T-Slot Nuts, M526016-0110.4920.98InventablesMetal
S12Laser cut acrylic panel (3/16″ thick), tubing organizationN/A9.49.4Custom laser cut-Other
S13Laser cut acrylic panel (3/16″ thick), tubing organizationN/A9.49.4Custom laser cut-Other
S14Laser cut acrylic panel (3/16″ thick), tubing organizationN/A9.49.4Custom laser cut-Other
S15Laser cut acrylic panel (3/16″ thick), tubing organizationN/A9.49.4Custom laser cut-Other
O1Valco manifoldsZ16M1PK300300Valco Instruments Co. Inc.Polymer
O2Super-Corrosion-Resistant 316 Stainless Steel Socket Head Screw, M6 × 1 mm Thread, 30 mm Long92290A33217.517.5McMaster-CarrMetal
O318-8 Stainless Steel Hex Nut, M6 × 1 mm Thread91828A25114.7314.73McMaster-CarrMetal
O4Duckbill Check Valve; Yellow Inlet, Clear Outlet800891.2825.6QOSINAPolymer
O5One-way luer check valve, SAN with silicone diaphragm, female-maleEW-30505-929.79.7Cole-ParmerPolymer
O6Idex P-628 Threaded Luer Adapter, Natural ETFE, 0.040″ Bore, Female Luer × Female 1/4-28 Flat BottomUX-02014-034.4922.45Cole-ParmerPolymer
E13D printed adapter bodyN/A0.247.68Custom 3D printPolymer
E2Tapered Heat-Set Inserts for Plastic 1/4″-28 Thread Size, 1/2″ Installed Length, Brass93365A26013.1226.24McMaster-CarrMetal
E3Oil-Resistant Hard Buna-N O-Ring,2 mm Wide, 6 mm ID1247N1733.713.71McMaster-CarrOther
E4Flangeless Male Nut Delrin®, 1/4-28 Flat-Bottom, for 1/8″ OD - WhiteP-3031.3955.6IDEX Health & SciencePolymer
E5Flangeless Ferrule Tefzel™ (ETFE) 1/4-28 Flat-Bottom, for 1/8″ ODP-3001.3955.6IDEX Health & SciencePolymer
E6Flangeless Male Nut Delrin®, 1/4-28 Flat-Bottom, 1/16″“ ODP-202X12.148.4IDEX Health & SciencePolymer
E7Flangeless Ferrule Tefzel™ (ETFE), 1/4-28 Flat-Bottom, for 1/16″ ODP-2001.3955.6IDEX Health & SciencePolymer
E83D printed slot panel for Eppendorf tube adaptorN/A0.750.75Custom 3D printPolymer
E9Laser cut bottom panel (3/16″ thick), Sample loading module assemblyN/A9.49.4Custom laser cutPolymer
E10Laser cut top panel (3/16″ thick), Sample loading module assemblyN/A9.49.4Custom laser cutPolymer
E1118-8 Stainless Steel Socket Head Screw M3 × 0.5 mm Thread, 50 mm Long91292A0264.774.77McMaster-CarrMetal
E12Zinc-Plated Steel Hex Nut Low-Strength, M3 × 0.5 mm Thread90591A1211.91.9McMaster-CarrMetal
E13Low-Strength Zinc-Plated Steel Threaded Rod, M5 × 0.8 mm Thread, 300 mm long94595A2175.6111.22McMaster-CarrMetal
E14Zinc-Plated Steel High Hex Nut, Class 6, M5 × 0.8 mm Thread90725A0309.559.55McMaster-CarrMetal
E15316 Stainless Steel Washer, for M5 Screw Size, 5.3 mm ID, 10 mm OD90965A1604.774.77McMaster-CarrMetal
SV1Pneumadyne 3-way normally open Solenoid ValvesS10MM-30-12-230.01600.2PneumadyneNon-specific
SV210-Station Solenoid ManifoldsMSV10-1036.472.8PneumadyneMetal
SV31/16 Tube Id Barb Straight Connectors (10-32 UNF)EB1042.542.5PneumadyneMetal
SV4Push-to-Connect Tube Fitting for Air & Water, Straight Adapter, 1/4″ Tube OD × 10-32 UNF Male7880T1222.895.78McMaster-CarrMetal
SV5Black-Oxide Alloy Steel Socket Head Screw M3 × 0.5 mm Thread, 15 mm Long91290A5721010McMaster-CarrMetal
SV6Post-Assembly T-Slot Nuts, M3 (3 mm) × 0.526016-0210.4910.49InventablesMetal
C1BC-222N - BOTTLE CAP, GL45 2-ported 1/4-1/4-28, PTFEBC-222N2550Chrom TechOther
C2BT45-1B - BOTTLE GL45 1 Liter, Clear Glass Press ResistBT45-1B2550Chrom TechOther
C3µ-Slide VI 0.5 Glass Bottom806071616ibidiOther
C4Elbow Luer Connector Male1080236ibidiPolymer
C5Polycarbonate, Straight, Male Luer Lock to Hosebarb Adapter, 1/8″ IDEW-45504-0416.616.6Cole-ParmerPolymer
C6Male to Male Luer Lock Connector120900.140.14QOSINAPolymer
C7Check Valve, Female Luer Lock Inlet, Male Luer Lock Outlet801290.880.88QOSINAPolymer
R1Microfluidic thermal flow sensorLVF-MFS-D-41,8721872DARWIN microfluidicsNon-specific
R2Campbell Hausfeld Air Cleaner, Air Dryer for Air ToolsPA208503AV8080AmazonNon-specific
R3MPV Pressure RegulatorMPV1PANKKZP15PSGAAL541541ProportionAirNon-specific
R4Push-to-Connect Tube Fitting for Air & Water, Straight Adapter, 1/4″ Tube OD × 1/4 NPT Male7880T1252.244.48McMaster-CarrMetal
R5Push-to-Connect Tube Fitting for Air & Water, Straight Adapter, 1/4″ Tube OD × 1/8 NPT Male7880T1242.246.72McMaster-CarrMetal
R62-Station, 3/8 NPT (F) Input, Aluminum ManifoldM20-250-214.4714.47pneumadyneMetal
R7Push-to-Connect Tube Fitting for Air & Water, Straight Adapter, 1/4″ Tube OD × 3/8 NPT Male7880T1262.725.44McMaster-CarrMetal
R8High-Pressure Brass Pipe Fitting, Solid Plug with External Hex Drive, 3/8 NPT50785K3362.962.96McMaster CarrMetal
R9Bubble Trap for Microfluidics KitLVF-3525128128DARWIN microfluidicsNon-specific
  15 in total

1.  Dynamics and Spatial Genomics of the Nascent Transcriptome by Intron seqFISH.

Authors:  Sheel Shah; Yodai Takei; Wen Zhou; Eric Lubeck; Jina Yun; Chee-Huat Linus Eng; Noushin Koulena; Christopher Cronin; Christoph Karp; Eric J Liaw; Mina Amin; Long Cai
Journal:  Cell       Date:  2018-06-07       Impact factor: 41.582

2.  All-in-one automated microfluidics control system.

Authors:  Craig Watson; Samuel E Senyo
Journal:  HardwareX       Date:  2019-04-15

3.  Spatial organization of chromatin domains and compartments in single chromosomes.

Authors:  Siyuan Wang; Jun-Han Su; Brian J Beliveau; Bogdan Bintu; Jeffrey R Moffitt; Chao-ting Wu; Xiaowei Zhuang
Journal:  Science       Date:  2016-07-21       Impact factor: 47.728

4.  Super-resolution chromatin tracing reveals domains and cooperative interactions in single cells.

Authors:  Bogdan Bintu; Leslie J Mateo; Jun-Han Su; Nicholas A Sinnott-Armstrong; Mirae Parker; Seon Kinrot; Kei Yamaya; Alistair N Boettiger; Xiaowei Zhuang
Journal:  Science       Date:  2018-10-26       Impact factor: 47.728

5.  Single-cell systems biology by super-resolution imaging and combinatorial labeling.

Authors:  Eric Lubeck; Long Cai
Journal:  Nat Methods       Date:  2012-06-03       Impact factor: 28.547

6.  Single-chromosome transcriptional profiling reveals chromosomal gene expression regulation.

Authors:  Marshall J Levesque; Arjun Raj
Journal:  Nat Methods       Date:  2013-02-17       Impact factor: 28.547

7.  SABER amplifies FISH: enhanced multiplexed imaging of RNA and DNA in cells and tissues.

Authors:  Jocelyn Y Kishi; Sylvain W Lapan; Brian J Beliveau; Emma R West; Allen Zhu; Hiroshi M Sasaki; Sinem K Saka; Yu Wang; Constance L Cepko; Peng Yin
Journal:  Nat Methods       Date:  2019-05-20       Impact factor: 28.547

8.  Automating multimodal microscopy with NanoJ-Fluidics.

Authors:  Pedro Almada; Pedro M Pereira; Siân Culley; Ghislaine Caillol; Fanny Boroni-Rueda; Christina L Dix; Guillaume Charras; Buzz Baum; Romain F Laine; Christophe Leterrier; Ricardo Henriques
Journal:  Nat Commun       Date:  2019-03-15       Impact factor: 14.919

9.  Visualizing DNA folding and RNA in embryos at single-cell resolution.

Authors:  Leslie J Mateo; Sedona E Murphy; Antonina Hafner; Isaac S Cinquini; Carly A Walker; Alistair N Boettiger
Journal:  Nature       Date:  2019-03-18       Impact factor: 49.962

10.  Integrated spatial genomics reveals global architecture of single nuclei.

Authors:  Yodai Takei; Jina Yun; Shiwei Zheng; Noah Ollikainen; Nico Pierson; Jonathan White; Sheel Shah; Julian Thomassie; Shengbao Suo; Chee-Huat Linus Eng; Mitchell Guttman; Guo-Cheng Yuan; Long Cai
Journal:  Nature       Date:  2021-01-27       Impact factor: 49.962

View more

北京卡尤迪生物科技股份有限公司 © 2022-2023.