3D printers are worse than I thought. Time to do something about it!

Do you smell it? That smell, the kind of smelly smell. A smelly smell that smells… smelly.

ABS! 

We all have smelled that before, that sticky, sweet, plasticky smell that you get when you’re printing with ABS. Common sense would tell you that that’s not something you want to breathe. So we now all print more with ASA, which smells a lot less, if at all – but if you look into it, it turns out that ASA is often found to emit more harmful particles and VOCs than ABS. Just because our nose doesn’t detect something, it doesn’t mean it’s not there.

PETG has no smell at all, but we’ve all seen the white powder that starts depositing on printheads even after just a couple of prints, … that’s in the air. And even with PLA, there is definitely a smell. Just because it’s cotton candy doesn’t mean it’s just as good for you… well, thinking about it, cotton candy isn’t exactly healthy, either.

And you know what, when I’m in the same room with a printer laying down PLA, I do get an itchy throat after an hour or so.

The Question

So that left me with a couple of questions: What are these 3D printers emitting that we’re then breathing in? Can I measure and quantify the differences between filaments? How dangerous are these emissions? And what can we do to keep these emissions out of our lungs, our bloodstreams, and our brains? Well, this was a fun one to investigate, I built myself a sensor box, I did some research, I did some testing, and I’ve got some tips for what works and what doesn’t.

The Problem

The two main types of emissions are particulate matter and VOCs.

Let’s start with particles: N95 masks are essentially particle filters, they filter out at least 95 % of all particles that are larger than 300 nm. What I was wondering is, how does a filter only remove 95 % of particles, shouldn’t this be an all-or-nothing question? Either a certain particle is big enough to get caught or small enough to make it through. While that is how filters work for coarser particles like dust, fine and ultrafine particles are absorbed differently. When looking at smoke and particles, you look at the size range of about 1 to 10 µm – or 1,000 to 10,000 nm – and here, particles are absorbed by colliding with the filter material and wedging themselves stuck.

Now you might think the smaller a particle is, the more difficult it should be to filter out then, but with so-called ultra-fine particles below about 100 nm, the particles start behaving more like gas and show some Brownian motion, basically, they’re shaking around by themselves, and also get caught in filter fabric more easily.

Between those two ranges – 0,1 to 1 µm, is typically considered to be the hardest particle size to remove, and things like common HEPA filters are less effective in that intermediary range.

But why are particles relevant at all?

The smaller they are, the deeper they make it into your body. Our respiratory system does a pretty good job of filtering out larger particles, but below 2,5 µm, they can make it deep into your lungs, and ultra-fine particles under 100 nm can even make it all the way into your brain, where they have been linked to inflammatory reactions and an increased risk of developing conditions like Alzheimer’s. So not something you want to be breathing in.

The other category is volatile organic compounds. Think solvents like acetone, ethanol, benzene, and formaldehyde, there’s an almost infinite list of these, but all of them share some varying amount of acute toxicity to humans and many of them also have long-term adverse effects when you’re being exposed to them regularly. Don’t breathe this, either. The standard way of removing VOCs from your breathing air is by using activated carbon filters, which act like a sponge and physically absorb VOCs, and I’ll be testing both particle filtering and VOC removal later in the video.

Sensor Build

To get at least some insight into what my printers are doing, I built myself an ESP32-based sensor array with two different broad-band VOC sensors, one from ScioSense and one made by Bosch, a combined particle and formaldehyde sensor from Plantower, and a temperature/humidity sensor for good measure.

I’ve also got a couple more sensors on separate ESPs, one is a modded MQ-7 carbon monoxide sensor, and I’ve also got another particle sensor from Nova Fitness running as well as a second ScioSense VOC sensor. Now, these are all low-cost sensors, so the particle sensors can’t distinguish the different particle sizes under 1 µm, so we only get figures for “smaller than 10 µm”, “smaller than 2.5” and “smaller than 1”, which is still valuable information. The VOC sensors don’t report on specific VOCs, like I said, there are thousands of them, but they just give a total amount of everything they can sense. The ScioSense and Bosch sensors have different sensitivities to different VOCs, so that could be interesting.

All of this is running ESPHome going into my home assistant setup

Test Setup

The initial outset for this video was to check whether enclosures can help with emissions, so that’s why I’m using my two printers that now have a full enclosure – the Magneto X and the XL. I ran prints with PLA, PETG, ABS, and ASA, with the stock slicer profiles from either one, always running the same material on both printers at the same time, once with the enclosure open, once with all the doors and panels closed, and any filtration or ventilation turned off both on the printers themselves and in my studio. Each of these print sets was about two hours and 120 g of filament, and between prints, I ran the ERV ventilation unit in my studio at full blast for at least an hour to get a somewhat fresh baseline for the next prints. All the emissions values will be in concentrations per m³ of air, my studio is 50 m³ of air total, so if you do the same tests in a larger or smaller room, you get lower or higher concentrations. 

