‹ cd ~/workminiature-bioreactor.md

MINIATURE BIOREACTOR

design & build · mechanical / fluidics / controls · benchtop tissue-culture rig

Exploded CAD assembly of one bioreactor unit, showing base tube, three scaffold wells, presses, and caps

A benchtop bioreactor that holds a 3D cell scaffold and physically stretches it while fresh media flows past. It was built to culture C2C12 myoblasts, a standard mouse muscle cell line, on porous silk scaffolds, because muscle tissue differentiates further under cyclic mechanical load than it does in a static dish. Every part that touches cells unscrews, so a well can be swapped, reprinted, or rearranged into a different experiment.

What this is. This began as a university course project, and we show it as an engineering design and build piece. The biological validation, meaning culturing cells in the finished rig, fell outside the project scope and was not carried out. What was designed, built, and bench tested is the instrument itself, and that is what this page documents.
The whole system. The bioreactor frame with the actuation motor on top, the custom peristaltic pump at left, and the Arduino UNO and CNC shield electronics that stay outside the incubator.
The whole system. The bioreactor frame with the actuation motor on top, the custom peristaltic pump at left, and the Arduino UNO and CNC shield electronics that stay outside the incubator.

The brief

Seven requirements were fixed before any CAD, and they were written to constrain the design rather than to describe it. Six are mechanical and material. The seventh is software and user experience.

  • Modular. Every component removable and swappable.
  • Perfusion. Media reaches every scaffold, with no stagnant zones.
  • Media exchange. Spent media swapped for fresh, continuously or in cycles, unattended.
  • Mechanical stimulation. Repeatable linear actuation on any scaffold in the array, through a connection that is not permanent.
  • Separable. The reactor goes into the incubator, the electronics stay outside it.
  • Sterilizable. Every material survives an autoclave, ethylene oxide, or an isopropanol wipe.
  • Programmable. Retunable by someone who does not write code.

Modularity shaped every decision that followed, because it fixes the unit of design. A rig built for one experiment can be drawn as a single part. A rig that has to be rearranged between experiments must be assembled from an atomic piece that does one job and mates with the piece above it, so the design starts at the smallest component and grows outward. Mechanical stimulation later pulled against modularity, and the section on actuation explains what that cost.

Modular by design

The atomic unit is the Scaffold Well, a threaded cylinder that holds one scaffold and lifts out on its own. It has a 10 mm inner diameter, a 14 mm outer diameter, and a 2 mm wall, standing 36 mm tall: 31 mm of well plus a 5 mm threaded extrusion at the bottom that screws into the tier below. A 3 mm deep thread at the top takes a cap. Inside, a base plate 7 mm across with a 1 mm rim centers the scaffold and stops it sliding under flow.

Four lumens are cut at even spacing around the circumference so media passes through the well whatever way round it is fitted. Orientation independence is the point: the operator cannot install a well backwards and starve a sample, because there is no backwards.

The threads are the quiet result here. Rather than tapping every part by hand, the M6 threads with 1 mm pitch were printed directly, which matters because parts meant to be reprinted on demand cannot depend on a hand operation to become usable. Nominal CAD dimensions did not survive printing. Comparing the models against real prints gave a working clearance of 0.3 mm per side, found empirically, and at that value the parts thread and unthread smoothly with no backlash or loosening. The same M6 standard is used for every threaded joint in the build, so caps, wells, and presses share one spares inventory.

3D CAD render of the Scaffold Well showing threaded top and lumen cutouts
Scaffold Well · 3D
Wireframe CAD of the Scaffold Well showing the internal base plate and through-lumens
Scaffold Well · wireframe

The perfusion channel

Scaffold Wells thread into a Well Base Tube, a rectangular channel that feeds three chambers in series. The channel runs 130 mm long with a 10 mm by 10 mm section and a 5 mm bore, and the three chambers along it are 20 mm across, 24 mm tall, with 2 mm walls. A pair of 3 mm mounting holes at each end lets Base Tubes tile side by side into an array as large as the experiment needs.

Media enters a chamber, passes through the well's lumens feeding the scaffold, leaves through the opposite lumen, and moves on to the next chamber. Every internal corner is smoothed, because sharp corners generate turbulence and trap media where cells sit downstream of their own waste.

Both ends of the channel are raised by 20 mm, and that elevation is what sets the fluid level. Since all chambers connect to the same channel, the height of the inlets and outlets dictates the media depth across the entire array, so a single CAD dimension sets the fill level for every chamber at once rather than each one being tuned separately.

Standard silicone tubing of 3 mm inner and 5 mm outer diameter press-fits into the 5 mm inlets and holds without fastening. A 2 mm indentation at each entrance stops the tubing short of the inner wall, because tubing pushed in too far seals against the bore and blocks the flow it was meant to carry. A leak test on the assembled channel showed no leakage.

