-
Notifications
You must be signed in to change notification settings - Fork 6
Home
Welcome to the VO2max wiki. I'm using this to keep track of the design & development process of plans for a publicly available well designed V02 measuring mask that costs under $200 to build.
Athletes use VO2 to assess how hard they're working. We can use it to measure the effectiveness of training programs. Currently, getting a VO2 measurement is kind of a pain to access. Typically you'll book time on a machine that costs $30-60k, pay anywhere from $60-150 each time you use it, and only get that one "snapshot" in time of your VO2 on that day. Most machines are treadmills or bikes, so if you're into rowing, weighlifting, hiking, tennis, or anything other than cycling or running, you won't get a direct transfer for YOUR sport.
The device proposed here makes it much easier for the average athlete to incorporate VO2 into their training program for their specific sport. For those of us athlete-nerds, this is a fun and super useful project!
This project started with the very cool idea from rabbitcreek over on Instructables to build your own VO2 Max Mask. Improved upon by a few folks (ivorhewitt, janm2000, and urissel), it was (and IS!) a neat project.
Still, I thought I might be able to contribute a bit more with the following methods and goals:
- Organize and direct experts in their fields to improve specific aspects.
- Deliver 3D print files that are easily printed in ASA with any home 3D printer (I've got a Prusa).
- Additionally, provide CAD print files so anyone can quickly manipulate, assess, and improve this.
- Develop an improved structural design that was more compact and less "tube hanging off the face"
- Improve instructions for a casual DIY'er (someone who has soldered before and can put together an IKEA kitchen)
I'm documenting a few aspects over on the GK YT channel, feel free to check that out here. Those videos are a little random, I'll probably be the most organized on this Wiki.
Ok, so...we started with the original (improved) design, here's Ivor's pic of his build:
Cool, right? But also maybe a little awkward, especially if you're going to run or lift weights or generally jackass around the great outdoors. I printed the parts a few times in ASA with varying results.
Why ASA? I run and hike and fly in hot weather, and I'm frankly careless with my gear. I knew I'd be leaving this in a hot car or bringing it out in the sun; PLA or PETG wouldn't cut it. Among other misfires, the screw threads on the original Venturi tube broke 3 times in a row, so I knew I needed to fix that.
Fix #1 - Thicker screw threads so they don't break apart on printing.
Fix #2 - Improve the sensor accuracy through design. I hired a computational fluid dynamics expert to take a look and see what we might be able to improve. He started with suggesting we change the design of the ports to the CO2 sensor in order to isolate it from pressure fluctuations and give a wide enough opening for fast readings. Regarding the pressure fluctuations sensitivity, rounded walls around each hole extruded outwards provide isolation from the air pressure thus providing better readings accuracy.
Fix #3 - After reading reports of the O2 sensor getting saturated, I asked if we could improve that. He modified the O2 sensor position and added an internal duct for it to reduce humidity (water vapor) accumulating over the sensor and getting it damaged or malfunctioning. This prolongs the operating effectiveness and efficiency of the sensor.
Fix #4 - Make it so it wasn't a giant tube hanging off your face. I asked to make the Venturi tube shorter making the unit more compact, investigate other changes by modifying the throat position.
We ran some simulations on it, and it looked good.
I also talked to an expert (associate professor of integrated physiology and health science who had done testing of a commercially available VO2 mask) and asked about what might make for a great design. He highlighted a few factors:
- mask weight
- mask fit
- sensor accuracy
As we talked about how I might use this, he brought up measuring RER (Respiratory Equivalent Ratio) aka a way to see if you're in "fat burning mode" (my words, not his) using the O2 and CO2 sensors. It made me think of how the athlete or coach sees the data, but first...
After fiddling with all that and getting the fixes in, the CFD guy asked if he could play with the design to improve it. I said yes, and two days later had this:
I was pumped! This eliminates the need for a Venturi effect (the throat in the old design) to measure pressure difference. It gives us two points by design with pressure differences that are larger than the old design, meaning better response of pressure sensor.
Want to see what that looks like? He ran a simulation to check it, and we got this:
We then added in the tubes for the pressure differential sensor and ran Velocity, Vapor, and Pressure on the design. Here's how that looks:
We sent it to our 3D print designer (the same guy who did the Soil Moisture Sensor housing) to come back and let us know whether or not this design is reasonable to easily print. His rec was to just print it and see what happens, so I did. This is what we got (the grey is the new tube printed in PLA, the red is the ASA mask attachment point.)
Of course, if we are going to use this design, which is totally new, we will need a new way to mount where the screen will be right in the front middle section, as well as figuring out where the battery and switch will go along with how the CO2 sensor will mount.
04 Aug 2023 Got the new 3D print files in that have the proposed attachment points on 'em. Made a new directory in the main git for Test 3D Print files, feel free to check some of those out and propose any mods. I've been updating the YouTube playlist so you can follow along. So pumped on the progress!
12 Aug 2023 Both Travis and I have printed the thing out, have all the sensors, and have mounted them.
The BMP280 has been causing me some problems as far as not showing up or throwing an error. I ended up using hot glue to attach the power switch and velcro for the battery so it wasn't flopping around. The original CFD assist doesn't have the programming skills to help make sure everything is working, so I've looped in a new CFD/design expert to help out. He provided the EU BOM and has also suggested investigating a new oxygen sensor.
While going over the parts needed I found two interesting bits about the O2 sensor:
1. The used sensor looks to be a Winsen model, which seems to be a clone of a Honeywell sensor with slightly worse specs. One big differentiator is that the Winsen sensors cannot be exposed to water droplets / moisture. The Honeywell 40VX in contrast will eventually stop working due to the membrane clogging with droplets, but other than that there's no reduced functionality (according to their docs).
2. There is another Honeywell sensor called the PBT-18.10 (CityTech is now Honeywell). Nearly all (including medical) O2 sensors hover around the 15 second mark for their T90 spec. This means that for a variation in measurement circumstances it'll take 15 seconds to reach an output value of 90% of what the sensor should measure. The PBT sensor is the only sensor I found able to do it in about 5 seconds. It should be able to do much better for mapping O2 cycles.
I've ordered the new sensor, waiting on it to arrive.
16Aug2023
Stefan has proposed a new design, we're calling it "V4 - the Snork". This one is smaller but still untested. If you want to try testing the initial prints (they don't fit the mask, so it would be more to just have something in your hand) you can look in the 3D file folder. We're sorting through getting a few correct basics, like the mass flow of air exhaled by athletes.
Here's a (very) rough print of the new design:
and another of the back side of it. Again, these are super rough prints just to give an idea of how big it is.
Here's how it looks under CFD modeling from a side view:
Here are a few notes from Stefan on this (and the ongoing design)
Here are some guidelines on what -for example- the EU feels is the maximum safe effort for exhaling through something: 2500 Pa (back pressure).
I've adjusted the CFD parameters for the 200L/min figure and some further data I dug up showing a 4 second respiratory cycle, a faster ramp-up and a slower ramp-down. I've also setup the two key variables: Back-pressure and Differential pressure (difference between the two pressure sensor ports).
It's still running, but extrapolating the trend the tweaked S design would end up at ~1900 Pa BP and ~500 Pa DP. The sensor full scale is 250Pa so we should target ~200 to have a bit of margin, meaning the venturi should be slightly larger to get the least BP.
One note: Just seeing the condensation results it looks like it's important to keep the velocity in the device high, any low speed zone will cause condensation.
29 August 2023 Stefan came out with the v2 of the snork design. There are o-rings under the pressure sensor now, size OD4 x 1mm
- Same 4x1 O-rings are used under the CO2 sensor ports.
- For the CO2 module humidity sensor there's a 3x1 O-ring needed.
- The face mask has a front edge which goes in a conic adapter face on the housing. This face needs most accuracy so it's recommended to print the housing with this bit facing up (for FDM). For resin prints mine is printed just 30-degrees rotated from shown (a little more vertical).
- The rear 'chamber' fits the CO2 sensor. My idea was to add a small lid to this to hold the sensor in place. Not implemented yet.
- The USB is facing upward, I know. Not as good as before, but it allowed for a pretty compact battery position, with the battery weight inward (makes the mask feel less clumsy imho). [10:39 PM]
- PS. The O-rings can be found in assortment boxes, I think mine came from a local hardware store
08 Feb 2024 We're continuing with the development of this, currently pursuing a SBIR grant to support this. Super fun!
Here's the side that attaches to the mask: