Close this search box.

Open-source interactive design platform for 3D-printed microfluidic devices – Communications Engineering

The design methodology of Flui3d is inspired by conventional generic 3D modeling software, CAD tools, and PCB (printed circuit board) editors. Flui3d combines the strengths and ease of each, which notably simplifies the design process of microfluidic devices for 3D printing. A description of software architecture and design is provided in  Supplementary Methods. Subsequently, the following section describes the major features of Flui3d in detail.

Standard parameterized component library

Redesigning established components in microfluidic contexts can be a time-consuming and laborious process. State-of-the-art PCB design software offers standard component libraries that contain many standardized component footprints for reuse purposes. In contrast to conventional electronic components, which are usually uniform in size, shape, and footprint within the same category, microfluidic components exhibit distinct characteristics. For instance, all 0603 resistors or capacitors, no matter what value they have, will have the same footprint on a PCB. For microfluidic components, even when they share fundamental properties like overall form and function, they can vary significantly in terms of their size, dimensions, certain shapes that are repeated, or the specific patterns or features they possess. For instance, small chamber vs. large chamber or 10-turn vs. 5-turn serpentine mixers. Consequently, to place the same type of microfluidic component with different properties, an engineer cannot simply replicate the component by copying and pasting. Instead, the engineer must redraw the entire component, adding to the effort required, particularly in the case of 3D printing microfluidic devices.

Thus, we designed the standard parameterized component library for 3D printing microfluidic devices, which is a collection of established, pre-designed, and customizable components that can be easily configured to meet the specific requirements of the larger design. This library streamlines the creation of complex microfluidic designs, eliminating extensive manual drafting and calculation. The use of a parameterized component library can improve the consistency and reliability of the design, as the components have been pre-optimized for 3D printing and microfluidic performance. The parameterized component library standardizes the design process and reduces the time and effort needed to create new microfluidic devices.

As for now, we included several established microfluidic components for 3D printing in the library:


Chambers are an essential component of microfluidic devices, as they provide the physical and chemical environment for the fluids to flow and interact and can be used to perform a wide range of functions, such as mixing, splitting, sorting, detecting, and reacting. We parameterized it with the following properties: width, length, height, and corner radius.

Chamber with pillars

A chamber with pillars is a chamber that has an array of pillars or posts inside, which can be used to control and manipulate the flow and behavior of fluids in the chamber. For example, the pillars can create vortices, jets, or eddies in the flow, which can mix, stir, or transport the fluids in the chamber; or can create barriers, traps, or channels in the flow, which can sort, filter, or separate the fluids in the chamber. We parameterized it with the following properties: width, length, height, corner radius, number of pillar rows, number of pillar columns, and pillar radius.

Serpentine channel

Serpentine channels are channels that have a serpentine or zigzag shape, which can be used to control and manipulate the flow and behavior of fluids in the channel. For example, serpentine channels can be used as mixing channels, where the fluids can be mixed and stirred by the serpentine shape of the channel, or as delay channels, where the flow speed of the fluid slows down physically. We parameterized it with the following properties: channel width, length, height, channel distance, number of turnings, and corner radius.

Tesla valve

A Tesla valve is a passive valve with no moving parts. The working principle of this valve is that forward flow experiences hydraulic resistance due to the looped shape of the conduit, while reverse flow experiences little to no resistance. Tesla valves have been used in various applications31. For example, Tesla valves are used in hydrogen fuel cell research, where the valve can be used as a decompression unit or as a micropump based on thermal cavitation. We parameterized it with the following properties: channel width, height, number of segment pairs, segment length, and segment width.

Droplet generator

A droplet generator is a component that can be used to produce droplets of fluids in a microscale or nanoscale environment. For example, a droplet generator can be used to encapsulate and protect a drug or a therapeutic agent inside a droplet. We parameterized it with the following properties: disperse channel width, continuous channel width, droplet channel width, droplet channel length, connection channel length, and height.

Channel width transition

A channel width transition is a microfluidic component that can be used to connect two channels with different widths. The channel width transition consists of a narrow segment with a tapered shape, which gradually widens or narrows from one channel to the other. The channel width transition can be used in a wide range of applications. For example, it can be used to connect a high-pressure channel with a low-pressure channel or to connect the main channel with side channels to enable the flow of the sample or the reagents into or out of the main channel. We parameterized it with the following properties: transition length, transition width left, transition width right, connection channel length, and height.

Channel height transition

