Custom Ventilation System
Hi all!
I've been working on creating a custom ventilation system for my CORE One to safely print VOC and UFP-heavy filaments like ASA, PA, etc.
I've considered a few options, including the advanced filtration system from Prusa, but I've determined venting rather than filtering fumes will be my best course of action as the printer is located in a living area, and I don't particularly trust a tiny filter to consistently stop VOCs and UFPs from infiltrating the space.
As such, I've modeled and printed a duct that fits a 120mm computer fan and a flexible hose which will vent outside through a window, and attaches to the back of the printer with magnets.
Of course, some of you probably notice this is a 12v fan (it's just what I happened to have laying around), and of course this printer is set up for 24v fans. As such, I designed a little buck converter circuit so I can use this fan safely. Fun fact, I've tested these Noctua NF-P12 fans up to 32v and they actually handle it just fine, although I assume at a significantly reduced lifetime - I certainly wouldn't recommend hooking these directly up to the printer.
The buck converter is basically just a boilerplate design based on the LM2677 datasheet specs. For those curious, the fan connectors Prusa uses are Molex Clik-Mate 502578-0400. Please note the buck converter above used the wrong connector (502443-0470, 2mm pitch) as I neglected to measure the pitch and just guessed. Oops. The correct connector is 502584-0460 w/ 1.5mm pitch (straight, right angle also available w/ P/N 50285-0470).
You may be asking: "why the hell would this idiot design a whole buck converter instead of just ordering a 24v fan?"
Great question! No comment.
Anyways, the buck converter works great and puts out 12v as designed. I've got a bit of an issue, though. I'm not sure why or how, but at some point, I stopped getting a PWM signal at the xBuddy extension board for FAN3.
When chamber filtration is set to none, the chamber fans (connected to FAN1 and FAN2) operate just fine, as they are driven by a separate PWM control from the MCU. However, when I set it to advanced filtration to enable FAN3 and disable FAN1 and FAN2, I get nothing.
The most confusing part is that the fan WAS spinning at one point, albeit throwing errors as it's only designed to spin at 1700RPM full tilt and the advanced filtration fan is intended to spin at 3400RPM as indicated in the firmware:
constexpr FanRPMRange filtration_fan_range = FanRPMRange::nominal_with_percentual_tolerance(3400, 15);
This, of course, can be remedied pretty easily by modifying the firmware. However, before I realized this was the issue, I was "troubleshooting" by brute force plugging/unplugging things thinking this would change something, and I believe this may have contributed to the issue - it appears I may have blown the MOSFET that switches the PWM signal (Q10A below).
Now - I have an idea of which MOSFET this is on the board, but with no labels in sight, I have no way to be sure. The schematics provided by Prusa also show test points for certain circuits, but these are not labeled either. Is there any way to get some sort of PCB diagram that shows the label of each component? I'm not asking for manufacturing data, just something to help me figure out where in the world these teensy tiny components are located so I can diagnose them properly.
Feel free to critique this design - I'm certainly no experienced PCB designer. TIA, updates to come!
RE: Custom Ventilation System
I'd something similar, but instead of putting extraction fan near to the printer, I put extraction fan at wall-exit.
Extraction fan at wall-exit provide better extraction especially at windy day. In fact I need to stack two fans to generate enough static pressure to push the air out.
RE: Custom Ventilation System
Now - I have an idea of which MOSFET this is on the board, but with no labels in sight, I have no way to be sure. The schematics provided by Prusa also show test points for certain circuits, but these are not labeled either. Is there any way to get some sort of PCB diagram that shows the label of each component?
I don't quite understand. Doesn't your xBuddy board have the silkscreened component reference numbers? Or is the number missing specifically for Q10? You are looking for a 6-pin SOT363 package which contains two transistors, Q10A and Q10B.
Alternatively, just use your multimeter in continuity test (beeper) mode and search for the connection between the fan connector and all nearby SOT-363 packages. That's very quick -- provided the beeper responds quickly, as it should in a decent meter, you can just quickly swipe across all the packages. Or you probe each pin 6 directly, since we know that's where the PWM output in question is connected.
RE: Custom Ventilation System
Oh, and since you were asking for feedback on the buck converter: Your GND and +24V traces are very thin between U1 and C1, and also on the GND pin of J2. That's where the actual supply current flows for your whole board and the fan, so you want wide traces, as wide as the SMD pads they connect to.
Also use more than one via where vias provide the GND connection. Or better, avoid the vias entirely. If you rotate J2 by 180°, it can connect directly to the +24V and GND fills on the top side of the PCB. (Use vias to route the PWM and tacho signal if you have to; these don't carry power.)
The trace connecting to U1 pad 2 gets unnecessarily close to pad 1. If you revise the board and make that trace wider, make sure it leaves the pad at a right angle, straight away from the other pads.
Or buy a 24V fan which also spins at the right speed to make the firmware happy. 😉
RE: Custom Ventilation System
One more thing: The extra GND pads on J2 are the mechanical mounting points for the connector. One of them is already part of a larger ground fill, which gives it good attachment to the PCB substrate. The other should get a larger fill around it as well. -- Not sure whether through-hole variants of the Clickmate connectors are available, or versions with SMD connection pads but through-hole mounting tabs? If available, and if there is room on the PCB bottom, I always prefer through-hole variants for connectors since their mounting to the PCB is much more robust.
Speaking of ground fills: Where you have used them, you seem to have disabled the thermal relief gaps (between pads and fill) in Kicad? I would not do that; it makes those pads harder to hand-solder since the heat is wicked away quickly.
Finally, how about adding some mounting holes to the PCB? Even if you plan to use sticky tape for the present use case, or a receptacle in your 3D printed duct: Maybe you will reuse the PCB elsewhere and may need a different mounting scheme. There's ample space on the PCB and holes come for free, so why not? 😊
RE:
... The schematics provided by Prusa also show test points for certain circuits, but these are not labeled either. Is there any way to get some sort of PCB diagram that shows the label of each component? I'm not asking for manufacturing data, just something to help me figure out where in the world these teensy tiny components are located so I can diagnose them properly.
They have a pretty cool interactive BOM, here:
Please double-check this is the correct version, I found only one.
Some random thoughts:
Regarding switching converters, do check the layout section of the datasheet. Usually the coil is placed physically as close to the switcher as possible, and the same applies for the input capacitor (because there is a high-current / high frequency loop between both). Do keep the area under the loop small unless planning for "free radio transmitter included" 🙂
Keep those critical lines short and think about return path currents.
Vias cost nothing, use plenty, ideally with a ground via physically close to any via with AC component (again, to minimize the area of the spanned loop. Also means lower inductance => less AC voltage drop => fewer issues with unspecific ripple). And a few thermal vias - decide whether or not to place them on pad (can be problematic as they wick away solder in reflow)
Also check what the data sheet has to say on capacitors. E.g. there can be surprisingly high AC current component that causes heating via the cap's ESR 24/7.
Edit: See section 7.2.1 of your switcher's datasheet: "heavy lines must be kept short and ..."
RE:
Regarding switching converters, do check the layout section of the datasheet. Usually the coil is placed physically as close to the switcher as possible, and the same applies for the input capacitor (because there is a high-current / high frequency loop between both). Do keep the area under the loop small unless planning for "free radio transmitter included" 🙂
The PCB layout follows the datasheet suggestion pretty closely. Except for the very narrow traces I mentioned, I think it should be alright.
RE: Custom Ventilation System
OK, that is a reference design but it compromises exactly on those items I mentioned because it's for single-layer PCB.
Putting that into a WLAN-enabled product without e.g. shielding would raise some questions on EMI risk. E.g. the ground current path Cin-Cout when the coil keeps driving current through the diode. Lossy (not low-ESR) tantalum caps help but heat up under load.
Anyway, those were just thoughts looking at the board picture. For home use it'll work fine.
And, yes, as you pointed out, the input to the switcher is unnecessarily narrow.
RE: Custom Ventilation System
I've set up extraction (using a cheap 100mm fan advertised for mini greenhouse use) and have issues with asa (and petg) and warping I suspect are caused by pulling from the enclosure. Need to do more testing to verify that's the cause, as the prints are susceptible to warping. Sample size of one print so far, warped with, no warp without. System works well though. Also I agree with the suggestion on fan placement: it should pull and be at the exit of the system.
RE: Custom Ventilation System
titusou, I was wondering if that might be necessary as well, I may end up adding another fan at the wall end for the same reasons.
I don't quite understand. Doesn't your xBuddy board have the silkscreened component reference numbers? Or is the number missing specifically for Q10? You are looking for a 6-pin SOT363 package which contains two transistors, Q10A and Q10B.
Alternatively, just use your multimeter in continuity test (beeper) mode and search for the connection between the fan connector and all nearby SOT-363 packages. That's very quick -- provided the beeper responds quickly, as it should in a decent meter, you can just quickly swipe across all the packages. Or you probe each pin 6 directly, since we know that's where the PWM output in question is connected.
I don't see any silkscreened reference numbers, I may not have looked closely enough. I'll try the multimeter approach next time - I got consumed by tunnel vision haha!
Oh, and since you were asking for feedback on the buck converter: Your GND and +24V traces are very thin between U1 and C1, and also on the GND pin of J2. That's where the actual supply current flows for your whole board and the fan, so you want wide traces, as wide as the SMD pads they connect to.
Also use more than one via where vias provide the GND connection. Or better, avoid the vias entirely. If you rotate J2 by 180°, it can connect directly to the +24V and GND fills on the top side of the PCB. (Use vias to route the PWM and tacho signal if you have to; these don't carry power.)
The trace connecting to U1 pad 2 gets unnecessarily close to pad 1. If you revise the board and make that trace wider, make sure it leaves the pad at a right angle, straight away from the other pads.
Or buy a 24V fan which also spins at the right speed to make the firmware happy. 😉
This is some great feedback, thank you! This was one of my first PCBs I've made so I know I've still got a ton to learn. That last line was definitely my first thought, but I figured it'd be a great exercise for me to design a simple PCB as I've been wanting more experience with electronics design.
One more thing: The extra GND pads on J2 are the mechanical mounting points for the connector. One of them is already part of a larger ground fill, which gives it good attachment to the PCB substrate. The other should get a larger fill around it as well. -- Not sure whether through-hole variants of the Clickmate connectors are available, or versions with SMD connection pads but through-hole mounting tabs? If available, and if there is room on the PCB bottom, I always prefer through-hole variants for connectors since their mounting to the PCB is much more robust.
Good to know on those GND pads, I hadn't really considered the mechanical aspect, but it makes a ton of sense.
Speaking of ground fills: Where you have used them, you seem to have disabled the thermal relief gaps (between pads and fill) in Kicad? I would not do that; it makes those pads harder to hand-solder since the heat is wicked away quickly.
I think I noticed that when soldering in J1 - I do have thermal reliefs enabled but I must have misconfigured something there.
Finally, how about adding some mounting holes to the PCB? Even if you plan to use sticky tape for the present use case, or a receptacle in your 3D printed duct: Maybe you will reuse the PCB elsewhere and may need a different mounting scheme. There's ample space on the PCB and holes come for free, so why not? 😊
You know...I was thinking about this right after I ordered the boards! 😆 I think I had the idea that I'd print a little enclosure of some sort for it but didn't even stop to think how I'd mount it to an enclosure in the first place. Certainly some good food for thought for my next design!
They have a pretty cool interactive BOM, here:
That's pretty dang cool, but unfortunately it looks like that's just for the Prusa MINI. I wonder if they'll ever release something similar for the xBuddy/xBuddy extension? I sure hope so 😊
Some random thoughts:
Regarding switching converters, do check the layout section of the datasheet. Usually the coil is placed physically as close to the switcher as possible, and the same applies for the input capacitor (because there is a high-current / high frequency loop between both). Do keep the area under the loop small unless planning for "free radio transmitter included" 🙂
Keep those critical lines short and think about return path currents.
Vias cost nothing, use plenty, ideally with a ground via physically close to any via with AC component (again, to minimize the area of the spanned loop. Also means lower inductance => less AC voltage drop => fewer issues with unspecific ripple). And a few thermal vias - decide whether or not to place them on pad (can be problematic as they wick away solder in reflow)
Also check what the data sheet has to say on capacitors. E.g. there can be surprisingly high AC current component that causes heating via the cap's ESR 24/7.
Edit: See section 7.2.1 of your switcher's datasheet: "heavy lines must be kept short and ..."
Some more great feedback, thank you!
I've set up extraction (using a cheap 100mm fan advertised for mini greenhouse use) and have issues with asa (and petg) and warping I suspect are caused by pulling from the enclosure. Need to do more testing to verify that's the cause, as the prints are susceptible to warping. Sample size of one print so far, warped with, no warp without. System works well though. Also I agree with the suggestion on fan placement: it should pull and be at the exit of the system.
I was wondering if that would be an issue with how stable the chamber temp needs to be - I wonder if recirculating some of the warm air back into the chamber could be beneficial. I believe I've seen someone here mention trying that, might be worth a shot! Good to know on fan placement, I will consider that moving forward.
Thanks everyone for the advice and kind feedback! 😊
RE: Custom Ventilation System
Regarding the PWM and Tach:
You may need to check the different fan's datasheets, but does your fan use the same voltage levels as Prusa's blower (or other 24Vdc) fan for PWM and Tach? I haven't designed for fans so I'm not sure if there is a standard (TTL levels, drive voltage, or other) for fans across different drive voltages, or if each fan could be different.
See my (limited) designs on:
Printables - https://www.printables.com/@Sembazuru
Thingiverse - https://www.thingiverse.com/Sembazuru/designs
RE: Custom Ventilation System
Regarding the PWM and Tach:
You may need to check the different fan's datasheets, but does your fan use the same voltage levels as Prusa's blower (or other 24Vdc) fan for PWM and Tach? I haven't designed for fans so I'm not sure if there is a standard (TTL levels, drive voltage, or other) for fans across different drive voltages, or if each fan could be different.
I had looked into this as I was worried that I'd have to use a buffer gate or something to convert the signal levels - based on what I saw, both fans use a +5v PWM signal and +3.3v for the tach.
The strange part is the fan worked when I first connected it and the buck converter - of course the printer was throwing issues due to the incorrect RPM - but during my troubleshooting it stopped working, leading me to believe I blew something on the printer board.
I'll keep poking around with the multimeter (and maybe consider a different approach altogether based on some of the replies here 😋)!





