Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Thermostatic controlled fan coming on at 50%

    Scheduled Pinned Locked Moved
    General Discussion
    7
    37
    2.3k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Phaedruxundefined
      Phaedrux Moderator
      last edited by

      Can you test S255 instead of S1?

      Z-Bot CoreXY Build | Thingiverse Profile

      richardmckennaundefined 1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators @richardmckenna
        last edited by

        @richardmckenna, I think you have a M106 P1 S0 command somewhere, or possibly you have a F1 parameter in one of your M563 commands and a M107 command in the file you are printing.

        Duet WiFi hardware designer and firmware engineer
        Please do not ask me for Duet support via PM or email, use the forum
        http://www.escher3d.com, https://miscsolutions.wordpress.com

        1 Reply Last reply Reply Quote 0
        • richardmckennaundefined
          richardmckenna @Phaedrux
          last edited by

          @Phaedrux same with S255

          @dc42 ok I have an interesting development.

          I don't have any M106 P1 S0 commands anywhere I do have M106 P0 S0 in my slicer start and end gcode. I'm using Simplify3D

          I do have M563 P0 S"Hemera" D0 H1 F1 for my tool definition but no M107 commands anywhere.

          So I have it set with this at the moment

          M950 F1 C"!out4" Q500
          M106 P1 S255 H1 T45 C"Hemera"
          

          If I increase the temperature it comes on at 100%

          If I let it cool then start a print, when it gets to temperature it starts at 50%. If I then cancel the print the fan then goes to 100% without me doing anything.

          1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators
            last edited by

            I think there is something in your print file that is causing it. Please post the first 50 lines or so, not counting the comments at the start.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            richardmckennaundefined 2 Replies Last reply Reply Quote 0
            • richardmckennaundefined
              richardmckenna @dc42
              last edited by richardmckenna

              @dc42 right, getting somewhere 🙂 Where is that first M106 S0 coming from? There must be some extra settings in Simplify3D somewhere.

              G90
              M83
              M106 S0
              M140 S70
              M190 S70
              M104 S230 T0
              M109 S230 T0
              ; My start gcode
              M106 P0 S0 ; Turn part fan off
              G28 ; Home all
              ;G32 ; True Bed Levelling
              G0 X0 Y0 F9000 ; Go to front
              G0 Z0.15 ; Drop to bed
              G92 E0 ; zero the extruded length
              G1 X200 E25 F500 ; Extrude 25mm of filament in a 4cm line
              G92 E0 ; zero the extruded length
              G1 E-1 F500 ; Retract a little
              G1 X220 F4000 ; Quickly wipe away from the filament line
              G1 Z0.3 ; Raise and begin printing.
              ; process Process1
              ; layer 1, Z = 0.450
              T0
              G1 E-1.0000 F1800
              ; feature skirt
              ; tool H0.450 W0.480
              G1 Z0.450 F1002
              G1 X93.300 Y88.189 F7200
              G1 E1.0000 F1800
              G1 X98.689 Y82.800 E0.6844 F600
              G1 X191.311 Y82.800 E8.3176
              G1 X196.700 Y88.189 E0.6844
              G1 X196.700 Y102.431 E1.2789
              G1 X196.686 Y102.792 E0.0324
              G1 X196.566 Y104.310 E0.1368
              
              1 Reply Last reply Reply Quote 0
              • richardmckennaundefined
                richardmckenna @dc42
                last edited by

                @dc42 ok figured it out.

                I had to create a custom firmware config in Simplify3D which had custom gcode for turning the fan on/off.

                Then use that firmware config in my process. Never needed to do that before so didn't realise.

                Thank you and everyone else for all your help.

                deckingmanundefined 1 Reply Last reply Reply Quote 0
                • deckingmanundefined
                  deckingman @richardmckenna
                  last edited by

                  @richardmckenna That's still not making sense because M106 P0 refers to the part cooling fan not the hot end fan. To set the speed of the hot end fan it would need to be M106 P1. An M106 generated by the slicer with an S parameter but no P parameter will still control the part cooling fan(s) and not the hot end fan. To set the speed of the hot end fan, there needs to be an explicit P1 in the M106 command. Or alternatively and as DC said, if fan 1 gets mapped to a tool with an M563 P1.

                  Ian
                  https://somei3deas.wordpress.com/
                  https://www.youtube.com/@deckingman

                  richardmckennaundefined 2 Replies Last reply Reply Quote 0
                  • richardmckennaundefined
                    richardmckenna @deckingman
                    last edited by

                    @deckingman I'm not sure then as changing the slicer to set that first M106 S0 to M106 P0 S$ has fixed the issue.

                    Screenshot 2020-03-21 at 13.27.53.png

                    GCode

                    G90
                    M83
                    M106 P0 S0
                    M140 S70
                    M190 S70
                    M104 S230 T0
                    M109 S230 T0
                    ; My start gcode
                    M106 P0 S0 ; Turn part fan off
                    G28 ; Home all
                    ;G32 ; True Bed Levelling
                    G0 X0 Y0 F9000 ; Go to front
                    G0 Z0.15 ; Drop to bed
                    G92 E0 ; zero the extruded length
                    G1 X200 E25 F500 ; Extrude 25mm of filament in a 4cm line
                    G92 E0 ; zero the extruded length
                    G1 E-1 F500 ; Retract a little
                    G1 X220 F4000 ; Quickly wipe away from the filament line
                    G1 Z0.3 ; Raise and begin printing.
                    ; process Process1
                    ; layer 1, Z = 0.450
                    T0
                    G1 E-1.0000 F1800
                    ; feature skirt
                    ; tool H0.450 W0.480
                    G1 Z0.450 F1002
                    G1 X61.184 Y78.054 F7200
                    G1 E1.0000 F1800
                    G1 X61.811 Y77.602 E0.0694 F600
                    G1 X64.932 Y75.731 E0.3268
                    G1 X65.496 Y75.444 E0.0568
                    G1 X67.621 Y74.540 E0.2074
                    

                    When starting a print, it gets up to temperature and starts the fan at 100%

                    1 Reply Last reply Reply Quote 0
                    • richardmckennaundefined
                      richardmckenna
                      last edited by

                      In RRF3 does M106 without P default to P0 like it does in RRF2?

                      dc42undefined 1 Reply Last reply Reply Quote 0
                      • richardmckennaundefined
                        richardmckenna @deckingman
                        last edited by

                        @deckingman wait so if you look at my config in my original post.

                        should my tool definition be

                        M563 P0 S"Hemera" D0 H1 F1
                        

                        or

                        M563 P0 S"Hemera" D0 H1 F0
                        
                        deckingmanundefined 1 Reply Last reply Reply Quote 0
                        • deckingmanundefined
                          deckingman @richardmckenna
                          last edited by deckingman

                          @richardmckenna The latter - F0. The fan that gets assigned to a tool is the part cooling fan and this is normally fan 0. Slicers often insert M106 commands with an S (speed) parameter but no P parameter (fan number). When the firmware see such an M106 Snn (but no "P") command it will default to setting the speed for fan 0 unless you have explicitly assigned some other fan to a tool using M563.

                          Edit. So if slicer generated M106 commands start to control the hot end fan (Fan 1) then it means that somewhere, there is an M563 command that is assigning fan 1 to a tool, and that is overriding the M563 F0 that is in your config.g. Places to look for such a command are config_override, the slicer start gcode (doesn't look it that's the culprit though), any pre-print macros that get run (including homing files) or any tool change macros (tpre etc).

                          Ian
                          https://somei3deas.wordpress.com/
                          https://www.youtube.com/@deckingman

                          richardmckennaundefined 1 Reply Last reply Reply Quote 0
                          • richardmckennaundefined
                            richardmckenna @deckingman
                            last edited by

                            @deckingman ah right ok so I have read something wrong somewhere along the line.

                            Thank you for your help with this 😁

                            deckingmanundefined 1 Reply Last reply Reply Quote 0
                            • deckingmanundefined
                              deckingman @richardmckenna
                              last edited by

                              @richardmckenna It's easy to get confused with the distinction between tools and heaters when discussing fans. It also doesn't help that different commands use different parameters to refer to the same thing (i.e. F0 in M563 but P0 in M106). It would be nice if a heater was always an "H", a tool was always a "T", a fan was always an "F", an extruder was always an "E", a drive was always a "D" etc but for various reasons, that's not possible.

                              Ian
                              https://somei3deas.wordpress.com/
                              https://www.youtube.com/@deckingman

                              1 Reply Last reply Reply Quote 2
                              • dc42undefined
                                dc42 administrators @richardmckenna
                                last edited by

                                @richardmckenna said in Thermostatic controlled fan coming on at 50%:

                                In RRF3 does M106 without P default to P0 like it does in RRF2?

                                It's the same as in RRF2: if a tool is selected, and the M563 definition for that tool has an F parameter, then it uses the fan(s) specified in that F parameter; otherwise it uses fan 0.

                                Duet WiFi hardware designer and firmware engineer
                                Please do not ask me for Duet support via PM or email, use the forum
                                http://www.escher3d.com, https://miscsolutions.wordpress.com

                                1 Reply Last reply Reply Quote 1
                                • Schild0rundefined
                                  Schild0r
                                  last edited by Schild0r

                                  Just noticed this too on both of my machines although on the first machine this didn't create any problems so far with a few 100 hrs of print time. This thread helped me find the cause of this tho and I figured I'd put my findings here:
                                  I set up both machines using the rrf config tool. Turns out that the config tool assigns both the hotend fan and the part cooling fan to the tool so if then the slicer puts in any M106 command without a P parameter (which most don't by default) the hotend fan will be influenced too by that, down to the minimum fan speed of 50% for thermostatic fans that David mentioned above (which isn't actually reported in M106 btw)

                                  dc42undefined 1 Reply Last reply Reply Quote 0
                                  • dc42undefined
                                    dc42 administrators @Schild0r
                                    last edited by

                                    @schild0r said in Thermostatic controlled fan coming on at 50%:

                                    Turns out that the config tool assigns both the hotend fan and the part cooling fan to the tool ...

                                    It should only do that of you tell it to. If you think it is assigning the hot end fan to the tool without you telling it to, then please post a screen shot of the relevant pages of the config tool, and also the generated config.g file.

                                    Duet WiFi hardware designer and firmware engineer
                                    Please do not ask me for Duet support via PM or email, use the forum
                                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post
                                    Unless otherwise noted, all forum content is licensed under CC-BY-SA