Similar to the channel width transition, this component can be used to connect two channels with different heights. We parameterized it with the following properties: transition length, transition height left, transition height right, connection channel length, and height.

The standard parameterized component library in Flui3d can greatly enhance the capabilities and performance of microfluidic design for 3D printing. In the future, we plan to include additional components in the library. As open-source software, we also hope that it can facilitate collaboration and communication among researchers, scientists, and engineers in the field of microfluidics and can enable the development of new and exciting components that can be easily added to the library.

Custom component design

Custom component design is an essential aspect of microfluidic device design, as it allows engineers to create unique and specialized components that are not available in the standard component library. However, custom component design can be challenging and time-consuming, as it requires a high level of technical expertise and precision.

Flui3d addresses this challenge by providing a simplified custom component design function that enables engineers to easily create and customize their own microfluidic components. With this function, engineers can quickly and easily draw simple shapes in solid, hollow, or stroke (channel) form, such as triangles, rectangles, and circles, using the tools provided on the Design Toolbar. These shapes can then be combined and modified to create more complex and specialized components, as illustrated in Fig. 7a, b. In addition, by combining the shapes with channels or standardized microfluidic components, users can create their own specified components rapidly.

Fig. 7: Demonstration of special design features.
figure 7

a, b Custom component design features of Flui3d. Users can create customized components by combining shapes using Flui3d’s polygon and circle design tools. The designs are depicted at the top and the generated three-dimensional models are at the bottom. c The bridge function allows users to add a bridge to an existing channel, enabling them to avoid channel crossings, for example.

It allows engineers to create a wide range of custom components that are tailored to their specific needs and requirements. For example, an engineer can create a custom microfluidic chamber with a specific pillar shape. This enables engineers to create microfluidic devices that are highly customized and optimized for their specific applications and goals.

However, the benefits of custom component design should extend beyond individual users. Users can download their custom designs’ project files, and by sharing their custom designs with the microfluidic community, such as Metafluidics32, users can contribute to the collective knowledge and expertise of microfluidic design. This enables other users to access and use these custom components in their own designs, increasing the range of available components and fostering collaboration and innovation.

3D microfluidics and multilayer design

The utilization of 3D printing technology confers a distinct advantage in its capacity to manufacture intricate and three-dimensional structures. The design of multilayer microfluidic devices presents a formidable challenge, demanding a profound comprehension of fluid dynamics and 3D printing technology. While generic 3D modeling software offers a range of tools and features for creating and editing 3D models, they may not be optimized for the design of multilayer microfluidic devices. This is primarily due to the intricate and interconnected nature of the components and features within microfluidic devices, requiring precise positioning and alignment across different layers. Designing multilayer microfluidic devices using generic 3D modeling software can be time-consuming and challenging, as it requires a high level of expertise and attention to detail. It is often tedious to visualize and identify the interrelationships and interconnections between different components and layers, especially in the context of intricate and densely configured designs. It can also be hard to accurately position and orient the components and features, as the software may not provide a good view of the layers or a clear delineation of the spatial dimensions of the components.

Flui3d presents a user-friendly way tailored to the design of multilayer 3D-printed microfluidic devices, thereby simplifying and streamlining the creation and specification of designs, along with the establishment of inter-layer relationships and connections. To facilitate the design process, Flui3d includes a layer control tool at the bottom of the screen, which allows users to easily add, remove, and change the layers. Each layer is automatically accentuated with a different color, which is displayed on a bar at the bottom of the screen, indicating the height of each layer (Fig. 2c). Users can select any layer to start designing the features on that layer. On the canvas, components and features at different layers are also indicated with different colors, so users can easily see where the features belong and on which layer they are currently working. When a layer is selected, all other layers’ components and features are faded in color, so users can focus on the current layer design. An example is illustrated in Fig. 3a.

Leveraging the inherent advantages of 3D printing technology in the field of three-dimensional structural fabrication, we also present a feature in Flui3d—a bridge function. This function enables users to incorporate an arch bridge within their designs. The primary utility of this bridge function is to avoid channel crossing within the same layer of the printed structure. Figure 7c shows two bridges over two channels.


One of the key challenges in the design of microfluidic devices is ensuring that the final design is manufacturable using 3D printing technology. This is where design-for-manufacturing (DFM) comes into play. DFM is the process of designing products in a way that takes into account the manufacturing processes and capabilities in order to optimize the design for manufacturability, reliability, and cost.

