Hotend fan is either 100% or off



  • Okay, so I am running a Slice Engineering Mosquito Hotend, which has a VERY annoying 25mm fan, they even state on their website that you should turn its RPM down to about 70% for lower temp filaments like PLA.
    Sounds like a great use for the filament-specific config.g!
    My problem is that I cant figure out how to do it with the Duet, I just got it yesterday and I really tried googling how to program it right, but couldnt find just what I wanted to do.

    I'm using a Duet 2 Wifi 1.04 running firmware 3.01-RC3
    And this is my super long PLA config.g minus the PIDs:

    M106 P0 C"Mosquito" H1 T50 S0.7
    

    My understanding is that this should create a fan named Mosquito that belongs to Heater 1 that will trigger at 50C and have a PWM of 70%,
    but it just does the same as the boards normal config, which is 100% fan after 50C



  • From wiki:
    Pnnn Fan number (optional, defaults to 0). (In RRF_3 relates to the fan number created by M950, NOT the fan pin number on the board)

    Hnn:nn:nn... Enable thermostatic mode and select heaters monitored. H-1 disables thermostatic mode. (In RRF_3 relates to the sensor number(s) created by M308, not the temperature sensor pin number on the board)



  • @8347 Usually Fan 0 is the part cooling fan and fan 1 is the hot end fan. You can map different fans to tools and use them as part cooling fans but let's keep to the defaults at least for now. So first you need to define the fan using M950 so you should have something like M950 F1 C"pinName". Then you map that to the heater using something like M106 P1 H1 C "Mosquito" T 50 S0.7. It's slightly confusing because M950 use "F" for the fan number but M106 uses "P".



  • @deckingman I have the M950 in my system config.g so I shouldnt have to have that in my filament config.g do I?
    Also the M106 you send looks only rearanged to what I am using



  • @8347 Any later instance of a G or M code will overwrite a previous instance. When you first turn on the printer, config.g gets read so if you have the correct M950 in your config.g then you don't need the same command anywhere else.

    The M106 I suggested should work with the M950 that I also suggested, but I had/have no idea what M950 you were/are using, that's why I made my suggestion. The main difference with your M106 is that you were using P0 which is normally the part cooling fan, not the hot end fan.

    It may be that running the fan at 70% PWM makes no audible difference. To check if the fan is using the PWM value that you expect, send M106 P1 via DWC with no parameters and it will report the pwm values that is being used (for fan 1).

    Edit. You can play around with PWM values by sending M106 P1 Snn at any time . Once you've found a value that you like, make that "permanent" by putting it in your config.g.



  • @8347 You may also find section 5 of this post interesting https://somei3deas.wordpress.com/2020/03/09/my-6-input-mixing-hot-end-v2-part-3/. Essentially I'm attempting to develop a 6 input mixing hot end which uses Slice Engineering Mosquito heat break assemblies. I found that, because of the very low thermal mass, the heat breaks need very little cooling. In my case, I can adequately cool 6 heat sinks using a very low flow (and almost inaudible) fans. That may, or may not, read across to a single heat break Mosquito but if low PWM doesn't do what you want, you might consider using a low flow, quiet fan. (But unless you do some similar tests to mine, don't blame me if it doesn't work).


  • administrators

    @deckingman said in Hotend fan is either 100% or off:

    @8347 Usually Fan 0 is the part cooling fan and fan 1 is the hot end fan. You can map different fans to tools and use them as part cooling fans but let's keep to the defaults at least for now. So first you need to define the fan using M950 so you should have something like M950 F1 C"pinName". Then you map that to the heater using something like M106 P1 H1 C "Mosquito" T 50 S0.7. It's slightly confusing because M950 use "F" for the fan number but M106 uses "P".

    To add to that, any M106 commands in the GCode generated by your slicer will map to fan 0 by default. That's why you should use fan 0 for print cooling and fan 1 for hot end cooling.



  • @deckingman Well I feel stupid now, it did change RPM, but it effectively did 0 for noise levels, no clue why they even tell you to try the -30% then.
    Checked the RPM by holding a piece of paper lightly against the blades and measuring the frequency using my mic



  • @dc42 Oh I must have misread that in the wiki. But its perfectly working with my old mainboards Cura profile and printing great, only "issue" was the noisy fan.
    Should I still remap it?


Log in to reply