"Spriya" - High Efficiency Anet A8 Fan Duct

by lokster, published

"Spriya" - High Efficiency Anet A8 Fan Duct by lokster Feb 24, 2017


Design Tools


Use This Project

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

43048Views 9443Downloads Found in 3D Printer Parts


If you use this fan duct & think it makes your prints look better, don't forget to TIP! ;)

The story

I designed this fan duct as a 100% free & open source alternative to another one which was very good, but unfortunately it's license was preventing me from modifying it the way I see fit & share it freely.
So I started Blender, and made my own from scratch in a couple of days. One that I can share freely with the community, so anyone can use it, remix it or trash it - in any order ;)
The fan duct works very good for me, but I give you no warranty that it will work for you.

Highlights of this fan duct:

  • The most important: it's more effective compared to the semi-circular design, and A LOT more effective than the stock Anet A8 fan duct.
  • it's quieter, compared to the stock & the semi circular design
  • it does not block the view, and you can see your nozzle tip
  • it uses my own attachment design, and once it's inserted onto the fan, it's impossible to fall off. Forget about the tape or glue for securing your "always falling" fan duct.
  • it blows more air, compared to the other duct designs I tested. Instead of concentrating "on the tip of the nozzle", the air flow is wider, and separated at 2 flows at approximately 90 degrees. This way it cools wider area, even if the nozzle moves away from the "point of interest".
  • when mounted & tuned properly using PID Auto Tune (described below), it does not cool the heat block, and the temperature is very stable - plus/minus 0.5C.
  • VERY lightweight - just 3 grams, compared most of the other fan ducts which weigh 4-6 grams or more! So even if you find out it's trash, you've lost the material for just 1/6 3D Benchie or one calibration cube :)
  • open source design, made with open source software - I am releasing the original design in .blend format, which you can load in Blender and make modifications. You are then completely free to release any remixed designs you made! In fact, it will be great!
  • the mesh is relatively low-poly, so it's easy to edit in blender if you want to make your own adjustments.


I used the Marvin Key Chain as a test object - http://www.thingiverse.com/thing:215703.
The print settings were as follows:

  • layer height 0.2mm
  • shell width 1.2mm
  • temperature 190C (PLA)
  • print speed 30mm/s outer shell, 60mm/s inner shell, 100mm/s travel
  • no infill
  • print acceleration 800mm/s^2, travel acceleration 1600mm/s^2
  • the objects "back" side was facing to the back of the printer (towards Y MIN), so it was prone to "sagging" on the lower layers (true for any spherical object).

Test Results

  • the stock fan duct - a lot of sagging on the back, and left/right sides of the model (terrible)
  • the "Semi-Circular" fan duct - some sagging on the back, and just 1-2 layers on one of the sides
  • "Spriya" design (this fan duct) - (almost) no sagging at all, with just two tiny irregularities - two "dots" on the back side of the model.
    Check out the photos to see a comparison.
    I have also tested with 3D Benchy - placed so the bow of the ship is facing to the right. The results were consistent, and in fact even better: sagging on bow with the stock fan duct (and some layer irregularities); just a little sagging with the semi-circular design; and absolutely no sagging or defects with "Spriya".

Tuning your heater using PID Auto Tune

