Team:CCA-San Diego/Applied Design

Applied Design

For the bioreactor, it is made up of an acrylic tube with 3D printed caps on the side. We use an Arduino connected to a breadboard in order to control most of the electronics. We have a simple Arduino sketch that runs on an Arduino Uno, with an Adafruit v2.3 motor shield in order to use the stepper motor to agitate the fluid, and the breadboard to be able to access the analog inputs. We are using a NEMA 17, 12v stepper motor, so we are powering both the Arduino and motor shield with a standard barrel jack 12v DC power supply that plugs into a standard outlet. For the electronics, they will be wired to a breadboard which uses the 5v power from the Arduino and the analog inputs to be able to read the data.

For controlling the speed of the stepper motor and reading in outputs from the sensors, the bioreactor needs to be connected through USB to a computer running the Arduino sketch. This allows the controller to customize what the readout is on the serial monitor, but this may be changed later to use a display instead. Through the serial monitor the Arduino will also take in inputs for the speed, so the rpm of the stepper motor and specific sensors to display can be configured. Currently, we can measure the temperature of the bioreactor and control the rpm of the agitating stepper motor.

We are currently still waiting for the resistive heating element and grove O2 sensor to be able to control the temperature of the bioreactor and measure oxygen concentration, but once it arrives we will be able to put it all together. The resistive heating element will run off of a 24v power supply that can be attached to a standard outlet, and be controlled by a Mosfet that the Arduino can send commands through. When the parts come, the bioreactor will have a stepper motor, oxygen sensor, temperature sensor, and a resistive heating element, and will be waterproofed so it can be used for any purpose. The sensors, motor, and Arduino supplies can all be bought online from Amazon and eBay, and the rest is 3D printed. We have designed in such a way to make it easily made and changed through including interchangeable parts. The point of the bioreactor is to one contain the engineered bacteria and also modulate between the aerobic and anaerobic conditions of our reactions.

Design philosophy


All of the systems are designed to be removable and serviceable. On the upper cap, we decided to use a plug system where all of the sensors and modules we needed could be integrated into a common design and then “plugged” into openings on the bioreactor’s lid. This would allow us to swap out hardware as the device develops and parts inevitably get replaced with newer iterations that supercede the old.
Should any part be critically damaged, perhaps during transport, or if any part of the reactor is to be upgraded, the modular design allows for this to be carried out with ease.


All of the printed parts on this bioreactor are designed to be printed out on a 3D printer with a 120x120x120mm volume of printable space. This is typically one of the smallest “build box” sizes for 3D printers, with printers like this costing around $175-$250. Additionally, a standard 1.75mm diameter 1kg spool of PLA or ABS filament costs around $20 dollars from most retailers — this makes the main parts for the bioreactor extremely inexpensive to manufacture for those without massive budgets, even if you have to end up buying your own printer to make it. This was a significant step towards making our reactor easy for others to replicate and enhance on their own.
When we were sifting through electronics to use in the bioreactor, we settled on Arduino, a popular type of electronics for hobbyists and hackers. Arduino is relatively inexpensive, and the fact that it is open source makes it easy for others to take what we start with and add on their own thoughts and revisions, ultimately improving the final product. Additionally, Arduino is used by a massive portion of electronics/coding hobbyists, and the programming language used in the Arduino Development Environment (IDE), is essentially written in Java. These facts mean that most coders will be able to easily modify and make additions to the code which we have developed so far.