Flui3d includes several DFM features that help users design microfluidic devices that can be easily and reliably manufactured using 3D printing. Like the state-of-the-art PCB design software, Flui3d allows users to specify several distance constraints compatible with the selected 3D printing technology to avoid design errors and manufacturing defects. It incorporates DFM principles by providing built-in design rules and constraints (DRC) that ensure the compatibility of the microfluidic design with the chosen manufacturing process (Fig. 2j). We have established a set of design rules and constraints that users can individually configure and activate. These include minimum channel width, minimum component distance, minimum port radius, checks for out-of-chip boundaries, and detection of overlapping objects on the same layer. For example, Flui3d can automatically check the dimensions and tolerances of the microfluidic channels and features and flag any potential issues or violations of the design rules. This helps users avoid common mistakes and pitfalls that can lead to failure or poor performance of the microfluidic device.

As mentioned before, currently, one of the most popular 3D printing technologies that is used for fabricating microfluidic devices is stereolithography (SLA) printing technology, which is an overall term for Laser SLA, Digital Light Processing (DLP) SLA and Mask-SLA (LCD 3D printing) technology. SLA printing technology uses a laser or other light source to cure a photosensitive resin layer by layer, creating a 3D object. In the context of microfluidics, this technology can be used to create complex microfluidic devices with high resolution and accuracy. Nevertheless, the quality of the printed device can be influenced by a number of factors, including the light penetration depth. The light penetration depth refers to the distance that the light can travel into the resin before it is fully absorbed. This distance is determined by multiple properties, such as the properties of the resin, the wavelength of the light used, the intensity of the light source, and ambient temperature and humidity. A common problem when using stereolithography to print transparent or semi-transparent unibody—microfluidic devices that all features are printed (enclosed) into the device in a single printing process, and no additional lamination or bonding process is required—or multilayer microfluidic devices is that because the resin is transparent, the light used to cure it can pass through several layers (print slices) and cure areas that are not intended to be solid. This can cause the resin to solidify in unintended areas, resulting in defects or flaws in the printed features33, as presented in Fig. 5c.

Fabricating microfluidic devices with small features is particularly difficult, especially when it comes to multilayer devices. As demonstrated by examples in the literature, many 3D-printed microfluidic devices are large and could more accurately be classified as “mili-fluidic.” Consequently, small and multilayer 3D-printed microfluidics are not commonly seen due to these challenges. We propose a way that is able to overcome this issue. By adding additional height or space to the designs, we could compensate for light penetration and prevent the complete curing of unintended areas.

As part of the DFM function, Flui3d supports the optimization of microfluidic devices for manufacturing and includes this unique feature for exposure compensation, which, at the output stage, can dynamically compensate the height of features in the design (local compensation) or add a user-specified blank exposure height (global compensation) to each feature layer in order to optimize the design for the SLA printing technology (Fig. 2k). Figure 8a–d illustrates the difference between output (a) without compensation, (b) with local compensation, (c) with global compensation, and (d) with both compensation methods.

Fig. 8: Comparison of a three-layer design output with and without compensation using different compensation strategies.
figure 8

Four vertically cross-cut side views of STL models are shown with the same view angle. a shows the output of a design without using compensation. b, c show the output with local and global compensation, respectively. d shows the output with both local and global compensation. With local compensation involved, each feature layer will be compensated with gradually increasing height calculated automatically.

For the local compensation, each feature layer will be compensated with a different height since the light intensity exposed to a layer in stereolithography printing falls exponentially with the distance between that layer and the light source (Eq. (1)), according to Beer–Lambert law.

$$I(z)=alpha cdot {e}^{-beta z}$$


In general, the light absorbed by a layer is the total amount of light exposed to that layer. Thus, the total compensation C of a layer at a height Z is proportional to the received accumulated light intensity.

$$C(z)= int,I(z)dz = frac{alpha , cdot , {e}^{-beta z}}{-beta }+K$$


To enable automatically finding the compensation amount for each layer of a print, we allow users to input the desired minimum and maximum compensation values (represented as ({C}_{min }) and ({C}_{max }), respectively) and the corresponding height locations (represented as ({Z}_{min }) and ({Z}_{max })). This information is used to approximate the compensation needed for each feature layer of the print. For example, users may specify that they require a 100 μm compensation at a device height of 200 μm and a 500 μm compensation at a device height of 3500 μm.

