I’m sure quite a lot of you, as owners of a Voron Zero, will have seen this message appear at some point in time. Now as it states it is a soft limit but there is a reason computer nerds spend a lot of money on good cooling setups for their rigs. Electronics work better when cool, they last longer when cool and well cooling setups are cool!
You can see from the print below that my Pi was hitting 56-60C and it was doing it almost every print. There is a small heatsink that came with it installed but I was looking for a more robust solution. In addition I wanted to be able to push my steppers a bit harder so whatever solution I came up with needed to also cool the SKR. I couldn’t find a solution I liked so I ordered some parts and jumped into Fusion 360!
The BOM for this project includes what you would require to install the cooling but also adds a print chamber thermistor because you may as well add this now while wiring up the expander board! Some parts were sourced from local UK sellers so I’ve also included an AliExpress link for an equivalent product for international readers. As usual the first source for each item is the location I purchased from.
- 1 x Klipper expander [OneTwo3D Aliexpress]
- 1 x 8015 24V axial fan (quieter the better) [Amazon Aliexpress]
- 1 x cartridge style thermistor [Aliexpress]
- 4 x m3 inserts [Aliexpress]
- 4 x m3 20mm bolts
- 1 x m3 10mm bolt
- 2 x m2 6mm self tapping [Aliexpress]
- Hookup wire (size appropriately based on YOUR loads) [Aliexpress]
- 3M VHB tape [Aliexpress]
- 1 x modified electronics panel (Use existing and lasercut holes as local hackspace – (while I wait for the PR to be approved it can be found here))
If people are keen for this mod I have spoken to Funnsor and they may release a small batch of these modified panels if that would be the preferred option for people in the future. To be confirmed based on popularity.
- 1 x Fan cover (while I wait for the PR to be approved it can be found here)
- 1 x Klipper expander board mount
- 1 x Thermistor holder (while I wait for the PR to be approved it can be found here)
The first step was deciding on the fan I would use. Unfortunately all the spare fans I had were either small hotend style axial fans or radial blower fans. None of them seemed suitable so I started comparing fan sizes. I also wanted to make sure the part could be printed on a Voron Zero because well if you are doing this upgrade that is the printer you own (or at least it is part of your addiction…). The 8015 axial fan seemed like a good balance of size vs flow and many quiet models were available for low cost.
I Located a model for the 8015 fan I had selected on grabcad and imported the STEP file to Fusion 360. I already had a vision of a small backpack on the back panel as there isn’t much space inside the electronics bay. You can see a video of the modelling process below – it took around an hour realtime. I also made the decision to use m3 bolts and inserts because most Voron builders already have plenty of them to hand.
As promised the finished design fits nicely onto a Voron Zero build plate. CAD model can be found in this PR here until it gets merged into the user mods repo
Here is the fan cover finished and ready to be removed from the build plate.
In addition you will want to print the Klipper expander mount and the extended thermistor cartridge holder. It took me a while to find the neatest and easiest (didn’t have any roll in nuts and didn’t want to disassemble anything) way to mount a thermistor into the build. I wanted it to be roughly the height of the extruder. In the end I found this mod for mounting a thermistor and then modified it to give clearance with the mini ab assembly once installed. (while I wait for the PR to be approved it can be found here)
Adding the Thermistor in is dead simple. Tap the end of the left hand vertical Z extrusion if it is not already done. Push the thermistor into the holder and bolt the holder down. Then feed the wire through the umbilical opening and into the electronics bay area.
Installing the Klipper expander was more problematic. I had to relocate my Raspberry pi downwards to make room. Even then it is very fiddly getting access to the left most thermistor port but overall it fits well and isn’t too annoying to wire up. I finally took the opportunity to shorten my stepper motor wires as well while I was there – so take the hint do a little wire gardening if you were too lazy / nervous during your build! Leave enough length in your fan wire when you plug it in to allow you to remove the back panel. I will be adding an inline connector in the future to make removal of the panel much easier but have yet to get round to it.
Time to install the fan. I chose to have the air being pulled out of the electronics bay because axial fans are more effective at pulling than pushing air. Also I believed it would create the most even flow of air throughout the electronics bay and hopefully cool both my Pi and the SKR. The fan cover has holes for the inserts, Install these as normal. Remove the fans label, poke the wire through the hole in your electronics panel and bolt the lot together. You will notice the fan cover is slightly shallower than the fan this is to ensure you get a good clamp through all the parts of the assembly to hold things in place.
The method for replacing the back panel whilst removing the least number of clips fully is as follows. Place the printer on it’s front (on the edge of a table to avoid crushing the door handle), fully remove the upper right clip. Slide the panel in about half way up from right to left (when looking at the back of the printer) then slide the panel down through the middle right clip into the lower clips. Tight up the clips holding the panel in place. You then need to make sure the nut for the lower bolt on the upper right panel is in the right place before replacing that clip. It’s important you check now that the fan spins freely without touching anything in the electronics bay – I had to tidy my fan cable away behind the right hand side stepper to keep it from interfering.
There is a very good guide on getting the expander board up and running on the github page for it. Follow that and then make the printer.cfg and additional changes below. Past the following line into your printer.cfg
Create a new file called expander.cfg then paste the following into it. Be sure to adjust the thermistor information if you did not use the trianglelab one.
[mcu expander] serial: /dev/serial/by-id/usb-Klipper_stm32f042x6_2C0010000343564B39373620-if00 restart_method: command [thermistor Trianglelab-NTC100K-B3950] temperature1: 25 resistance1: 103180 temperature2: 150 resistance2: 1366.2 temperature3: 250 resistance3: 168.6 [temperature_sensor chamber_temp] sensor_type: Trianglelab-NTC100K-B3950 sensor_pin: expander:PA6 gcode_id=10 pullup_resistor: 4700 [controller_fan electronics_fan] pin: expander:PA0 max_power: 1.0 kick_start_time: 0.5
Temperatures of the pi and skr during the heat up phase stay below 35C.
Temps stabilise slightly higher during a print but significantly lower than without the cooling solution in place. It’s really good to see the pi temp kept down even though the fan is actually mounted directly over the SKR. The downside is my chamber temps are about 5 to 10 degrees cooler than the max I have previously measured and I suspect this plus the smell is because I am now sucking warm air out through the gaps in the panels from the main chamber (extruder wiring harness hole and 2 small access holes on the LDO backplate for the z axis bolts). I will need to look at designing some plugs to fill those holes and I’ve got a nevermore kit on the way to deal with the smell/fumes. As also mentioned earlier an inline connector will make removal of the electronics panel easier in the future and help avoid any wiring getting into the fan.
Support 3DP and ME! Help us keep producing tutorials, content and mods!