Measurement Results

Here’s my data. I know this is pretty chaotic to look at, I’m going to break it down in a second.

Let me show you what a typical print looks like:

This one is done with the enclosures open and with old ABS that’s been open for a couple of years. You see a big spike in particulates, as the first layer is typically printed a bit hotter, and at typical print temperatures, every extra degree means a huge increase in emissions. Once that has dispersed, there’s a bit of a drop in particulates, and the slower accumulation in the air of both VOCs and particulates will take over and within those two hours of the printers working, both of those concentrations will keep on rising. Afterward, the ventilation gets turned on, and that takes a bit of time to fully flush my studio, it looks like I’m getting about a 70% air exchange per hour on the highest setting.

So to get some actual numbers, I’m only looking at the increase from the start of the print to the maximum, during the print, and I’m also subtracting a baseline run, with the ventilation off and the printers *not* printing. For example, there’s a lot of formaldehyde in my studio, more than what is considered safe for residential, and I get about a 20 µg/m³ rise in two hours just by turning off the ventilation. I suspect that’s coming from the corner where I keep resin and I should probably do something about that.

First of all, carbon monoxide, I didn’t detect any amount with any of the prints – which is good, because carbon monoxide is something that gets generated in incomplete combustion scenarios.

I was thinking if the filament undergoes some amount of pyrolysis in the nozzle, we should be seeing some amount of carbon monoxide, but we don’t. Maybe that’s something that becomes measurable at super high print temperatures past 300°C, but I didn’t see it here.

Then, formaldehyde, I’m also throwing that out. There is something that I’m picking up, but the levels that I suspect might be from the printers themselves are so low that they could be anything.

Now where it gets interesting is with particle amounts. The amounts I measured for PM10, PM2.5 and PM1 were really close, which indicates that we are dealing with the more harmful, finer emissions. I’m focusing on the PM2.5 here, because I can cross-check that between the two sensors, and because there are actual exposure limits that I can reference for PM2.5, while PM1 isn’t widely regulated yet.

Printing with ABS or ASA flew right past any of the limits for occasional daily or average annual exposure, no matter if I had the enclosures closed or open. That’s pretty bad! Yes, this was with two printers, but even if we take half of these values, ABS, definitely still way too much, ASA, still emits more than what’s recommended by the WHO. The devilish part here is that ASA might still be worse than ABS. My sensors measure total particle mass per volume of air, while the studies that I’ve looked at measure the *number* of particles and their chemical composition, and compared to ABS, ASA was found to produce about twice the amount of particles that also contained more than twice the concentration of BPA, something that wasn’t found at all in the particles from printing PETG.

The acceptable daily intake of BPA is 0.2 ng per kilogram of body weight. This means that with the levels of BPA that the study found in the air when printing ASA, I would blow past the safe daily limit by just breathing normally for 3.5 minutes.

So not only is what I measured for particle load in the air harmful but also what’s in these particles, and BPA is just one of the many compounds that can be found in these particles.

On the other hand, when printing with PLA and PETG, I measured much lower levels of particles being emitted, and the levels that I got in the studio were within the generally safe limits. From what I have found in studies, at least the particles from printing PETG contain absolutely no BPA, while info on PLA is much harder to find, but I wouldn’t expect it to be any worse.

Now, moving on to VOCs. There is a measurable amount of VOCs being produced by printing any of these materials – except for PLA.

PETG did register on the ScioSense sensor at roughly the same order of magnitude as printing ASA or ABS, while the Bosch sensor did not register any VOCs from PETG, but a small amount from ASA and a larger amount from ABS.

I don’t know the composition of the exact VOCs that each of these filaments produces, and there might be some pretty nasty stuff in here, but at least the sensor readings themselves, even during printing, are much lower than what I measured in my living in the weeks before moving the sensor box into the studio. So while I can’t say for sure that VOCs aren’t something that should worry about, at least when printing with filament and not resin, they are not going to be high up on my list of concerns.

And before we move on to what you can do to reduce the amount of emissions that you are breathing, one quick side note on where those emissions are coming from, because it’s not just the filament, it can also be your 3D printer itself. One study found that the emissions they were measuring contained cyclosiloxanes – which is a compound found in silicones and adhesives. So something as simple as that silicone heater mat glued to the underside of the bed assembly can influence what exactly it is that you are breathing in.

Mitigation