Three wells per tube is a deliberate number, not a packing limit. A standard cell experiment needs three samples, an empty control, an actuated sample, and a non-actuated sample, and technical duplicates go into the next Base Tube in the array. Fitting more wells per tube requires only a change to the CAD.

Top view CAD of the Well Base Tube showing the central channel and three chambers
Well Base Tube · top
Isometric wireframe CAD of the Well Base Tube showing chambers, inlets and outlets
Well Base Tube · isometric

Applying the load

Cells need linear motion, and affordable motors produce rotary motion, so the design needed a converter. Three standard mechanisms do the conversion, and they differ in the one property the experiment cared about most, which is how far the stroke can be adjusted.

MechanismStroke amplitudeWhat it costs you
CrankshaftCapped by the crankpin offset, fixed in hardwareSimple, tolerates a small motor
Scotch yokeCapped by the crankpin offset, fixed in hardwareSimple, tolerates a small motor
Lead screwSet in software, no fixed limitNeeds a stronger, precisely driven motor

The lead screw was chosen because the study depended on setting strain amplitude per condition, and a mechanism whose stroke is fixed by a machined offset cannot do that without new parts for every amplitude.

That choice cost modularity. The original intent was one small motor per module, which would have matched the modularity requirement exactly. A lead screw needs a stronger and precisely controlled motor, and one such motor per module was not economical, so every module was combined onto a single actuation platform driven by one motor. The consequence is worth stating plainly: all actuated samples in the array move together, on one waveform, and per-module strain profiles are not available in this build.

The mechanism itself is a NEMA 17 stepper turning an 8 mm lead screw. The screw carries four thread starts at 2 mm pitch, so one full revolution moves the platform 8 mm, and turning it clockwise drives the platform down. The platform is two 200 mm MakerBeam extrusions joined by a printed holder that houses the lead nut, riding on two 8 mm guide rods 150 mm long with a linear bearing at each end for stability.

Load reaches the scaffold through a Scaffold Press, a 37 mm resin rod with a 7 mm press plate at one end and an M6 thread at the other. The press plate carries the same 1 mm rim as the well's base plate, so the scaffold is held identically top and bottom. Actuated wells take a cap with a hole for the press to travel through, and non-actuated wells take a solid cap, which is what makes any well in the array switchable between conditions.

Front view. The stepper and lead screw at the top drive the actuation platform. The clear biocompatible resin wells sit in the array below, plumbed with silicone tubing.
Front view. The stepper and lead screw at the top drive the actuation platform. The clear biocompatible resin wells sit in the array below, plumbed with silicone tubing.

Keeping it fed

Media exchange runs on a peristaltic pump built in house, and the reason is the experiment design rather than cost alone. The study needed two media, standard growth and differentiation, which normally means two pumps per array. Two commercial pumps took more bench space and more budget than one motor driving two tubes, so a two-channel pump was built around a single NEMA 17.

A PETG cover routes two silicone tubes in semicircles past rollers made from ball bearings of 5 mm inner and 11 mm outer diameter. Four rollers sit evenly around each tube so that two are clamped at any moment, which is what stops media running backwards between compressions. Inlets use plain pipe fittings for quick tube changes, and outlets use 3-way valves so a sample can be drawn or the flow diverted without breaking the circuit.

An honest result. One NEMA 17 could not drive both tubes at once. A single tube pumped correctly, and adding the second doubled the friction beyond the torque the motor could deliver. The documented fix is a 48 mm NEMA 17, which differs only in length and drops into the same housing, or a DC motor.
Custom pump. One motor, two channels, ball-bearing rollers, and 3-way valves on the outlets, built in house to save cost and bench space over two off-the-shelf pumps.
Custom pump. One motor, two channels, ball-bearing rollers, and 3-way valves on the outlets, built in house to save cost and bench space over two off-the-shelf pumps.

Materials and sterility

Material choice follows a single split: what touches cells, and what does not. Parts in contact with culture and media were printed in clear biocompatible resin on a Formlabs Form 3, chosen because the optical clarity lets scaffolds and media be inspected without opening the well. Everything else was printed in PETG on a Prusa MK3, which is strong and chemically resistant enough to take ethylene oxide or isopropanol. The frame is MakerBeam, a 10 mm T-slot aluminum extrusion fastened with M3 screws, so structural parts are replaceable from stock rather than reprinted.

Separating the reactor from the electronics turned out to be a question of motor tolerance. The stepper motors are rated from -20 °C to +50 °C, so they can stay inside a 37 °C incubator alongside the reactor, while the breadboard, drivers, and microcontroller stay outside. Only wires cross the boundary.

Making the scaffolds