This step is very important, so don't blame the fan duct if you have not performed it and you are getting bad results :)
Every time you install a new fan duct, it's highly recommended to perform the so-called "PID Auto Tune" procedure on your heat block. It's performed very easily - when your printer is cold, connect it to your PC, and start your preferred program that allows you to send GCODE commands directly to your printer. You can use Pronterface (http://www.pronterface.com/) or whatever you prefer (some slicers have this function built in).
Next, decide what's your preferred print temperature - in my case it's 190C.
You will also have to turn the fan ON.
Execute the following GCODE command to turn it on:

M106 S255 

Now run the PID auto tune GCODE command (replace "190" with whatever temperature you use):

M303 E0 S190 C8

It will respond with
Info:PID Autotune start

Your printer will go through 8 cycles of heating / cooling, so it will take a couple of minutes.
In the end, you will get a response, that looks something like this:

bias: 164 d: 90 min: 188.73 max: 191.76
Ku: 37.70 Tu: 20.50
Classic PID
Kp: 22.62
Ki: 2.21
Kd: 57.96
Info:PID Autotune finished ! Place the Kp, Ki and Kd constants in the Configuration.h or EEPROM

Copy this response somewhere, otherwise it will quickly get lost in the idle "wait" messages.
Now go to your printer's Configuration -> Extruder menu, and set the control type to PID. Next, set the P value to match the Kp, I to match Ki, and D to match Kd.
Finally, save your settings to the EEPROM.
This is how it's done with the Repetier firmware. It should be almost the same with the stock Anet firmware, and similar with Skynet3D (Marlin)
When you have tuned your heater properly, the temperature will fluctuate by just plus/minus 0.5 - 1C and will be very stable.


  • Actually try it before starting to philosophize whether it's effective or not :)
  • Read below to find out the recommended print settings
  • To mount the fan duct, you have to loosen the screws of your fan a bit, insert the duct, and tighten them again.
  • The name "Spriya" is a Bulgarian dialect word, and means "strong wind", "vortex", "blizzard" etc ;) It's a joke.
  • Check out some of my other open source stuff at http://lokspace.eu
  • If you have problems slicing / printing the normal version, try the "thick walls" version - "Spriya - Anet A8 Fan Duct - Thick Walls.stl" found in the archive (it has 1.2mm walls, but it's still lightweight).

    Don't forget to post "I made one" photos! Your input is welcome!

Print Settings


Anet A8










I used Cura 2.4 to print this.
Check the pictures to see how you should lay the model down when printing (rotate it 90 degrees along the X axis, and allow supports - as shown on the fifth picture. Only the attachment part needs a bit of support, so you can set the "Support Overhang Angle" to something high like 80.
You also need to set the support placement to "everywhere", and support type to "concentric".
Support density of 15% works OK. Be careful when removing the supports afterwards!
Without support, the upper part of the attachment might sag a bit, but it will still work.

More from 3D Printer Parts

view more

All Apps

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

With great difficulty I finally succeeded in make the PID adjustments
Thanks a lot for the knowledge

Made this and now all my prints look very clean and awesome on one side and then like total crap on the other, anyone know how I can fix this? I did the PID process and everything but I am still running into the problem.

Any recommendations of an x-carriage or mount for the radial fan? I can't mount the radial fan on my carriage, no place for it.

Did you make an "inside" version, something like this... https://www.thingiverse.com/thing:2322182

Semi-Circular Anet A8 Fan Duct for Don1337's carriage
by Murkser

some tips for pid tune? because every day it shows me another numbers :/

It's normal :) All of them should work fine. Just make sure your heatbreak (throat) is not inserted too deep and you are not cooling the heat block.

and what position of z axes during pid tune? 0 or somewhere far from bed? :)

somewhere 0 should be fine

I find that the wall where the slot is cracks very easily. If that were at least 50% thicker, I think that would help keep that in one piece. I've cracked my 2nd one and going to glue it.

It's the usual thing with fans. People forget that with the A8, the height of the nozzle will depend on how much you screwed it in during your build. And since the instructions don't tell you how much to screw it in, each printer is likely to be different. I personally screwed my second hot end in further, to make inserting the filament easier.

So, height of duct to fan nozzle will always vary. It's just one of those things, because of a printer you build yourself from a kit. Just remember the money you saved doing it!

It would be good if you showed a photo of the duct from the side, so we can see the height it should be, compared to the nozzle. Thanks.

This air blower made a huge difference on the quality of my parts. The pid calibration is also very useful. Thank you.

May 26, 2017 - Modified May 26, 2017

Printed it this week and it is great. The only problem is the thermal runaway i get, when the fan works with more than 30%. The bottom from this duct is just 0,2mm above the nozzle. So my heatblock should not be cooled :/
Pid Tuning was also done after printing this.

I'm not sure if this has been discussed but, is there a way to print this without the supports or helpers covering the nozzles? I was able to peel off the ones from the front easily, but I cracked the part that mounts to the blower trying to get the ones on the top inside....

I printed the thin wall version without supports. Flip it 90 degrees so that the ducts are vertical, I had a few minor stringing issues but the result was good and fan noise has been eliminated. Thanks for sharing this!

I can't slice this with Cura 2.5 - laid on the side as suggested the top of the fan insert part does not get sliced by cura, it's plain left open.
Repetier 2.01 with Slic3r Prusa Edition renders it OK but generates horrible support structures which leave out a major part of the fan insert 'roof' thus making it a challenge to print that section.
I was able to print a usable version only with repetier/slic3r, but cura definitely generates better support structures...

Could you share your complete set of cura parameters for a successful print ?

May 15, 2017 - Modified May 15, 2017

Seems to work really well but this does blow more air on the hotend which causes a big temp drop. (mine was running 20c below spec) make sure you recalibrate as descibed after attaching this duct once you do you will be very happy with the results

I was able to print with no supports. Just had to rotate 90 degrees so the flat back piece was pointing down

I can't get my PID autotune to complete it never gets up to tmp. What were your PID values? I am thinking if I can put something in similar to the final value then PID Autotune can run properly. Also are you running your fat at 100% (255/255)? Thanks!

Most likely your heat block is too low and the fan duct cools it. Some people have this problem. Make sure the duct does not blow on the heat block.

Thick one with 0.2mm cut off bottom object in Cura will make its first layer correctly stick to the base, finally I got it.

I managed to print it with only a few minor support issues due to Repetier/Cura setting it up to attach the supports too strongly to the duct. Worked good enough the first time that it only needed a little sanding because of the mentioned support issues but this thing solved a major problem where I was having curling on the rear of my prints due to the basic one-direction fan duct that came with the Anet A8 that I received not cooling the back of my prints and it having difficulty printing any of the circular ducts.

To summarize: This thing is awesome, but make sure you print with supports!

This thing is virtually impossible to print - not sure how everybody is printing this but it's so uneven off the bed my supports are getting all screwed up.

Thank for sharing this, it's the best fan duct for the A8. My remix for an E3d V6 setup: http://www.thingiverse.com/thing:2305596

Spriya for E3D

Saw a mod for the extruder fan to change it to an 80mm computer fan, I would be great if I could still use this duct with that. Only problem is the mounting system here will not work with that because it needs to be like the original mounting system.

Would it be possible to have a thick-wall version with the original mounting style in case I did use the fan conversion? That particular fan is very loud and annoying.

could anyone provide me with proper settings to print it in S3D?
I don't seem to get it done right, my last print just broke while I tried to remove the support.
The support was everywhere in the inside and it was impossible to remove it without breaking the wall of the print itself :/

turn it 90 degrees and manually set support inside the part that attaches to the fan. that is the only part wich needs some support. or you could try to print at default angle and set support at only touching buildplate.

Apr 20, 2017 - Modified Apr 20, 2017

simply amazing

why with this fan duct the temperature of the hotend drops 10C when fan turn on?

did you do the pid autotune? also maybe try turning it on 1 mm into the print to prevent air circulating to the block.

A couple of possible reasons

  • you need to do PID tune
  • maybe your dimensions are different. Some people seem to have longer nozzle throats (or maybe not screwed enough)
  • the fan is mounted a bit differently, which results in fan duct cooling the hotend.
    On my setup, the tip of the fan duct is ~4mm above the tip of the nozzle, and it works flawlessly - the temperature is very stable - plus/minus 0.5-0.8C after the PID tune, which is perfect.

i dont understand how to use the pid tune..

thanks for reply

do you have your hot end on a separate mosfet? I read that the standard board mosfet isnt strong enough to keep the hotend on stable temps.

Comments deleted.
Apr 13, 2017 - Modified Apr 13, 2017

I printed this fan duct, but is not compatible for Anet A6, somebody has adapted this design??

My printer has no Config->extruder settings.
I can use gcode to set pid. Which gcode should I use: m301 for extruder or m304 for bed? Also, how to get current values via gcode and how will I know if it worked?

What do you suggest for support structure now that concentric is no longer available in Cura?

in Cura I only see support types lines and Grid, not concentric.
which should I use?

in case anyone was wondering line worked better

Thanks. :)

