key: cord-0828347-eic3b7ky authors: Petsiuk, Aliaksei; Tanikella, Nagendra G.; Dertinger, Samantha; Pringle, Adam; Oberloier, Shane; Pearce, Joshua M. title: Partially RepRapable Automated Open Source Bag Valve Mask-based Ventilator date: 2020-08-11 journal: HardwareX DOI: 10.1016/j.ohx.2020.e00131 sha: 922b37939bfce058b99bd3b60883849a8a92f2fe doc_id: 828347 cord_uid: eic3b7ky This study describes the development of a simple and easy-to-build portable automated bag valve mask (BVM) compression system, which, during acute shortages and supply chain disruptions can serve as a temporary emergency ventilator. The resuscitation system is based on the Arduino controller with a real-time operating system installed on a largely RepRap 3-D printable parametric component-based structure. The cost of the materials for the system is under $170, which makes it affordable for replication by makers around the world. The device provides a controlled breathing mode with tidal volumes from 100 to 800 milliliters, breathing rates from 5 to 40 breaths/minute, and inspiratory-to-expiratory ratio from 1:1 to 1:4. The system is designed for reliability and scalability of measurement circuits through the use of the serial peripheral interface and has the ability to connect additional hardware due to the object-oriented algorithmic approach. Experimental results after testing on an artificial lung for peak inspiratory pressure (PIP), respiratory rate (RR), positive end-expiratory pressure (PEEP), tidal volume, proximal pressure, and lung pressure demonstrate repeatability and accuracy exceeding human capabilities in BVM-based manual ventilation. Future work is necessary to further develop and test the system to make it acceptable for deployment outside of emergencies such as with COVID-19 pandemic in clinical environments, however, the nature of the design is such that desired features are relatively easy to add with the test using protocols and parametric design files provided. Coronavirus disease 2019 (COVID-19) is increasing mortality rates by overwhelming medical infrastructure at the regional level [1] [2] [3] [4] . Mechanical ventilators, which are essential for treating both influenza and COVID-19 patients in severe acute respiratory failure [5, 6] , are in critical short supply in some locations [7] [8] [9] [10] . During pandemics intensive care units (ICUs) do not have sufficient ventilators to treat all the patients requiring them [11] [12] [13] , which forces triage and rationing [14, 15] . This is despite national stockpiles of proprietary, mass-manufactured ventilators, which are simply not numerous enough due to prohibitive costs to service society during an extreme pandemic [16] [17] [18] [19] [20] . Another approach to provide products uses the technically and economically-viable open source small-scale digital technologies and off-the-shelf components for distributed manufacturing [21, 22] . There has already been a concerted effort to apply open source hardware and 3-D printing during the COVID-19 pandemic [23] [24] [25] [26] [27] [28] [29] . In addition, challenges with supply chains during any type of pandemic can be partially offset by open source recyclebots [30] [31] [32] [33] [34] and direct recycling extrusion [35] to close the loop on material supplies with local waste converted into additive manufacturing feedstock [36] [37] [38] [39] [40] [41] . The distributed manufacturing of scientific equipment has been shown to provide custom, high-quality scientific tools for substantially lower costs than conventional proprietary products [42] [43] [44] [45] [46] . This is because a scientific tool can be developed once and then digitally replicated for approximately the cost of the materials [47] creating enormous distributed value [48] a high return on investment [49] , and the ability to focus investments for strategic national goals [50, 51] . This same open source hardware design approach [52] can be applied to medical equipment [53] [54] [55] [56] to overcome supply shortages [57] [58] [59] [60] [61] . There has already been some effort in developing low-cost ventilators in the literature [62] [63] [64] [65] [66] [67] [68] [69] [70] as well as in the maker community; however, the former failed to provide full source code and the latter (as of March 2020) was unvalidated and largely untested [71] . To both fill the current critical need for ventilators as well as provide a basis for future pandemics, this article provides the full source code for a fully-functional low-cost 3-D printable open-source pandemic ventilator and includes validation testing using an artificial lung. A) standalone automated BVM-based resuscitation system, B) testing procedure, 1) bag mounting system, 2) self-inflating bag, 3) motor setup, 4) compression mechanism (pusher), 5) Positive End Expiratory Pressure (PEEP) valve [85] , 6) feedback pressure sensors, 7) control system, 8) power supply with backup battery, 9) air mask, 10) mechanical lung, 11) airway pressure sensor The system implements two following modes: controlled mechanical ventilation (CMV) and inverse ratio ventilation (IRV). A user can control breathing rates (breaths per minute or BPM), tidal volume (V T , air volume pushed into the lungs), inspiratory/expiration time ratio (I/E ratio). All the mechanical components ( Figure 1 : components 1, 4, 7) were developed in open-source CAD systems. The use of a parametric OpenSCAD generator of 3-D printable components (junction boxes for the feedback pressure sensors (Figure 1 ) allows to fit any tubing system. A backup battery enables short-term patient mobility and safety protocols in software provide alarm signals when the monitored proximal pressure exceeds the permissible range, or the pressure sensors are disconnected. The electrical architecture is illustrated in Figure 2 . The development process of a medical device as an embedded real-time system can be divided into the main following steps: 1. System design 2. Schematic development 3. Fabrication and assembly 4. Software development 5. Testing Each of the above steps undergoes numerous iterations, starting with a concept passing the basic and detailed engineering stages, and ending with a finished product [86] [87] [88] [89] [90] [91] . This study of ventilator systems is based on fundamental works [92] [93] [94] [95] [96] [97] . In addition to the technical difficulties with the development of an embedded real-time system, there are also a significant number of details associated with the fabrication of parts that are used in contact with the patient. The developed system has three control inputs for the variables: tidal volume (V T ), breathing rate per minute (BPM), and inspiratory-to-expiratory ratio (I/E). BPM and I/E are controlled by rotary potentiometers, and BPM is controlled with a rotary encoder. Having a rotary encoder with an additional button may allow developers to upgrade the system in the future (for example, add a menu to select another mode). The self-inflating bag compression process is shown in Figure 3 . At the beginning of the operation, the pusher reaches the home position by hitting the limit switch. From this point, the tidal volume can be adjusted by the amplitude of the movement of the pusher (ΔL), and the breathing rate can be adjusted by a pusher frequency. Figure 3 . The process of compression of a self-inflating bag: A) initial homing position of the pusher, B) compression stage, 1) self-inflating bag, 2) pushing rod, 3) limit switch, and 4) stepper motor A breathing control diagram is presented in Figure 4 . According to the stepper motors datasheets [98, 99] , both the widely used NEMA-17 and NEMA-23 stepper motors have 1.8 degrees per step, which would give N = 365/1.8 ≈ 203 steps per one revolution of the shaft. With specified micro-stepping multiplier, k = 2…16, it is possible to increase the number of steps per one revolution and provide a more smooth and stable rotation of the motor shaft. The thrust of the motor depends on the motor torque and the diameter of the gear according to the following equation: F = 2T/R, where R -is the gear radius and T -is the motor torque. Therefore, by varying the motor current and the size of the gear, it was experimentally found that the herringbone gear (double helical gear) with a diameter of 15 mm will provide reasonable thrust and consistency of contacts between the gear teeth. As can be seen from Figure 4 , V T , BPM, and I/E are functions of the number of steps and the speed of the stepper motor. To provide the desired breathing parameters, the number of motor steps should be calculated as follows: where D is the gear diameter in millimeters, ΔL is the desired pusher length in millimeters, and N is the number of steps per one full revolution. At the same time, N = k • 365/1.8 steps, where k is the micro-stepping multiplier (usually k varies from 2 to 16). A greater number of steps per revolution of the motor shaft allows smooth rotation and prevents unwanted vibration of the entire apparatus. It is worth noting, however, that the use of microstepping higher k values reduces the overall torque of the motor. Thus, a balance was experimentally found between the number of motor steps and the permissible vibration of the bag support system with a micro-stepping coefficient of 4, which corresponds to ~800 steps per single revolution of the shaft. The volume of air or gas mixture provided by the self-inflating bag is largely due to the shape and size of the pusher. The experiments with three pushers with a total area of 14, 42, and 74 square centimeters ( Figure 5 ) revealed linear relationships between the volume of air supplied to the lungs and the pusher travel distance ( Figure 6 , A). The linear dependency between the pusher travel distance and provided tidal volume equals to ΔL = (83+V T )/11.2 mm. It should also be noted that air leakage [100, 101] due to the mounting design of the pressure sensors can lead to a decrease in the angle of inclination of the calibration curve ( Figure 6 , B). shown is the press-fit attachment point for the rack printed part. Figure 6 . Correspondence of tidal volume and pusher travel distance: A) pushing rod with different pushers and the whole system is without feedback pressure sensors (junction boxes dismounted), B) pushing rod with the large pusher with (*) and without junction boxes mounted Thus, the number of motor steps to push the plunger in order to provide the desired air volume can be expressed as follows: Where V T is the tidal volume in milliliters, k is the micro-stepping multiplier and D is the gear diameter in millimeters. Manipulating the BPM and IE control knobs (Figure 2 ), it is possible to set the specified breathing parameters by adjusting the time delays between successive motor steps: Where Δti is the time delays (in seconds) during the inspiratory phase of the breathing cycle, BPM is the breathing rate (breaths per minute), I/E is the inspiratory-to-expiratory ratio. The time delays for the expiratory phase will be equal to Δte = Δti•(I/E) -1 seconds. Two pressure sensors located at the edges of the air duct are used to calculate proximal airflow using the simplified Bernoulli equation (4) Where Q is the flow rate in liters per minute, Δp is the pressure difference (pressure drop) between two sensor readings in pascals, and m is the calibrated scaling factor. The BMP280 sensor measures the absolute pressure in the range of 300 to 1100 hPa. Therefore, it is necessary to calibrate the system each time the ventilator is used to determine the level of normal ambient pressure ( Figure 7 ). For these purposes, an additional sensor can also be used to isolate atmospheric pressure so that a pair of BMP280 sensing elements will allow measuring the relative proximal pressure in the airways. To suppress the noise of the signal from the pressure sensors, an exponential filter is used [105] . This smooths the curve without using significant memory resources. When a new measured value p t is provided, the exponential filter updates a smoothed observation, S t : where S t-1 is the previous output value of the filter in pascals, p t is the new measured value in pascals, and α is the smoothing constant ( ). 0 < < 1 A B Figure 7 . Proximal pressure calibration: A) absolute pressure of the laboratory environment (zero-level for proximal pressure), B) BMP280 calibration curve for proximal pressure Since the BMP80 pressure sensors are located in the junction boxes ( Figure 1 ), and not directly in the airflow path, their readings must be brought to real proximal pressure values based on the results of experiments with the mechanical lung [106] . A calibration curve coerces the sensors values to proximal airway pressure can be described by the following equation: Where P proximal -proximal pressure in cmH 2 O, P absolute -absolute BMP280 pressure in pascals. Thus, the signals from pressure sensors located at opposite ends of the airway can be interpreted as proximal pressure. Based on the above equation (6), it is possible to determine the readings of the sensors corresponding to the minimum allowable PEEP pressure and the maximum critical pressure of 40 cmH 2 O ( Figure 8 ). The control system is based on the Arduino controller and a stepper motor setup (NEMA-23 motor). The Arduino Nano board was chosen as a controller due to low relative expense while having sufficient digital and analog pins. A significant number of medical software development standards contain information and requirements regarding software design, validation, and certification [107] [108] [109] [110] [111] [112] . However, in the global pandemic, meeting all requirements can be difficult. The main guidelines for emergency ventilation systems is the use of real-time operating systems and a serial peripheral interface for connecting sensing devices [113] . The use of an open-source real-time operating system (FreeRTOS) library [114] for Arduino considerably expands the possibilities of the controller. A real-time operating system provides essential functions to software tasks, such as scheduling, dispatching, inter-task communication, and synchronization [115] . The software system architecture is shown in Figure 9 . There are three parallel tasks with equal priorities communicating with the two instances of the patient and nurse classes, which provide scalability (there may be more "patients" and "nurses", as well as threads with other functions) and possibility of transition to another hardware background since FreeRTOS supports most popular processors and microcontrollers [114]. Table 1 . To summarize the main characteristics of the ventilator can be represented as follows:  Low cost (~$20 for 3-D printed mechanical components, ~$120 for electronic components, and ~$23 for BVM and single-limb ventilator circuit). Note that this is solely the cost of materials.  Availability of components for assembly and ease of fabrication.  Providing a controlled breathing mode with the following parameters: o Tidal volume in the range from 100 to 800 mL o Breathing rate in the range from 5 to 40 BPM o Inspiratory-to-expiratory ratio in the range from 1:1 to 1:4  Software reliability through the use of the real-time operating system  Reliability and scalability of measurement circuits through the use of the serial peripheral interface (SPI)  Ability to connect additional hardware due to the object-oriented algorithmic approach Both the FreeCAD and OpenSCAD files were designed to be parametric to allow future developers to replicate this system for different core components (e.g. different sizes of bags). 1. "Bag support" provides support for the bag to keep it stabilized in the transverse and longitudinal directions. Major modifications may involve changing the entire geometry to fit a different self-inflating bag. Minor modifications may include changes to the attachment points to the motor mount part or additional support for the bag. 2. "Motor mount" provides a mounting point and support for NEMA-23, it also provides a sliding path for the rack. Major modifications may involve changing the geometry for use with a different motor. Minor modifications may involve changing the attachment points to the bag support, changes to the sliders. 3. "Rack" and "Pinion" use the motor power to compress the bag. Both the FreeCAD source files were created with the "FCGear" add-on that generates gear profiles. Steps are named for ease of use. Major modifications involve changes to the gear (gear specifications are accessible within the file) which requires "FCGear" workbench. Minor modification involves changes to the geometry of the hole for the motor shaft, changes to the nut-trap, as well as tolerance adjustments. 4. "Rod head pusher" is attached to the rack and serves both to compress the bag and to close the limit switch during the homing process. 5. "Junction box generator" is the master file for rendering the junction box and plate in order to create a press-fit between two tubes with a sensor epoxied inside. 6. "Pressure sensor junction box" and "Pressure sensor junction box plate" are the current precise geometries for the ventilator design described in this work. Import into a slicer to use. 7. "Control box panel" and "Breadboard box base" are the parts of the control system housing with user input. 8. "Schematic" is a control system wiring diagram that can be implemented using both a breadboard and a printed circuit board. 9. "Arduino firmware" is a program that reads user input and implements motor control in accordance with user-defined breathing parameters. The complete Bill of Materials is available in the OSF repository (https://osf.io/ugt3e/). The installation of the device consists of three stages: 1) bag holder assembly, 2) breathing system assembly, and 3) control system assembly. To print all components, a RepRap-class 3-D printer with a minimum printing area of 230x230x100mm is needed. Fabrication of all parts takes from 25 to 34 hours, depending on print settings. Printing material can be polylactic acid (PLA) or glycol modified polyethylene terephthalate (PETG). For junction boxes with pressure sensors, thermoplastic polyurethane (TPU, NinjaFlex in this work) material was chosen to minimize air leakage. Alter the X-Y dimensions and pusher grip length parameters in the design using the variable list as desired.  If there is no need to alter the design download the Rod_head_pusher.stl from https://osf.io/fjdwz/ and import into Cura.  Download the material file from https://osf.io/fjdwz/ and import into Cura and set the appropriate print parameters individually or by importing the associated material file from https://osf.io/fjdwz/. 50 minutes are needed to print the 10 grams out of PLA at 100% infill, at 30mm/s as determined by Cura.  Once printed as seen in Figure 12 , slot the pusher onto the rod as it is installed in the ventilator. The pusher should press-fit tightly onto the rod. If it is necessary to alter the design Download the Junction_box_generator.scad from https://osf.io/fjdwz/ and download OpenSCAD from https://www.openscad.org/ 4. Alter the input and output parameters in the design using the variable list as desired to fit the tubing sizes available 5. If there is no need to alter the design download the Pressure_sensor_junction_box_plate.stl and Pressure_sensor_junction_box.stl from https://osf.io/fjdwz/ and import into Cura or other open source slicer. 6. Download the material file from https://osf.io/fjdwz/ and import into Cura and set the appropriate print parameters individually or by importing the associated material file from https://osf.io/fjdwz/. 5 hours and 36 minutes are needed to print the 39 grams out of Ninjaflex at 50% infill, at 30mm/s as determined by Cura ( Figure 13 ). 7. Using epoxy mount a 6-prong attachment for connection to the pressure sensor as seen in Figure 13 , then install the pressure sensor. Figure 15 shows the completed printed junction box assembly ready for use. 9. Print and assemble the case for the control system according to Figure 18 . Figure 19 ) and build a breadboard ( Figure 20, A) . Note that the fuses in the schematic cannot be installed into the breadboard and must be omitted. Additionally, there are some sets of redundant or extra connections that are not needed for this specific implementation. Install the breadboard into the case (Figure 20 , B). A B Figure 20 . Breadboard assembly: A) breadboard with the components, B) breadboard installed inside the case, 1) breadboard, 2) Arduino Nano, 3) power supply connection, 4) LCD display connection via I 2 C bus, 5) alarm buzzer, 6) pressure sensors connection via the serial peripheral interface (SPI), 7) stepper motor control, and 8) stepper motor coils The complete system is then assembled as shown in Figure 21 . 10. Install the firmware by uploading the "arduino_firmware.ino" file to the Arduino Nano controller via Arduino IDE (https://www.arduino.cc/en/main/software). Using the control knobs on the top panel ( Figure 22 , component 1), a user must set the desired breathing mode and connect the patient to the mask. The LCD (Figure 22 , components 3 and 4) displays the input parameters (V T , BPM, and I/E) and feedback (proximal airway pressure and estimated airflow). LEDs 6 and 7 ( Figure 22 ) reflect the motor operation mode. LED 5 signals an alarm when the proximal airway pressure exceeds the permissible range. When using the device, there may be a danger of electric shock. Performed incorrectly, BVMbased ventilation can accelerate hypoxia and aggravate airway obstruction [116] . This can result in serious injury or death [117] [118] [119] [120] [121] [122] [123] [124] [125] [126] . According to the international "Medical Device Software" standard IEC 62304 [127, 128] , ventilators are class C medical equipment that can lead to patient death. The mechanical design was experimentally tested for consistency, accuracy, and reliability using a Michigan Instruments Lung Simulator [106] as shown in Figure 23 . [129] with target values. These variables included, peak inspiratory pressure (PIP), respiratory rate (RR), positive end-expiratory pressure (PEEP), I:E ratio, and tidal volume. A sample spreadsheet used for tests is illustrated on Figure 24 . The spreadsheets are included in the OSF repository. Each experimental test was conducted at a set tidal volume (starting from 100, increasing to 800 at an interval of 100), a set respiratory rate (starting at 5 BPM, increasing to 15 at an interval of 5), and a set I:E ratio (1:2). The airway resistance was kept at a constant Rp5 [106] with a compliance of 0.05 to simulate a healthy adult lung. The PEEP valve was not touched to determine if it was consistent for all tests. The values for every measurement, excluding the flow, oxygen concentration, and FiO 2 percentage, were recorded through the PneuView3 (Figure 25 ) by taking a screenshot of the software screen once it became constant. While waiting for the data to become constant, the maximum values for tidal volume, proximal pressure, and lung pressure were recorded in real time. Due to the data being recorded in real time, the values fluctuated as the tests went on. Statistical analysis was completed by calculating the standard error between each test using the built in STDEV.P function in Excel. Since the tests were run for three trials (N=3) to determine repeatability, the standard error (SE) was found by the equation (7). This was completed for the most important values such as PIP, PEEP, tidal volume, proximal pressure, and lung pressure. = Where σ is the standard deviation of the parameter distribution and N is the number of observations. A few changes were made between trials to gain more accurate data. This included attaching the rack pusher to the pinion, securing the valve bag with rubber bands, and switching out the gear used to push the rack forward. However, the data remained slightly inaccurate after the modifications. Future work should focus on designing a more stable mechanical set-up that will not need to be adjusted after a few hours. Another metric that was analyzed by this protocol was to determine if adding a junction box was going to cause failures within the system, or if there was a specific location that the box should not be installed. The oxygen was not measured due to the ventilator using room air, thus, assuming that the O 2 concentration and FiO 2 percent were up to standards, it was also assumed that the hospital themselves would be able to observe these values using their technology and resources. There was a total of four tests that were completed using the previously mentioned protocols. These included tests where there was no junction box attached to the ventilator connection tube, with a junction box at each end of the tube separately, and finally with a junction box at both ends of the tube ( Figure 26 ). The wires connected to the pressure sensors were not used during the testing process. These were also completed a total of three time (N = 3). Both the green and blue boxes were epoxied between the pressure sensor and the lid. The meaningful difference being, the blue box did not contain super glue to hold the pressure sensor to the ports on the underside of the lid, whereas the green box did. After completing these tests, it was found that adding a junction box could cause significant changes in the data if the box was not assembled correctly. It was also seen that at low tidal volumes the lung was unable to calculate the majority of values, thus half the data could not be collected. In some instances the lung struggled to maintain consistent data causing values to be estimated. However, the main significant difference for each test, and trial, was the tidal volume. For the majority of tests, the tidal volume recorded was different than the volume manually set on the user interface. The standard deviations were also incredibly unsafe with the majority being over 60 mL for all three trials. A representative data set from trial 1 was created to show the similarities and differences between each test condition ( Figure 27) . The difference in tidal volume may simple be due to the design of the valve bag, undetected motor slippage, or the mechanical set-up of the ventilator. It can also be assumed that it was from the addition of junction boxes. In regard to having two boxes, the proximal and lung pressures were also not reliable. By looking, however, at the comparison between the single junction box tests, there was little to no standard deviation. Future work will delve into how to make the junction boxes more reliable, as well as how to maintain tidal volume. Another investigation was based off the respiratory rate itself. It can be seen that the standard deviations between tests at 15 BPM are slightly lower than those of the 5 BPM test. This makes sense since there was a higher sample rate for calculations, and less time between breaths to let air escape through any leaks. The 10 BPM data could be a considered an outlier because the majority of values are above both the 5 and 15 BPM tests. This could have been caused by a shift in the valve bag, a slip of the motor, or inaccurate data gathered from the lung itself. The mechanical issues associated with this design should be addressed in future work to confidently confirm that the ventilator is consistent, accurate, and reliable. The standard error results ( Figure 28 ) indicate, notably, significant difference between the means of the targeted tidal volumes. A B C D Figure 28 . Representative standard error between each test for each position of junction box at a respiratory rate of 5 BPM: A) no junction boxes attached, B) junction box at lung end, C) junction box at ventilator end, D) junction box at both ends. Legend shows the tidal volumes that were input by the user This tidal volume was not what was manually input by the user, but the volume that was outputted by the PneuView software. It can be seen that for every tidal volume, and trial, the output TV experienced a high standard error. This is especially true with the addition of two junction boxes where the highest value was at a standard error of about 35 cm H 2 O, almost 20 cm H 2 O greater than the control trial. The PIP and PEEP values also showed inconsistency between trials however they were not as severe as the tidal volume values. The pressure metrics were relatively constant for each trial, with the exception of a few outliers. These outliers can be seen in the control trial at an input tidal volume of 200 cm H 2 O. The open source ventilator here had alarms for 1) low pressure, 2) high pressure and 3) wire disconnect. Future work could consider adding oxygen concentration alarms, oxygen tube disconnection alarms, battery backup alarms and a mechanical failure alarm. The low/high pressure alarm was tested by manually squeezing, and releasing, the valve bag so that the pressure sensors detected pressures above 40 cm H 2 O, and below 5 cm H 2 O. The wire disconnection alarm was tested by manually unplugging the wires that were connected to the pressure sensors themselves. The ventilator was then assessed on if it was able to pass the key ventilation specifications developed by the E-Vent Key Ventilation Specifications (v 27 March 2020) [74] . The first three tests were completed by adjusting the respiratory rate, tidal volume, and I:E ratio using the potentiometers installed on the circuit board from the minimum value to the maximum. The proximal pressure was limited by programming the pressure alarms to go off above 40 cm H 2 O. A plateau pressure limited to 30 cm H2O can be added by introducing an adjustable pause after the end of the inspiratory phase. The PEEP values were confirmed by adjusting the PEEP valve connected to the exhale port of the valve bag. However, since the mechanical spring underlying the PEEP valve operation is a very sensitive part, even slight valve adjustment can lead to deviations of positive end expiratory pressure up to 4 cmH 2 O. The PEEP values depend on the tidal volume and respiratory rate. Thus, the PEEP could be stationary at one spot, but be different for a respiratory rate of 5 BPM than for a respiratory rate of 10 BPM. It should also be noted that various materials and printing parameters can lead to tolerance deviations, which makes the calibration of a mechanical PEEP valve a nontrivial task. HEPA filters can be added in the future to determine the effect that a filter will have on the data. The e-Vent minimum requirements are met as shown in Table 2 . 4. Creating consistent data graphs for flow, pressure, and volume. 5. Motors are able to quickly adjust to changes in tidal volume, respiratory rate, and I:E ratio. 6. Rack pusher increases total tidal volume and pressure that can be achieved. 7. All parts are 3-D printable on any RepRap-class printer excluding the electronics. 8. Parts can be easily changed in case of a failure. 9. Parts can be cleaned and sanitized. The limitations of the final ventilator design include: 1. Incorporating the possibility of self-inflating bag displacement, as well as the accuracy of the pusher rod travel distance calibration, the tidal volume may differ from the set value within the standard error, which is approximately 35 ml. 2. During the tests, the NEMA-23 stepper motor was operated with the maximum current in the windings to cover the working range of the tidal volume and respiratory rate. These conditions lead to the excess heat buildup in the motor and the need for heat dissipation after several hours of continuous operation. Thus, to ensure ventilation modes with a tidal volume of more than 500 ml and a respiratory rate of more than 15 breaths per minute, it is necessary to use a motor cooling system in the form of a heat sink and/or active airflow. 3. It is recommended that spring washers be used in the motor mounting system to prevent possible bolt loosening due to motor vibrations. 4. During compression, the self-inflating bag may shift and rotate in the bag support, which will lead to a deviation of the set ventilation parameters. An elastic band is used as a fixing component, however, in the future, it is necessary to redesign the system to make bag movement physically impossible. 5. Valve bag is limited to the amount of airway pressure that can be achieved in a cycle. 6. Valve bag could be cause of shifting, and inconsistent, tidal volumes between tests. 7. Ventilator has to be taped down to a stable surface (i.e. piece of wood or clamp) to avoid vibrations that cause movement. 8. In the process of bag compression, there is a possibility of the pinion gear steps slippage, both due to insufficient motor torque and due to the fastening of the pinion to the motor shaft. In the future, this problem will need to be solved as follows: a. Add an extra screw securing the pinion to the motor shaft b. Provide software protection against slippage by returning the pushing rod to its "home" position (hitting the limit switch) every N number of steps. c. Implement an alarm signal in the event of the motor steps skipping (unexpected closure of the limit switch). A large pusher can mechanically separate from the pushing rod due to the force exerted by the self-inflating bag at high tidal volumes. This problem can be solved by using a metal screw to secure the pusher. 10. It is hard to maintain a positive end-expiratory pressure control due to the difficulty of calibrating the PEEP valve. In the future, it is necessary to implement a software calibration procedure of the PEEP valve or to use a ready-made calibrated industrial design. 11. Junction boxes can cause leaks if not sealed correctly, reducing values drastically for low breathing rates. In the future, the developed device can be improved by including the following modifications:  Create an assistant mode based on feedback from the pressure sensors  Add alarms such as "Power disconnect", "Gear slippage", and "Critical PEEP"  Replace the breadboard with a printed circuit board (PCB) (Figure 29 ), which is provided in the OSF repository. The implementation of a PCB will reduce the cost of the system, as the board will cost $2.37USD per unit. The PCB replaces the $7.90USD breadboard, while adding robustness, clear labeling and a more compact design.  Develop more efficient support for self-inflating bags  Improve PEEP valve performance or replace it with a ready-made calibrated industrial part  Add HEPA filter  Add a mechanical pressure relief valve as the default option  Add cooling system for the motor  Work towards a more completely distributed-manufacturable device (e.g. replace all the current purchased components for those that can be manufactured on site from feedstock).  Conduct longevity validation to ensure long-term reliability for multiple patients and determine the lifetime of the device  Add FiO 2 and O 2 sensors  Conduct medical validation with a clinician specialist to ensure the device is clinician friendly  Complete sterilization and testing to ensure that the device can be cleaned using conventional methods and chemicals. The chemical compatibility of commercial 3-D printing materials is well known [84] and this provides several chemical sterilization pathways that would need to be tested. Finally, it should be noted that this device was designed for distributed manufacturing, which is currently discouraged by the nature of some regulations (e.g. the FDA certifies a device and a manufacturer as one). This device is not yet approved for clinical use. Future work is needed to develop integrated testing facilities for the open source ventilator to enable rapid manufacturer certification as well as full regulatory approval of the device. This will involve meeting medical device standards such as ISO 80601-2-12:2020 -Medical electrical equipment, ISO 5367:2014 -Anaesthetic and respiratory equipment, and IEC 62304:2006 -Medical device software. The comparative characteristics of modern ventilators under development [113, 130] , as well as the medical recommendations of experienced anesthesiologists [131] , allow determining the main advantages and disadvantages of the developed system. Ventilators created by developers around the world can be divided into two main groups: 1) ventilators based on self-inflating bags [132-139], and 2) ventilators based on compressors and pumps [140] [141] [142] [143] . The main drawback of most existing projects is that the main stages of the design process, such as calculating of the required motor power, developing a mechanical compression system, feedback signal processing algorithms (pressure, temperature, flow, etc.), developing a cooling system based on temperature parameters of motors, are not well documented. Ventilators based on pumps often have advanced functionality that allows preparing gas mixtures, moisturizing the circulated atmosphere, and providing an autonomous assistance mode. The main disadvantage of such systems is the complexity of manufacturing, expensive and sometimes inaccessible components, as well as the difficulty in configuring and calibrating, which requires considerable expertise and experience from the user. BVM-based ventilators are easy to replicate and consist of low-cost, readily available components. The advantage of these systems is the ability to release a clinical specialist for a certain period of time to work with other patients. Such an automated apparatus significantly surpasses manual compression in accuracy and stability. Some of the considered BVM-based models, however, have a complex design with expensive components (personal computer, programmable logic controller, etc.) that may demand complex software algorithms. Many of these projects also did not put enough stress on testing. In order to compare the development of open source ventilators, a five-point validation system has been developed for all types of ventilators, based on criteria such as openness, buildability, community support, functionality, reliability, COVID-19 suitability, clinician amiability [144] . Based on applying this metric the following can be concluded about the developed system described in this study:  Fully open source and well-documented  Easily reproducible  Has been tested for pressure and volume limits with respiratory rate and tidal volume control  Has critical emergency alarms  Consists of standard components and connection blocks Although the developed ventilation system is inferior to certified medical ventilators in the number of available modes, the open source device is far less costly and is able to be deployed by means of distributed manufacturing. In addition, the open source ventilator described and tested here surpasses the capabilities of manual BVM-based ventilation in the accuracy of reproducing predetermined breathing modes, as well as in the stability of the repetition of respiratory cycles. Future work is necessary to further develop the system tested in this work for acceptable deployment in clinical environments, however, the nature of the design is such that desired features are relatively easy to add and test using protocols and parametric design files provided by this study. None. Critical preparedness, readiness and response actions for COVID-19: interim guidance COVID-19: too little, too late Q&A: The novel coronavirus outbreak causing COVID-19 Hospitals could be overwhelmed with patients and run out of beds and ventilators as the coronavirus pushes the US healthcare system to its limits Stockpiling ventilators for influenza pandemics Preparing for the Most Critically Ill Patients With COVID-19: The Potential Role of Extracorporeal Membrane Oxygenation Mechanical ventilators in US acute care hospitals. Disaster medicine and public health preparedness Italy rush to buy life-saving ventilators as manufacturers warn of shortages As The Pandemic Spreads, Will There Be Enough Ventilators? COVID-19: Ventilators are in short supply, but so are medications for ventilator patients Healthcare Finance News Potential intensive care unit ventilator demand/capacity mismatch due to novel swine-origin H1N1 in Canada Modelling the impact of an influenza A/H1N1 pandemic on critical care demand from early pathogenicity data: the case for sentinel reporting Potential pediatric intensive care unit demand/capacity mismatch due to novel pH1N1 in Canada Triage of mechanical ventilation for pediatric patients during a pandemic. Disaster medicine and public health preparedness Would triage predictors perform better than first-come, first-served in pandemic ventilator allocation? Strategic national stockpile: overview and ventilator assets Estimates of the demand for mechanical ventilation in the United States during an influenza pandemic Ventilator blues: Infectious disease expert Tom Inglesby on the next major pandemic We'll take them all': Demand for ventilators spikes as coronavirus looms Ventilators for coronavirus patients are in short supply. How scientists might pivot Life-cycle economic analysis of distributed manufacturing with opensource 3-D printers Distributed manufacturing: scope, challenges and opportunities To recover faster from Covid-19, open up: Managerial implications from an open innovation perspective. Industrial Marketing Management Emergency open-source three-dimensional printable ventilator circuit splitter and flow regulator during the COVID-19 pandemic 3D printing beyond dentistry during COVID 19 epidemic: A technical note for producing connectors to breathing devices 3D Printing in COVID-19: Productivity Estimation of the Most Promising Open Source Solutions in Emergency Situations Distributed Manufacturing of Open Source Medical Hardware for Pandemics Leveraging open hardware to alleviate the burden of COVID-19 on global health systems 3D Printing Role in Filling the Critical Gap in the Medical Supply Chain during COVID-19 Pandemic Distributed recycling of waste polymer into RepRap feedstock Polymer Recycling and Additive Manufacturing in an Open Source context: Optimization of processes and methods Polymer recycling in an open-source additive manufacturing context: Mechanical issues EcoPrinting: investigating the use of 100% recycled acrylonitrile butadiene styrene (ABS) for additive manufacturing EcoPrinting: Investigation of Solar Powered Plastic Recycling and Additive Manufacturing for Enhanced Waste Management and Sustainable Manufacturing Fused particle fabrication 3-D printing: Recycled materials' optimization and mechanical properties Investigation of closed-loop manufacturing with acrylonitrile butadiene styrene over multiple generations using additive manufacturing Closed loop supply chain network for local and distributed plastic recycling for 3D printing: a MILPbased optimization approach. Resources, Conservation and Recycling Technical pathways for distributed recycling of polymer composites for distributed manufacturing: Windshield wiper blades. Resources, Conservation and Recycling Polymer recycling codes for distributed manufacturing with 3-D printers. Resources, Conservation and Recycling 3D-Printing Based Distributed Plastic Recycling: A Conceptual Model for Closed-Loop Supply Chain Design Tightening the loop on the circular economy: Coupled distributed recycling and manufacturing with recyclebot and RepRap 3-D printing. Resources, Conservation and Recycling Open-source hardware is a low-cost alternative for scientific instrumentation and research. Modern instrumentation Building research equipment with free, open-source hardware Open-source lab: how to build your own hardware and reduce research costs Haves and have nots must find a better way: The case for open scientific hardware Upon the shoulders of giants: open-source hardware and software in analytical chemistry 3D printing in the laboratory: Maximize time and funds with customized and open-source labware Quantifying the value of open source hardware development Return on investment for open source scientific hardware development Towards national policy for open source hardware research: The case of Finland Impacts of open source hardware in science and engineering. The Bridge General design procedure for free and open-source hardware for scientific equipment Medical applications for 3D printing: current and projected uses Open-source hardware for medical devices 3-D printing open-source click-MUAC bands for identification of malnutrition Maximizing Returns for Public Funding of Medical Research with Opensource Hardware Three dimensional printing-a key tool for the humanitarian logistician 3D printing for disaster preparedness: Making life-saving supplies on-site, on-demand, on-time 3D printing humanitarian supplies in the field Development of a resilient 3-D printer for humanitarian crisis response Paper 3D Printing to Supplement Rural Healthcare Supplies-What Do Healthcare Facilities Want Development of field portable ventilator systems for domestic and military emergency medical response A new compact and low-cost respirator concept for one way usage Safety and applicability of a pre-stage public access ventilator for trained laypersons: a proof of principle study Electric Blower Based Portable Emergency Ventilator Prototyping of Artificial Respiration Machine Using AMBU Bag Compression Design and prototyping of a low-cost portable mechanical ventilator Design and prototyping of a low-cost portable mechanical ventilator (Doctoral dissertation A low oxygen consumption pneumatic ventilator for emergency construction during a respiratory failure pandemic Design and calibration of a high-frequency oscillatory ventilator A review of open source ventilators for COVID-19 and future pandemics Medical electrical equipment -Part 2-12: Particular requirements for basic safety and essential performance of critical care ventilators Medicines & Healthcare Products Regulatory Agency (MHRA). 2020. Rapidly Manufactured Ventilator System (RMVS) Document RMVS001 -Specification Issued by MHRA v 3 Key Ventilation Specifications Getting started with Arduino: the open source electronics prototyping platform Arduino: A low-cost multipurpose lab equipment. Behavior research methods Belt-driven open source circuit mill using low-cost 3-D printer components Multi-material additive and subtractive prosumer digital fabrication with a free and open-source convertible delta RepRap 3-D printer A Build-Your-Own Three Axis CNC PCB Milling Machine RepRap-the replicating rapid prototyper RepRap: the replicating rapid prototyper: maximizing customizability by breeding the means of production 3D printing and humanity's first imperfect replicator. 3D printing and additive manufacturing 3D printed PLA Army-Navy retractors when used as linear retractors yield clinically acceptable tolerances. 3D printing in medicine Chemical compatibility of fused filament fabricationbased 3-D printed components with solutions commonly used in semiconductor wet processing Making Embedded Systems: Design Patterns For Great Software Handbook of Human Factors in Medical Device Design Handbook of Human Factors and Ergonomics Medical Devices and Systems Handbook on Advanced Design and Manufacturing Technologies for Biomedical Devices Medical Device Design: Innovation from Concept to Market Basics of Mechanical Ventilation Essentials of Mechanical Ventilation. McGraw-Hill Education/Medical Fundamentals of Mechanical Ventilation: A Short Course on the Theory and Application of Mechanical Ventilators Interpretation of ventilator curves in patients with acute respiratory failure ICU Physiology in 1000 Words, A series of articles Airway Pressure Release Ventilation: What Do We Know? Respiratory Care NEMA 17 Stepper motor NEMA-23 Stepper motor A Bench Study of the Effects of Leak on Ventilator Performance During Noninvasive Ventilation, Respiratory Care Pediatric Aerosol Therapy. Respiratory Care Measuring Flow in Liquids with Pressure Transducers NIST/SEMATECH e-Handbook of Statistical Methods Michigan Instruments: Adult Lung Simulators Software in Medical Devices: Regulations, Guidance, and Standards (presentation) General Principles of Software Validation; Final Guidance for Industry and FDA Staff. U.S. Department Of Health and Human Services, Food and Drug Administration, Center for Devices and Radiological Health Developing Medical Device Software to be compliant with IEC 62304-Amendment A new approach to verifying and validating medical device development FreeRTOS: Real-time operating system for microcontrollers Real-Time Systems Design and Analysis: Tools for the Practitioner The Dos and Don'ts of Bag-Valve Mask Ventilation Mechanisms of ventilatorinduced lung injury Ventilator-induced lung injury: lessons from experimental studies. American journal of respiratory and critical care medicine Ventilator-induced lung injury Ventilator-induced lung injury Invited review: mechanisms of ventilator-induced lung injury: a perspective Ventilator-induced lung injury: from the bench to the bedside Ventilator-induced lung injury: the anatomical and physiological framework Tidal volume reduction for prevention of ventilator-induced lung injury in acute respiratory distress syndrome Physical and biological triggers of ventilator-induced lung injury and its prevention Developing Medical Device Software to be compliant with IEC 62304-Amendment Michigan Instruments: PNEUVIEW® SOFTWARE Global Ventilator Projects A brief for engineers, by a doctor, on hacking a ventilator for surge capacity in Covid19 patients A low oxygen consumption pneumatic ventilator for emergency construction during a respiratory failure pandemic Ad Hoc ventilator Low-cost, easy-to-build non-invasive pressure support ventilator for under-resourced regions: open source hardware description, performance and feasibility testing The authors would like to thank helpful contributions from Mukaram Shahid.This research was supported by the Witte Endowment, Aleph Objects, and Michigan Instruments. The Ventilator Rex (V-Rex ☒ 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.☐The authors declare the following financial interests/personal relationships which may be considered as potential competing interests: