You are on page 1of 6

Specifications for a simple open source mechanical

ventilator
Julian Botta, Johns Hopkins Emergency Medicine Resident PGY-3
Twitter: @julianbotta

This is a living document intended to give non-clinicians/non-respiratory therapists an idea of


key ventilator features and one proposed simplified design.
I’d like to thank those who have helped me improve this document.

IMPORTANT WARNING: The content discussed in this document is for the design of a
ventilator to be used exclusively by trained medical professionals. Attempting to use a
ventilator or any similar device without medical supervision can result in death or
permanent disability.

Recommended by user Solvaip 3/21:


LINK: Rapidly manufactured ventilator system specification
“A ventilator with lower specifications than this is likely to provide no clinical benefit and might
lead to increased harm, which would be unacceptable for clinicians and would, therefore, not
gain regulatory approval.”

Basic Concepts of design:


Pulmonary ventilation is the exchange of air between the lungs and the ambient surroundings.
Inspiration occurs when the diaphragm and intercostal muscles contract to expand the thoracic
cavity - creating negative gauge pressure that causes ambient air to enter the lungs. Expiration
occurs when the diaphragm relaxes and tissue elasticity causes the thoracic cavity to contract
and expel air. Mechanical ventilation assists natural respiration by delivering air to the lungs and
controlling its release through an endotracheal tube that is placed through the vocal cords into
the trachea.

Mechanical ventilation carries certain risks, which should be considered in the design of
any machine: pneumothorax or alveolar damage can arise from overpressure. There is
also risk of developing ventilator-associated pneumonia, so care must be taken to keep
the ventilator circuit clean. Prolonged assistance with a mechanical ventilator causes
atrophy of diaphragm function, so patients must sometimes be weaned from the
ventilator by reducing its level of assistance to the patient.

The rest breathing rate in adults is 12 to about 20 cycles per minute. The total lung capacity of
an adult male is about 6 liters but the tidal volume (exchange in each breathing cycle) is
typically only about 0.5 liter, however this varies based on lung size (which correlates to Ideal
Bodyweight, IBW, calculated based on height).
In Acute Respiratory Distress Syndrome (ARDS), many areas of the lung are collapsed and
much harder to stretch (referred to as reduced lung compliance). This means the effective size
of the lung is much smaller and attempting to give an average breath exposes the healthy
portions of the lung to much higher pressures. High pressures in the lungs in turn cause
barotrauma, which worsens ARDS. It is therefore ​critical​ in ARDS to measure and control
airway pressures. Below is a diagram explaining different airway pressures:

The resistive pressure is an indicator of the resistance or the air passages between the
pressure sensor in the ventilator and the alveoli (microscopic air sacs that make up the lungs),
while the plateau pressure is an indicator of the pressure at the alveoli. In ARDS, resistive
pressure is typically low, while plateau pressures tend to be high and must be carefully
monitored, with adjustments to settings to reduce them.

Hardware:
Connection to endotracheal tube: 15mm inner diameter universal connector (ideally slightly
conical, slightly wider at the opening to allow for an easy friction-fit while being smooth to allow
easy removal, ~15-20mm long)

