Code Life Ventilator challenge

Any chance folks are interested? I’d love to coordinate a VHS team. (in the off chance we win, I’d love for the proceeds to go towards VHS).

I have EE, BME experience and an ABS 3D printer + a PLA one. I’ve got a good understanding and practice of PCB design/assembly and risk mitigation protocols.

Specifically looking for: Someone with P.Eng qualifications to check whether design meets safety requirements (a requirement of the competition)

My dad is an anesthesiologist with intensive care experience who’d love to give his perspective, primer on intubation and ventilation and sign off on the performance of the system (a requirement for this competition).

Generally I’m hoping this gives folks an outlet make use of their diverse set of skills and desire to help. That said, I think we should also check our savior complexes (that are too easy to give in to as makers and hackers).

Edit: Typo


I have reasonable knowledge of mould making and casting (including silicone casting which could be good for making medical-grade sterilizable soft plastic parts) as well as welding and metal fabrication techniques, including stainless steel. Also a lot of other random materials knowledge that might be relevant. My day job is special effects technican for film, and I do a lot of rapid protoptype development of weird things for that. I am reasonably proficient in modelling in Rhino 3D.

I cannot meet anybody in person before April 2, due to having recently returned from the States, but I’m open to teleconferencing and email exchange.


I don’t know much about anything, but is way too enthusiastic not to get involved in random things. But i did just do a deep dive on stuff so we I can give people an overview of the contest.

So first things first, deadline is March 31th. This is a 2 week contest and there are like 9 days left. So if we actually want a shot at the prize, we need to start right now.