I've tried all ducts, and this one is by far my most favorite and most reliable. Also, having a Bulgarian name is an added bonus, given that I grew up in Bulgaria :) Thanks for sharing!

Thank you, this was the first thing I printed after my test print when I got my new Anet A8. It printed with minimal sagging and has been very effective.

Is there any chance you could publish a version with custom supports added inside the body so that no others are needed? I think most people could print it without further support if the bridging over the main chamber was supported.

Doesnt print fails everytime

I suspect some people's printers/slicers have problem with the thin walls, because you are not the first with this problem. Would you be interested to test it again if I upload a version with thicker walls so I can confirm this is the cause and update the description?

I printed the this version and it worked, but there was a tiny hole near the end of the duct. I would like to try the thicker version

I'm trying to slice in Slic3r and I always end up with small gaps near the tops of the fan ducts. I'd be willing to give a thicker-walled version a try.

You can see the gaps here:

I have just uploaded "Spriya - Anet A8 Fan Duct - Thick Walls.stl". It has 1.2mm walls, and should be easier to slice / print.

Thanks for the design, I will print this since the big circle one (work) but scrapped one of my print because the circle is to near the layer, when a little glitch append it can touch the fan duck and ruin the print lol

Comments deleted.
Mar 16, 2017 - Modified Mar 16, 2017