So let’s go over what works and what doesn’t, for avoiding breathing any of this. What doesn’t work is just putting the printer in a box. I found no significant difference between prints done with the enclosures open or closed. However, an enclosure can be part of a filtration or extraction system. Either one creates a negative pressure system where air from inside the enclosure is either routed straight outside or pulled through a HEPA filter and recirculated back into the room.

I did a quick test with a regular air filter from Ikea circulating the air here in the studio. I gave it fresh filters and put it on the highest setting, and while ABS, it managed to drop the particle concentrations from unsafe levels to zero within an hour. Because it’s only filtering the particles that have already escaped, there is still the initial peak when the print starts, but the average levels are much lower.

Without filter (print started at ~19:00)
With filter (print started at ~15:00)

This also has an activated carbon filter, but because this a comparatively small filter element, which means low surface area for the VOCs to wick into the carbon, it was much less effective at removing them and only dropped the levels by about 30%. Unlike particle filters, the only thing that makes activated carbon more effective is having more of it, because if you increase airflow, you’re also proportionally reducing the time that the air is in contact with the carbon. Even Alveo3D, the company making the filter unit for the XL, makes no specific claims for how necessary or how effective their activated carbon filters are. Real, commercial carbon cartridges have a couple of pounds of activated carbon in them, and on top of that, they are being used in bundles for a reason.

I am also not sure how well these tiny air filter products work, you are supposed to have them circulate the air inside a 3D printer enclosure, but because the air can still freely escape unfiltered from the enclosure elsewhere and you’re not actively creating negative pressure and forcing all the air through the filter, they are not going to be super effective. These also have even less activated carbon but VOCs aren’t something that I’m super concerned with filament printers.

If you want to filter particles, I think the most universal way is just to grab an air filter.

Ikea makes these now, and they’re 30 bucks regular, they have the same EPA12 filter as the bigger one, and that means each the air passes through, 99.5% of all particles are getting removed, and that’s really good. I’ll link some more on Amazon below.

The other thing you can do – and this is a compromise – is to print colder. Yes, layer adhesion will suffer, but interestingly, one study shows that right at the normal print temperatures of ABS and ASA, every single degree hotter or colder will make a massive difference in the amount of particles emitted.

I also tested whether filaments needed to fresh to get minimal emissions, but in practice, there isn’t much of a difference. Old PETG did register more VOCs than fresh, but that might be the specific filament I used. 

In general, just use common sense. Most particles get emitted at the start of a print, so don’t stick your nose in there. I know it’s tempting.

And just because you’re not smelling anything doesn’t always mean there is also nothing being emitted. But the opposite is true: If you can smell something, then there is definitely something in the air, and with ABS, that tends to be a pretty good indicator.

If you can make do with PETG and PLA, those seem to be much less harmful alternatives to ABS and ASA.

I’ll be much more careful with sharing the room with a 3D printer from now on, and this air filter is going to stay on until its motor burns up.

While the testing that I did probably isn’t totally up to scientific standards; just like the actual papers, it does show that there is *something* going on and we simply don’t have the long-term knowledge yet of what effects that is going to have.

If you’re interested in the sensor box I put together for this video, check out the description for parts and the ESPHome config.

Stay safe out there, keep on making, and I’ll see you in the next one.


The Ikea filters I used are FÖRNUFTIG (EPA12 + carbon) and the more affordable UPPÅTVIND (EPA only) If you get a HEPA filter e.g. from Amazon, I’d recommend buying a reputable brand to make sure you get what you’re paying for.

Philips is trustworthy and seems to have reasonably priced replacement filters (important as you’ll be swapping them multiple times a year):

Software and stls for the sensorbox

Parts and sensors used:

ESP32 WROVER

ESP32 breakout

2.4″ LCD

PMS5003S particle + formaldehyde sensor (make sure you get the “S” variant if you want the formaldehyde sensor – they’re a bit hard to find)

SDS011 particle sensor

Bosch BME680 VOC, temperature and humidity sensor

ScioSense ENS160 VOC sensor

MQ-7 CO sensor

…modified with these instructions: I also used an SHT40 temperature and humidity sensor in the front, but it is noticeably inaccurate.

I’m currently trying a AHT21 as a replacement.

Papers and sources referenced:

https://pubmed.ncbi.nlm.nih.gov/35744939/

https://pubmed.ncbi.nlm.nih.gov/28165927/ https://www.sciencedirect.com/science/article/pii/S0160412018323663?via%3Dihub#t0010 https://journals.sagepub.com/doi/10.1177/0192623307313011 https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5791918/ https://www.efsa.europa.eu/en/topics/topic/bisphenol

Models shown:

Canister set by JamesThePrinter


All my video gear

💙 Enjoying the videos? Support my work on Patreon!

Product links are affiliate links – I may earn a commission on qualifying purchases (at no extra cost to you)


You can support me without spending a single penny!