Reading the requirements for the machine, and 3 hours of research into what all the words mean, I can summarize it here. (please correct me if i got anything wrong)

  1. when the patient attempts to breath in, the machine needs to supply 40cmH2O of pressure, which is 3.8% above atmosphere pressure. The patient attempt to breath should trigger this pressure, but if the patient does not attempt to breath in after a set amount of time, the machine should force this pressure to force air into the patient.

  2. After a set amount of volume of air (manually adjustable by operator) as been pushed into the Lung. The machine should reduce pressure to 20cmH2O of pressure, (1.9% of atmosphere). This pressure is still positive (we are still forcing air into the Lung). This is prevents the Lung from deflating too much during exhale (really cool demo here . This setup is commonly know is BiPAP.

  3. There has to be an way to attach an oxygen supply, and adjust of oxygen supply of the input air from 20% to 100% in 10% increment.

  4. We have to be able to measure the change in pressure and the air flow. Both for triggering of inhale and to set off alarms if something is wrong.

  5. It has to be easy to make and use from available supplies ( listed supplies are 3d printing filiments, plastic and metal sheets) easy to setup, easy to test and use without too much specialized training.

That is a overview of the requirements. There are others but this should be plenty to get us started. Does anyone here as experience with pressure sensors and how to control them?


I am intrigued by this, but currently managing my own life-disarray stuff until late next week, at least. This is an extremely tight timeline!

Do you need a P.Eng to sign off? or do you need a design safety review?
A P.Eng is, as I am sure you know is certified to have knowledge in Canadian professional practice, law , and ethics.

The technical skills required to perform the design safety review are separate from the Canadian profession law knowledge required to understand the significance of the design safety review.

What needs to be done in the remaining 9 days.
It typically will take a week or longer complete a PCB layout from a schematic.

A few points,

not attempt to breath in after a set amount of time, the machine should force this pressure to force air into the patient.

This is not a fixed set time, but changes as the person relaxes and depends on the person’s lung volume capacity, etc. But it is a trainable set time.

After a set amount of volume of air (manually adjustable by operator) as been pushed into the Lung. The machine should reduce pressure to 20cmH2O of pressure, (1.9% of atmosphere). This pressure is still positive (we are still forcing air into the Lung).

The volume of air is range, at a range of acceptable pressures. There needs to be a pressure limit pushing air into the lungs.

The deflation pressure also needs to be adjustable. The deflation pressure vent should be close to the mask. I suspect a pressurized supply line and vacuum line are required. ARE the air compressor and vacuum pump supplied or need to be also selected.

The air will mostly need hydration, which can be achieved by blowing the air over a service of water?

A design is possible in 9 days, a schematic would probably be the limit of what is achievable in 9 days.

1 Like

I thought about this as well - The rules don’t actually say PCB, though, just schematic and block diagram. I think the implication is that there is enough time to throw together a bunch of arduino modules. That is also better for teaching people around the world how to duplicate the effort, too.

Hi Folks

Could I suggest slack a way for folks to organize ideas around this better?

I’ve been slightly distracted by other face shield sterilization effort currently ongoing @ UBC/VGH. What I found quite interesting about that effort (thanks to VMERS and @TyIsI) is that they’re taking a scalable laser cut design from some folks in Poland and working with local medical staff to get it into active use. Folks like me are helping bring sterilization/medical device perspectives/contacts into this.

While I agree that it looks like 9 days is too short to generate a working prototype, especially given constraints such as social isolation and reduced prototyping capacity, I’m still eager to take this on as a design exercise start off from an available design and bring our perspective to it.

What do folks think?

1 Like

Slack would be fine, keeping in mind that we lose everything there after a while so anything useful should come out here for posterity.

I’d like to also point out that the contest adds a bunch of arbitrary constraints to the problem that are not really helpful. If someone felt skilled and motivated enough to design and publish a controller for a ventilator, that would be beneficial to the larger community all by itself. It’s important to keep the real problem in mind and not be distracted by irrelevant rules.

1 Like

I use a CPAP to sleep which has adjustable moisture. The air comes in through a series of filters, is pressurized and passed thru a chamber on the way out to the mask. The chamber is essentially a hot plate with a tub of water on it to create steam for the water to pick up on the way through. May or may not be useful.

1 Like

@sampath also feel free to copy any of our workflow and best practices! Luckily a new Slack will have a 10K message cap… so hopefully you should be good for a while at least.

Copied from our FB:

  • short-lived information -> chat
  • meta information -> FB
  • project information -> Trello
  • project documentation -> Google Drive/Docs
1 Like

Engineering drop out, but still interested in helping with project in limited capacity.
What tools do you plan on using for PCB design?

This popped up on FB:

Hi all,

Thanks for all your enthusiasm and willingness to help in these difficult times.

I’m an anaesthetist in Australia. I use ventilators every day. I’ve seen many ventilator projects around the internet but I haven’t seen a lot of detail on the control systems for these ventilators, and there’s a few things I think need pointing out. I hope this post can be useful for those working on these projects.

The first thing to understand is that COVID-19 patients that require invasive ventilation inevitably do so because they develop Acute Respiratory Distress Syndrome - ARDS. Ventilation in ARDS is notoriously difficult, but the right ventilation strategy is associated with a decrease in mortality and complications.

Being able to ventilate someone appropriately could mean the difference between survival and death. It’s not as simple as squeezing a bag, and grossly oversimplified approaches to ventilation may be worse than nothing at all.

I’d encourage anyone considering working on these projects to do some independent reading on ventilation in ARDS. Much of it will assume a level of base knowledge and be written in medicalese but post here if you want me to explain anything specific.

Down to the details:

Pressure sensing is mandatory - excess ventilatory pressures cause all kinds of problems and it’s a key parameter that can be used to safely ventilate someone with ARDS.

Flow sensing, and by integration with time, volume determination, is also critical. This allows the clinician to determine a few things - firstly, if expiratory flow hasn’t reached zero before the next breath start, a phenomenon call gas trapping can occur. This can lead to volutrauma, pneumothorax etc. Secondly, decreasing tidal volumes over time can alert the clinician to changing lung compliance which needs actioning.

A method of setting and maintaining positive end expiratory pressure (PEEP) is required.

Programming logic:

  • There must be an over pressure alarm and failsafe mode
  • I would advocate for a pressure control mode only
  • Adjustable respiratory rate
  • There should be a display of flow/time and pressure/time
  • Ideally a method of adjusting inspiratory time or I:E ratio

As for the overall architecture, I think the self inflating bag concept makes a lot of sense.

Again, thanks everyone for your enthusiasm but please temper it with some thought of actual clinical utility.

Further information:

An introduction to the ventilator waveform

Basic components of a mechanical ventilator

Methods of generating positive ventilator circuit pressure


perhaps a demo board with atmospheric pressure sensors is the place to start.