The scaffolds were fabricated from silk. Cocoons were cut and degummed by boiling in sodium carbonate, the fibroin was dissolved in lithium bromide, dialyzed against water, and centrifuged to a 6.86% solution. That solution was cast into a flexible printed mold, frozen at -20 °C, lyophilized overnight at -75 °C, and autoclaved. The result is porous cylinders 7 mm across and 8 mm tall that seat directly into the Scaffold Wells.

The mold was drawn to hold 100 scaffolds and had to be cut down to fit the lyophilizer, and it stayed flexible through the full freeze and autoclave cycle. One practical note was logged for next time: some scaffolds cracked coming out of the mold, so they should be wetted before demolding.

Silk scaffolds. Porous fibroin cylinders, cast and lyophilized in a printed mold, ready to seat into the wells.
Silk scaffolds. Porous fibroin cylinders, cast and lyophilized in a printed mold, ready to seat into the wells.

Running the experiment

An Arduino UNO with a CNC shield runs the rig on 84 lines of C with no external libraries. The libraries are unnecessary because the shield's A4988 drivers handle the stepping themselves, leaving the firmware to sequence moves and read buttons. Motors run at 12 V and the logic at 5 V.

Operating it needs no programming, which was the seventh requirement. A short block of named constants at the top of the file carries every parameter an experiment changes. Steps per revolution is 200 by default, and since one revolution is 8 mm of travel, that constant is how stroke amplitude gets set. Pump revolutions sets how many turns replenish the media, and cycle revolutions sets how many up and down movements make one actuation cycle. Push buttons start and stop a run, wired open by default so that pressing one completes the circuit.

No graphical interface was built, because the project ran out of time. Writing one is straightforward once the experiment parameters are settled, since the parameters are already isolated in one place.

Those controls were enough to lay out the intended study, a 2 by 2 factorial of media type, regular against differentiation, versus loading, actuated against static, with an empty control in every Base Tube.

Planned study. Two media conditions by three sample roles, empty control, actuated, and non-actuated, across the array.
Planned study. Two media conditions by three sample roles, empty control, actuated, and non-actuated, across the array.

What shipped, and what did not

The delivered instrument is a leak-tested modular perfusion bioreactor with single-motor lead screw actuation across a tiled array, a custom two-channel peristaltic pump, all cell-contact parts in biocompatible resin, the remainder in PETG on a sterilizable MakerBeam frame, and a controller retunable by someone who does not write code.

Four limitations were logged rather than smoothed over. The pump motor lacks the torque for two channels at once, with the fix documented above. The blocked threaded hole in each chamber could hold stagnant media if a well is left out, and that case was not tested. If the pump is run slowly enough, spent media from one chamber lingers in the next, so the recommendation is to renew the media in each Base Tube at least twice a day, which sits well above the every-other-day feeding a C2C12 culture normally needs. The biological validation was never run, so no claim is made here about cell outcomes in this rig.

This is the kind of instrument we build for research labs. The thing a protocol needs that no catalog sells, documented well enough to hand to the next student.

The build, in detail

Tap any image to enlarge.

Common questions

What is a perfusion bioreactor? A perfusion bioreactor pumps fresh culture media continuously past the cells instead of leaving them in a static volume that is replaced by hand. It matters for 3D scaffolds because nutrients diffuse only a short distance into a porous construct, so cells in the center starve in a static dish. In this build the media flows along a central channel and passes through lumens in each scaffold well, feeding samples in series.

Why apply mechanical stimulation to cultured cells? Many tissues develop properly only under the physical loading they experience in the body, and skeletal muscle is one of them. Cyclic stretch drives greater alignment and further differentiation of myoblasts than static culture does, which is why this rig couples a linear actuator to the scaffolds rather than only perfusing them. The connection is not permanent, so any well in the array can be run as an actuated or a static sample.

Can 3D printed threads replace tapped threads? Yes, on resin prints, provided the clearance is tuned by test rather than taken from nominal CAD dimensions. On this build the nominal M6 values did not produce working threads, and reducing the inserted diameter to leave a 0.3 mm gap per side gave smooth threading and unthreading with no backlash or loosening. Printing the threads removes a hand tapping step, which matters when parts are meant to be reprinted and replaced on demand.

Can the array be made larger? Yes. Well Base Tubes tile side by side through mounting holes at each end, and they are plumbed in series, so extending the array is a matter of adding tubes and tubing. Three wells per tube was chosen to match a control, actuated, and non-actuated sample layout, and fitting more per tube needs only a CAD change. One constraint carries over: a single motor drives every actuated sample, so all of them share one motion profile.

Need an instrument that does not exist yet? Describe the experiment and the measurement. We will tell you whether it is buildable, roughly what it should cost, and whether something off the shelf already does it. That answer is free, and honest.
Get a free consultation →

Related reading: custom bioreactor design, what it takes and what it costs · custom lab equipment · pricing and guarantees.

endothermal systems llc · home · work · field notes · pricing · © 2026