Last updated 2020/04/19
NOTE: This is currently an independent project not affiliated with any commercial institution.
One more time, a low-cost Powered Air Purifying Respirator (PAPR) is highly valuable for caregivers, and may have much more positive impact than bulding a mediocre ventilator.
Requirements doc from Code Life Ventilator Challenge - Montreal General Hospital Foundation (Canada)
Requirements from Gov.UK - Rapidly Manufactured Ventilator System (UK)
Here's a youtube video walking through the components as of 2020/03/17:
There are also many other efforts in this direction. Here's a short list of them Thanks! discussion
I've moved the To Do's to a Wiki so it is easier to update. Please check there if you are interested in helping. Thanks to those that already have!
To provide comments/feedback/offer help, create a new issue on the project. Thanks!
There is a growing list of useful documents around guidance for use of unapproved equipment, and information around estimated shortages of both ventilators and personal protective equipment. We have moved them to References Wiki to enable better updates to make it easier to maintain.
Continuous Positive Airway Pressure (CPAP) devices are commonly used by individuals to treat sleep apnea. As a result, CPAP blower components are fairly abundant. Used ones are available on eBay and new ones on Alibaba. In many of these devices, the blower is a simple BLDC motor that can be driven with an Electronics Speed Controller (ESC) used by quadrotors and RC cars. The one I used is pulled from a Respironics REMStar. In volume, these blower components can be under $20.
Arduino Compatible Nano/Clone to control the motor speed, breathing cycles, and handle user input. Download the Arduino IDE to program the microcontroller software.
Brushless DC Motor Electronic Speed Controller capable of at least 10A.
Button or switch for input control. The code cycles through 5 levels of pressure. Double click to switch between CPAP and BiPAP/Fixed PEEP mode.
12v DC power supply that can handle at least 5A. The blower works pretty hard, and the breathing cycles can create voltage drops which will reset the Arduino if the supply is not strong enough.
Tubing and face mask. If you search for CPAP face mask, you'll find many options/suppliers. A full face mask that covers both the mouth and nose will enable pressure buildup in the lungs. As an alternative, see below for draft 3D printable parts.
Optional inline 12v battery backup.
This is the full system with mask, tubing, pump, 12v battery, and switch for input. However, I would strongly recommend running this with a DC power supply since the battery will only last about 3-4 hours. Wearing the mask with a dead battery could cause dangerous CO2 build up. This particular battery can charge and supply power at the same time, acting as an inline battery backup to wall power.
Below is a close up of the extracted blower. It is simply a BLDC motor driving a blower fan. A small ESC and Arduino are attached (technically a Teensy2.0++, but the code has now been changed to an Arduino Nano). It has a 3d printed tapered hose adpater on it to fit in the hose. The microcontroller software can be programmed with the Arduino IDE. The software goes through a short initialization sequence to configure the ESC; it then starts at the lowest CPAP setting. You can use the switch to cycle through pressure levels, and double click to cycle through operating modes.
Here is the schematic for the electronics. As you can see, it is very simple with only a few parts. A slightly modifed version that is able to sense the blower current is here.
Since I have a CPAP, I happen to have a Resmed AitFit F20 mask that I can use. This is quite comfortable and covers both the nose and mouth to make a good seal. However, if you can't get a mask, below is a prototype mouthguard that fits in the category of not-so-great-but-usable-if-you-have-a-lot-of-tape. I am using some elastic straps as head gear. However, in order to get a good air seal to get enough positive pressure, this would require some tape. A little bit of leakage is actually desirable to allow CO2 to escape near the mouth and nose to flush out the air over time; this prevents CO2 from being stuck in the tube. WARNING: wearing this sealed to the mouth with tape without power may cause dangerous CO2 build up.
Download the [3D model] [Fusion 360 link].
This is a picture of my test rig to measure the output pressure. It is a U-shaped tube with an attached measuring tape to check displacement of water. The actual liquid displacement is 2x the measured line since liquid is being pushed downwards an equal amount on the other side of the U, doubling the displacement. (I think this is the correct way to measure). At full blast at 12v, it is achieving 45cmh2o. WARNING: Going above 20cmh2o can be DANGEROUS. So, these blowers are plently powerful.
Here are some images showing the dislacement of the liquid at different speeds. I happen to have Diet Dr. Pepper on hand which makes it easier to see the liquid level rather than just plain water.
Here's a video of the blower pushing a breathing cycle of 16 cycles/min oscilating between 12 and 22cmh2o.
An open air blower into someone's airway isn't great. If possible, some filtration is preferred. These parts were originally used for a DIY Powered Air Purifying Respriator (PAPR). However, adding a filter will definitely affect the output pressure. It will depend on the blower you have if the motor can handle the additional load. Given the headroom of the blower I tested, these CPAP blowers can probably handle the filter and still hit the target pressure. However, I haven't done long term thermal testing at high pressure and with a strong filter. These adapter plates can be attached with liberal amounts of hot glue and wrapping the unit in vinyl tape to get a reasonably airtight seal. My blower's enclosure was not air-tight, so it is difficult to guarantee that 100% of the air is coming only through the filter. Setting the blower to a low CPAP pressure, and leaving the face mask vent holes open will allow it to function reasonably as a PAPR.
Click here to see updates.