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

    Duet-Wifi Fans won't turn off

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    9
    40
    7.0k
    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.
    • dc42undefined
      dc42 administrators
      last edited by

      @kraegar:

      Thanks dc42 - so I should be OK to use the motor via the fan PWM outputs as long as I have a sufficiently rated flyback diode between the leads of the motor?

      The running current of 1A is well within the fan mosfet ratimg, but the startup current might be too high. Best measure the resistance with a multimeter, calculate the startup current, and compare it with the current rating on the mosfet data sheet.

      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
      • kraegarundefined
        kraegar
        last edited by

        4.5 ohms, measured through the motor at rest. Not finding a calculation for startup current, though.

        Co-Creator of the RailcoreII CoreXY printer
        https://www.thingiverse.com/thing:2407174

        1 Reply Last reply Reply Quote 0
        • W3DRKundefined
          W3DRK
          last edited by

          Unless you're able to "zero" your meter before measuring such a low value, figure about a quarter to half an ohms of resistance is in the probe leads themselves, so the motor is likely closer to about 4-4.25 ohms.

          Using Ohms law Volts = Current * Resistance, we can solve for current.

          So 12V = I (current) * R 4.25 ohms

          12V/4.25ohm = 2.82A

          That's about 2.8 to maybe 3 amps of in-rush current depending on your probes. That's obviously not the most accurate way of calculating inrush current, but it should be pretty ballpark.

          1 Reply Last reply Reply Quote 0
          • peridotundefined
            peridot
            last edited by

            As an aside, can I point out that this should serve as a warning to us all?

            When the MOSFET failed, it failed shorted, leaving the attached device running at full. For a fan, this is annoying, but for a heater a shorted MOSFET could start a fire. The board would happily detect an overtemperature condition, but it would respond only by commanding the MOSFET to shut off, which would do nothing. If the setup used PS_ON, and if the firmware triggered an emergency stop on overtemperature, the fire would be averted.

            1 Reply Last reply Reply Quote 0
            • elmoretundefined
              elmoret
              last edited by

              I would make the argument that heaters capable of auto igniting a fire shouldn't be used without direct full supervision, but that's just me. 🙂

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

                @W3DRK:

                Unless you're able to "zero" your meter before measuring such a low value, figure about a quarter to half an ohms of resistance is in the probe leads themselves, so the motor is likely closer to about 4-4.25 ohms.

                Using Ohms law Volts = Current * Resistance, we can solve for current.

                So 12V = I (current) * R 4.25 ohms

                12V/4.25ohm = 2.82A

                That's about 2.8 to maybe 3 amps of in-rush current depending on your probes. That's obviously not the most accurate way of calculating inrush current, but it should be pretty ballpark.

                The fan mosfet is rated at 4.4A for up to 5 seconds at 25C ambient temperature with 4.5V gate drive. The rating will be a little lower at 3.3V gate drive or if the board is warm, but probably still sufficient. If you want to reduce the inrush current, you could connect an inrush current limiting thermistor such as B57153S0200M0 in series with the pump.

                You definitely need to use a flyback diode when driving a brushed motor.

                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
                • kraegarundefined
                  kraegar
                  last edited by

                  I've ordered a pwm/mosfet board to drive the motor, so that'll keep it off the duet. I'll look into getting the mosfet on my duet replaced, and for now, just use the next fan channel.

                  Is there a way to make m106 default to fan1? Or do I have to force that in gcode?

                  Co-Creator of the RailcoreII CoreXY printer
                  https://www.thingiverse.com/thing:2407174

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

                    Currently there isn't a gcode to map fan channels. I am considering adding fan mapping on a tool-by-tool basis in a future firmware release.

                    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
                    • kraegarundefined
                      kraegar
                      last edited by

                      Alright. I've scripted it in my slicer to control P1, so no biggie.

                      Co-Creator of the RailcoreII CoreXY printer
                      https://www.thingiverse.com/thing:2407174

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

                        Fan mapping will be supported in 1.16 beta 11 using a new F parameter on the M563 command.

                        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
                        • kraegarundefined
                          kraegar
                          last edited by

                          @dc42:

                          Fan mapping will be supported in 1.16 beta 11 using a new F parameter on the M563 command.

                          Excellent, thanks.

                          Co-Creator of the RailcoreII CoreXY printer
                          https://www.thingiverse.com/thing:2407174

                          1 Reply Last reply Reply Quote 0
                          • peridotundefined
                            peridot
                            last edited by

                            @kraegar:

                            Alright. I've scripted it in my slicer to control P1, so no biggie.

                            Can I ask which slicer you used for this? I can't figure out how to make slic3r's fan control control anything but the first fan.

                            1 Reply Last reply Reply Quote 0
                            • kraegarundefined
                              kraegar
                              last edited by

                              Simplify3d has the ability to run post processing scripts on your gcode.

                              Co-Creator of the RailcoreII CoreXY printer
                              https://www.thingiverse.com/thing:2407174

                              1 Reply Last reply Reply Quote 0
                              • kraegarundefined
                                kraegar
                                last edited by

                                So I got this: https://amzn.com/B01J78FX9S

                                Thinking I could connect it to 12v in, and run the 12v out to the motor, and connect the fan control to the signal / ground on it.

                                Unfortunately, it's always on when connected that way. Anyone know if I can use a PWM controller like this to accomplish what I'm trying to do?

                                Co-Creator of the RailcoreII CoreXY printer
                                https://www.thingiverse.com/thing:2407174

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

                                  @peridot:

                                  @kraegar:

                                  Alright. I've scripted it in my slicer to control P1, so no biggie.

                                  Can I ask which slicer you used for this? I can't figure out how to make slic3r's fan control control anything but the first fan.

                                  You can run scripts from Slic3R but that's a bit complex for this task. What I would do is slice as normal then just use a simple search and replace using notepad++ to change the P0 commands to P1.

                                  HTH

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

                                  1 Reply Last reply Reply Quote 0
                                  • kraegarundefined
                                    kraegar
                                    last edited by

                                    In s3d the "script" is:

                                    {REPLACE "M106" "M106 P1"}

                                    Co-Creator of the RailcoreII CoreXY printer
                                    https://www.thingiverse.com/thing:2407174

                                    1 Reply Last reply Reply Quote 0
                                    • botundefined
                                      bot
                                      last edited by

                                      @kraegar:

                                      In s3d the "script" is:

                                      {REPLACE "M106" "M106 P1"}

                                      In S3D, if you go to Tools>Firmware Configuration>FFF you will be given some fields to alter what the fan on and off commands are. Presumably, you could add the P1 thing there, but I've never tried it.

                                      *not actually a robot

                                      1 Reply Last reply Reply Quote 0
                                      • kraegarundefined
                                        kraegar
                                        last edited by

                                        Ah, nice, that's even easier. Thanks!

                                        Co-Creator of the RailcoreII CoreXY printer
                                        https://www.thingiverse.com/thing:2407174

                                        1 Reply Last reply Reply Quote 0
                                        • elmoretundefined
                                          elmoret
                                          last edited by

                                          @kraegar:

                                          So I got this: https://amzn.com/B01J78FX9S

                                          Thinking I could connect it to 12v in, and run the 12v out to the motor, and connect the fan control to the signal / ground on it.

                                          Unfortunately, it's always on when connected that way. Anyone know if I can use a PWM controller like this to accomplish what I'm trying to do?

                                          It looks like that expects the PWM on the high side, not the low side. The Duet switches the low side.

                                          I think you could attach a ~10k resistor between the fan terminals, run - from the fan to the + input of the board you bought and - from the power supply to the - input of the board you bought, but I'd have dc42 confirm that before proceeding.

                                          You'd also need to invert the PWM signal in firmware/g-code if you do that.

                                          1 Reply Last reply Reply Quote 0
                                          • kraegarundefined
                                            kraegar
                                            last edited by

                                            Yeah, I ordered a different board. I have a workable solution in place for now.

                                            Co-Creator of the RailcoreII CoreXY printer
                                            https://www.thingiverse.com/thing:2407174

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