Ventilator linkage: short-length corrugated tubing (easy flexibility but should not expand or
collapse with internal pressures -100 to +100cmH2O (+/-1.42 PSI), ~50cm, 15mm outer
diameter universal (cylindrical, 15-20mm long). Because this design does not use separate
channels for inhalation and exhalation, the tubing should have minimal volume so as not to
contribute to dead space, while being wide enough to avoid adding significant flow resistance
(at least 15mm internal diameter).

In-line pressure sensor: a low-cost disposable pressure sensor capable of sensing -100 to +100
cmH2O, with a sampling rate of at least 10 times/second, ideally 100 times/second. The sensor
should be shielded from moisture that condenses in the tubing. The portion that will be exposed
to the patient’s exhalations will have to be disposable or easily decontaminated (if a thin, flexible
diaphragm could be used to conduct pressure accurately, this may lower the cost).

In-line flow sensor: low-cost disposable flow sensor capable of sensing flows 0 to 3L/min, with a
sampling rate of at least 10 times/second, ideally 100 times/second. Will be used to calculate
volume delivered and detect patients taking a spontaneous breath.

Exhalation blocker: allows inhalation freely, but can be used to block exhalation temporarily for
an inspiratory hold (breath hold) maneuver (see below). Can be accomplished either with a
solenoid-actuated one-way valve (must default to unblocked during power failure), or a
spring-loaded button that physically seals the exhalation port and activates an electronic button
to tell the computer to measure a plateau pressure and alarm if blocked longer than 10 seconds.

Standard bag-valve with addition of a PEEP valve on the exhaust port.


The PEEP valve increases resistance to exhalation, allowing the maintenance of a pressure
ranging from 0 to 30cmH2O (typically 5-15) against exhalation. Typically made with a spring
holding the exhalation flutter valve shut until enough pressure builds up behind the valve to
push it open. The spring is tensioned such that the pressure is adjustable as specified above.
Many bag-valves come with a PEEP valve, so manufacture of this piece is not a priority, but
PEEP is a crucial element of ventilating patients with many severe lung illnesses.
A very fine filter (N95 spec or higher) over the exhaust port would help make the environment
much safer for the healthcare team.

Bag actuator: It should be possible to generate at least 50cmH2O of pressure relatively quickly,
but with very fine control of the pressure and little momentum. The ventilator has to be able to
stop itself instantly once either a certain pressure threshold or a specific volume is delivered. It
should be able to deliver its maximal breath capacity of at least 900mL in as little as 0.4
seconds.

Bag actuator types:


● Strap: A strap holding the bag against a stationary surface tightens and releases, pulled
by being wrapped around a cylinder by a stepper motor.
● Linear: a piston drives a plate against the bag on a stationary surface
● Clamp: one arm pivots to squeeze the bag against a stationary surface, or two arms
pinch together around the bag
Fig: strap compression: a wide strap (red) passing over the bag-valve (blue) is pulled by a
stepper motor that turns a drum (small black circle).

Fig: a bar or board is pulled by a stepper motor to compress the bag.

Electronics:
Raspberry Pi or possibly an Arduino (Raspberry Pi would likely be able to make this a more
stand-alone device, and more easily improved in the future.)
Screen with touch or knob/button interface
Speaker for alarms
Battery backup (rechargeable, including battery manager)
Software:
Ventilators have different modes, the most basic of which are:
● Volume Control (aka Assist Control): ventilator delivers a breath of a fixed volume. Does
not take pressure into consideration.
● Pressure Control: ventilator delivers a breath until a certain pressure is reached and
stops, does not take delivered volume into consideration.
They also have different features:
● Triggered breaths: when the vent detects the beginning of inhalation, it delivers a breath
○ Detected by beginning of flow towards the patient when no breath is being
delivered (caused by patient inhaling through the circuit
○ There must also be a back-up rate, where the ventilator takes over if the patient
is breathing too slowly or not at all (determined by the amount of time between
breaths)
● Alarms for
○ Pressure too high (for volume control modes)
○ Volume delivered too low (for pressure control modes, requires setting a goal
minimum volume)
○ Power failure
○ Tube disconnect (no resistance or change in pressure when giving a breath)
○ Nice to have: alarm for breath stacking (incomplete exhalation causing air
trapping from multiple breaths)
● Inspiratory hold: gives a breath and prevents exhalation temporarily while a button is
pressed
● Measurement and display (ideally numerically and with a graph) of pressure, tidal
(breath) volume, plateau pressure (where the pressure settles during an inspiratory hold)
● Control over
○ Minimum respiratory rate
○ Pressure
○ Tidal volume
○ Inspiratory time
○ Mode
○ PEEP
Anything below this point was added by other users
and has not been reviewed.
I have left it here so that they may copy it elsewhere and will remove it by ​4/6/2020​ as it is
outside the scope/intent of this document. Users may email me should they wish to make
requests for improvements. I will make edits based on suggestions by healthcare professionals
and requests for clarifications of terms used by non healthcare professionals.

Electronic Sensors (added by Juan Enrique Osorio Gutierrez?):


● Pressure Sensors:
○ BMP280 Bosch 3.48 USD - Digikey:828-1064-1-ND - Not suitable: minimum
measurement is 4.35 PSI range should be +/-1.42 PSI
○ Z3639-ND Omron 7.66 USD - Digikey: Z3639-ND - Analog Output +/- 7.25 PSI -
Requires external amp.
● Air Flow Sensors:

○ PEEP (not software controlled in this case, see above)


○ Tidal volume or pressure (depending on ventilator mode)
○ Inspiratory time: time over which a breath is delivered

You might also like