The coefficients α and β are used to describe the aforementioned factors, and they can vary depending on the printer, printing settings, resin properties, etc. These coefficients are calculated based on the information provided by the user. Additionally, the constant K in Eq. (2) represents an offset of the compensation and should be positive. Like the coefficients, this offset can vary depending on the aforementioned factors.

To approximate the offset K, we use the information provided by the user, specifically ({C}_{min }) and ({C}_{max }), which represent the minimum and maximum compensation values. By summing these values (({C}_{min }+{C}_{max })), we can obtain an approximation of the offset. This approach enables users to achieve applicable compensation for their prints, even without knowing the exact relationship between the aforementioned factors, such as the printing technologies or printing settings.


$$frac{alpha cdot {e}^{-beta {Z}_{min}}}{-beta }+K={C}_{min}$$



$$frac{alpha cdot {e}^{-beta {Z}_{max}}}{-beta }+K={C}_{max},$$


we get

$$alpha =frac{(-{C}_{max}-K)cdot ln left(frac{{C}_{max}-K}{{C}_{min}-K}right)cdot {left(frac{{C}_{max}-K}{{C}_{min}-K}right)}^{frac{{Z}_{max}}{{Z}_{min}-{Z}_{max}}}}{{Z}_{min}-{Z}_{max}}$$



$$beta =frac{ln left(frac{{C}_{max}-K}{{C}_{min}-K}right)}{{Z}_{min}-{Z}_{max}},forfrac{{C}_{min}}{{C}_{max}}ge 0.$$


By putting K = Cmin + Cmax into Eqs. (5) and (6) we get

$$alpha =frac{{C}_{min}cdot ln left(frac{{C}_{min}}{{C}_{max}}right)cdot {left(frac{{C}_{min}}{{C}_{max}}right)}^{frac{{Z}_{max}}{{Z}_{min}-{Z}_{max}}}}{{Z}_{min}-{Z}_{max}}$$



$$beta =frac{ln left(frac{{C}_{min}}{{C}_{max}}right)}{{Z}_{min}-{Z}_{max}}.$$


And finally, putting Eqs. (7) and Eq. (8) back to Eq. (2) we get the approximation formula for the dynamic height compensation calculation, which is used in Flui3d:

$$C(z)=-{C}_{min}cdot {left(frac{{C}_{max}}{{C}_{min}}right)}^{frac{z}{{Z}_{min}-{Z}_{max}}}cdot {left(frac{{C}_{min}}{{C}_{max}}right)}^{frac{{Z}_{max}}{{Z}_{min}-{Z}_{max}}}+{C}_{min}+{C}_{max}$$


In order to achieve optimal numbers for local compensation settings (Cmin@Zmin and Cmax@Zmax) that are tailored to the specific printer model, print settings, and ambient factors (such as light source power, exposure time, resin properties, temperature, etc.), we offer a reference design model for users to acquire the appropriate settings. By printing this reference design and inspecting the resulting features, users can determine the extent of compensation required to achieve the desired level of precision and accuracy. This allows users to fine-tune their settings and achieve the best possible results with their specific setup. This reference design model and its use instructions are provided in  Supplementary Data and Supplementary Note 6.

The global compensation function offers a further enhancement by adding a blank height after each feature layer (Fig. 9). This technique effectively minimizes unintended area curing by increasing the path through which light passes. Global compensation proves especially beneficial in situations where a design comprises multiple layers and local compensation proves insufficient or when users employ low-power light source 3D printers (i.e., require more exposure time per layer), such as entry-level LCD printers.

Fig. 9: Global compensation method of Flui3d.
figure 9

A microscopic photograph from the side of a demonstrative 3D-printed microfluidic device utilizing global compensation with a slicing thickness of 50 μm.

To optimize its effectiveness, it is crucial to carefully adjust the compensation height. Setting it too large may cause the printed design to become unstable. This adjustment depends on a variety of factors previously discussed. In cases where large local compensation values lead to layer cross-over, global compensation can help mitigate the issue. Similarly, when using printers with longer exposure times per layer, global compensation can provide additional support to prevent curing in unintended areas. By incorporating extra space through global compensation, users can enhance the overall compensation process and avert layer cross-over.

The DFM helps users create print files for microfluidic designs that are optimized for the commonly used SLA manufacturing process and that can be easily and cost-effectively fabricated using 3D printing technology. These features enable users to efficiently optimize their output of designs for manufacturability, reliability, and cost and to avoid design errors and manufacturing defects.