Air filtration & exhaust fan control in OrcaSlicer
Where the setting lives, what M106 P3 actually does, and how to wire it up correctly if you’re running Klipper.
What air filtration means in OrcaSlicer
OrcaSlicer air filtration runs on a separate fan channel — not the one cooling your plastic.
OrcaSlicer air filtration is the feature that controls a dedicated exhaust or filtration fan while a print runs, and it’s a different job from the part-cooling fan, which cools freshly extruded plastic and shapes overhangs, bridges, and surface finish. The exhaust fan instead moves air out of (or through) the enclosure — into a HEPA/carbon filter, a duct to the outside, or a standalone air-cleaning unit.
This matters most on enclosed setups — if you’re not sure your printer qualifies, our list of 3D printers compatible with OrcaSlicer covers which enclosed and open-frame models are well supported.
OrcaSlicer generates the exhaust-fan G-code only when the printer profile is configured to support it. Two typical hardware layouts:
- Enclosure → exhaust fan → HEPA/carbon filtration → filtered air back into the room
- Enclosure → exhaust duct → outside ventilation
Which one you have determines how you’ll want to configure During print and Complete print further down this page.
Where the settings actually live
Two separate places — one enables the feature on the printer, the other configures its behavior per filament.
Printer Settings
Toggle: Support air filtration — a Developer‑mode setting. Start from printer selection if you haven’t picked a profile yet.
- Must be enabled before anything below becomes available
Filament / Material Settings
- Activate air filtration
- During print
- Complete print
Part of the same panel covered in our filament settings guide.
Internally: the printer-level toggle is support_air_filtration; the material-level toggle is activate_air_filtration.
Turning it on, start to finish
- Open Printer Settings
Select your printer profile from the top of the window — see printer selection if you’re setting one up for the first time.
- Go to Basic Information → Printer Accessory
This is where the air-filtration toggle for this printer profile lives.
- Enable Support air filtration
Only shows a result if the profile supports the feature — it’s a Developer-mode setting, so confirm Developer mode is on.
- Switch to your Filament Settings
The exhaust fan behavior is configured per filament profile, not per printer.
- Open Cooling → Exhaust fan
This section only appears once the printer-level support is enabled.
- Enable Activate air filtration
This turns the exhaust fan on for this specific filament profile.
- Set During print and Complete print
Covered in detail in the next section — these are the two speeds that matter.
The three exhaust fan controls, explained
Activate air filtration
Turns on exhaust/filtration control for this material profile. Internally documented as activate_air_filtration. Enabling it lets OrcaSlicer emit:
This is a separate command from the part-cooling fan — enabling it doesn’t change how the part-cooling fan behaves.
During print
Sets the exhaust fan speed while the printer is actively working. Two variables sit behind this control:
There’s no single “correct” percentage — the right value depends on enclosure design, fan size, filtration hardware, printer, filament, target chamber temperature, and how much airflow you actually want.
Complete print
Controls the exhaust fan once printing has finished:
Useful if you want filtration to keep running after the last layer — extra post-print air circulation for an enclosed printer, rather than the fan cutting out the moment the print ends.
What M106 P3 actually is
This is the command doing the work, so it’s worth understanding on its own:
M106 P3 S0 is zero speed. M106 P3 S255 is maximum, in OrcaSlicer’s documented fan-control range.
| Fan | Index | Typical function |
|---|---|---|
| Part cooling | P0 | Cools the printed part |
| Auxiliary fan | P2 | Additional part/chamber airflow |
| Exhaust / filtration | P3 | Enclosure exhaust or filtration |
Physical implementation varies by printer profile and firmware — don’t assume the slicer index maps to a hardware pin of the same number.
Why P3 matters
It’s tempting to assume every physical printer numbers its fans the same way — it doesn’t. OrcaSlicer’s documentation associates P3 with the exhaust/enclosure fan for its own fan-control logic, but the actual physical fan and firmware configuration have to be set up to honor that mapping. This distinction matters most with custom Klipper configurations, where nothing stops you from wiring P3 to the wrong fan by accident.
Setting it up with Klipper
Klipper users get the most flexibility, because a macro decides how the slicer’s fan command reaches a physical fan — you’re not locked into whatever the printer profile assumes.
OrcaSlicer ships a reference Klipper configuration that defines fan0, fan2, and fan3, with a custom M106 macro translating the incoming P value to the right Klipper fan. The pin names in that reference config are placeholders — they need to be changed to match your actual wiring.
The current documentation also shows an index-to-name mapping approach, so you can call the fan something descriptive like EXHAUST in your config while staying compatible with OrcaSlicer’s numeric indexes. Handy if you’ve built a custom enclosure and don’t want to remember which number is which. Once it’s wired up, run it through our calibration guide before trusting it on a long print.
Exhaust fan vs. part-cooling fan
| Part-cooling fan | Exhaust / filtration fan | |
|---|---|---|
| Fan index | P0 | P3 |
| Affects | The printed material directly | Enclosure airflow |
| Influences | Bridges, overhangs, layer bonding, surface quality, dimensional accuracy | Chamber temperature, fume/particulate removal, filtration throughput |
| Typical hardware | Duct/shroud at the nozzle | HEPA, carbon filter, ducted exhaust, standalone air cleaner |
OrcaSlicer treats these as entirely separate functions with separate G-code. Turning one on has no effect on the other, and neither affects unrelated motion settings like Z-hop.
Should the exhaust fan run during printing?
There’s no printer-wide default that’s correct here — it depends on what the enclosure is doing thermally, and it’s worth treating deliberately rather than leaving at a guessed value.
- Enclosure temperature target for the material you’re printing
- Printer manufacturer’s own ventilation recommendations
- Filament thermal requirements
- Filtration efficiency and airflow rate
- Room ventilation (is the exhaust venting outside or recirculating?)
- Whether the fan is pulling heated chamber air out — this can undo a warm chamber you’re relying on
Exhaust behavior by filament
| Material | What to weigh |
|---|---|
| PLA | Uses substantial part cooling; enclosure ventilation needs depend more on your filtration hardware than the material itself. |
| PETG | Wants a different cooling balance from PLA — see our dedicated PETG profile guide rather than copying a PLA setup. |
| ABS / ASA | Where enclosure ventilation and filtration matter most — if you’re running Overture ABS, chamber temperature, filtration, and exhaust strategy need to be considered together. |
| Nylon / PC | Demanding thermal requirements — excessive exhaust airflow can pull down chamber conditions you need to hold steady. |
There’s no single “OrcaSlicer exhaust fan percentage” that works across materials — treat it as part of the printer’s overall thermal and filtration setup, not a fixed number to copy between profiles.
Troubleshooting
Exhaust fan not responding
1 — Profile support
Confirm the printer profile actually has Support air filtration available under Printer Accessory. Not every profile ships with it.
2 — Activation
Check Material Settings → Cooling → Exhaust fan → Activate air filtration is switched on for the filament you’re using.
3 — Generated G-code
Slice, then inspect the output for M106 P3 S…. If it’s missing, the problem is upstream in the printer profile or activation settings — not the hardware.
4 — Firmware mapping
On Klipper, verify your M106 macro correctly routes P3 to the physical exhaust fan.
5 — Physical hardware
If the correct G-code is generated but nothing happens: check fan wiring, controller output, power supply, the MOSFET/driver, Klipper config, fan pin, and PWM setup. If the slicer itself is misbehaving rather than the fan, check our Orca Slicer not working guide.
Exhaust fan stuck on
Check the generated G-code for M106 P3 commands and see what’s issued right after — that tells you whether OrcaSlicer or the firmware owns the behavior. On Klipper, re-check the M106 macro and the P-to-fan mapping; a mismatch between what the slicer expects and what the firmware has configured is the most common cause. Also worth confirming you’re not running into an unrelated Access Violation error, and that you’re on the latest release — see updating OrcaSlicer.
Recommended setup order
- Enable air-filtration support
On the printer profile, under Printer Accessory.
- Confirm the physical fan is wired correctly
Before touching any slicer settings.
- Map the fan in firmware
Klipper users: set up the M106 macro now, before testing in the slicer.
- Activate air filtration in Material Settings
Per filament profile, under Cooling → Exhaust fan.
- Set During print behavior
Pick a speed appropriate to your enclosure and material — see the filament table above.
- Set Complete print behavior
Only if you want filtration to continue after the print finishes.
- Slice a small test model
No need to commit a full print to this yet.
- Inspect the G-code
Confirm M106 P3 commands appear where expected.
- Test the physical fan
Before relying on the setup for a long, unattended print. If you need to intervene mid-print, it’s worth knowing how to pause a print or change filament without losing progress.
Frequently asked questions
What is air filtration in OrcaSlicer?
A system for controlling a dedicated exhaust or filtration fan, separate from the part-cooling fan. The command behind it is M106 P3.
What is P3 in OrcaSlicer?
The fan index OrcaSlicer uses for its air-filtration/exhaust fan. The full command is M106 P3 S(0-255).
Where is the exhaust fan setting?
Filament Settings → Cooling → Exhaust fan, where you’ll find Activate air filtration, During print, and Complete print.
Is the exhaust fan the same as the auxiliary fan?
No. The auxiliary fan is M106 P2; the exhaust/filtration fan is M106 P3. They’re independently controlled.
Can OrcaSlicer control an exhaust fan on Klipper?
Yes — via a reference Klipper configuration and an M106 macro that maps the slicer’s fan index to a physical Klipper fan.
Why can’t I see the air-filtration option?
Two likely reasons: the printer profile doesn’t support the feature, or Support air filtration (a Developer-mode setting) isn’t enabled. Also confirm you’re on a current OrcaSlicer version and check the interface guide if the menu layout looks different from this walkthrough.
Final thoughts
Air filtration and exhaust fan control in OrcaSlicer is more than a single checkbox. The feature ties together several parts of the workflow — printer settings, material cooling, exhaust-fan speed, the generated G-code, fan indexes, and firmware configuration all have to agree with each other.
For most users, the settings that matter are Activate air filtration, During print, and Complete print. For anyone going further — custom enclosures, Klipper setups, multi-fan configurations — understanding M106 P3 and how it maps to your actual hardware is the part worth getting right first.
If you’re on Klipper, the M106 macro approach covered above gives you the most control over how the exhaust fan is mapped and operated — it’s worth the extra setup time on an enclosed printer.