may I ask what your cura settings are I just got a new anet a8 and every time I print the print is messed up and I'm super confused because it took me many hours to build

I've tried printing this twice now but it always seems to get messed up on the right duct half way through. Have you heard of this issue from anyone else, and if so was there a solution? Picture is linked below.


Apr 24, 2017 - Modified Apr 24, 2017
snellejelle99 - in reply to Devined

print it as the model loads. dont rotate it. I printed with grid support and a 10 line Brim that worked for me at least.

Mar 12, 2017 - Modified Mar 12, 2017

The print turned out just fine (no supports at all since I couldn't figure out where to adjust those specific support configurations you mentioned in your description) and I did the PID Auto Tune but it seems to me that the air coming out is pointed too high?! I already adjusted the Hotend to be higher and spinning it any higher would resolve in the ducts being at a lower position then the hotend itself.
I'm printing at 200°C (PLA) and didn't have any temperature issues before but now it seems that this temperature can't be reached anymore. Apparently it goes to ~198° and constantly stays there though in octopi I can see that my target Temp is 200°C.

Apart from that the print results are very good. Though I don't have any exact comparison to the 360° Fan Duct I was using before

Just send me a photo from the left side of the hotend, so I can see how it looks compared to mine, and I will make you a custom version ;)

Just printed one because you can never have enough fan-ducts. ;-)
First observations:
-Supports were also printed at both ends of the duct tubes, i.e. also internally.
-Also the supposedly open slot in the side was printed shut on both sides.
Note that this could be due to my inexperience but I followed the print setting guidance to the letter.
-The wall thickness is insufficient which results in a rather fragile piece.

Not sure if I'm actually going to use it.
I'm currently using a similar one from Leo_N and I have no complaints.

From the photo of your "make", it looks like you printed it without orienting it correctly (this is mentioned in the description). The model MUST be rotated -90 degrees along the X axis in your slicer (as shown on the fifth photo), otherwise it won't print well.

Mar 7, 2017 - Modified Mar 7, 2017

remixed to be 5mm lower so it would work with my machine. The threaded rod between my hot end and my X-Carraige is 5cm longer than the original. http://www.thingiverse.com/thing:2159432

Thank you for putting this design out there for us to tweak.

Spriya Remix, 5mm lower than original for longer extruder feed screws (heat break)

what program did you use to remix? I have a modified e3d hotend and thus the hotend middle position relative to the fan is different...

The support density is listed as 100% in the built in data and 15% in the paragraph you typed. It seems like 15% is the correct answer but I figured I would check before I printed this. Looks like a great design. Thanks for creating and posting it.

You have mistaken. The infill density is 100%, and the SUPPORT density is 15%.

got it, thanks.

First of all - just by putting my finger below the nozzle this fan feels much stronger than any other I tried.

Just 1 thing to add to the PID instructions - after you get the success response, you should copy it.
I did this with octoprint, got the finished message, went to configuration -> extruder -> control and changed it to PID and the console already had too many other incoming messages that the results were gone and I had to run it again.

Great job with this design!

Mar 4, 2017 - Modified Mar 4, 2017
lokster - in reply to adamtal

Yes, you are right - it's best to copy the final response with the PID values, otherwise it might get lost in the idle "wait" messages in the log.
I will update the description, thanks!

with octopi you can just turn autoscroll off to stop it from being overwhelmed

hey i was wondering that pid test, t runs it withought activating the fan, so technically why would it matter if the fan is different?

Feb 28, 2017 - Modified Feb 28, 2017
lokster - in reply to Svolash

You are correct, I missed that in the guide. Updated.
You MUST turn the fan on before the PID auto tune, otherwise the auto tune is pointless :)

If I put this on it hits my hothead.

It works on my stock Anet A8. Maybe your dimensions are different? Can you upload a photo somewhere so I can see the problem?