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

    Any PWM Fan not working

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    5
    20
    2.8k
    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.
    • tommertensundefined
      tommertens
      last edited by

      Thanks for linking the image properly!

      In my config.g I have the below for M563 but nothing for M106. Should this be in the config.g file or in another?

      ; Tool definition
      M563 P0 D0 H1 ; Define tool 0
      G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures
      ;*** If you have a dual-nozzle build, un-comment the following 3 lines
      M563 P1 D1 H2 ; Define tool 1
      G10 P1 S0 R0 ; Set tool 1 operating and standby temperatures

      Cheers,

      Tom

      1 Reply Last reply Reply Quote 0
      • number40fanundefined
        number40fan
        last edited by

        https://duet3d.com/wiki/Connecting_and_configuring_fans

        Yep, need to have an M106 to keep it from running as a temp sensitive fan.

        1 Reply Last reply Reply Quote 0
        • number40fanundefined
          number40fan
          last edited by

          https://www.duet3d.com/forum/thread.php?id=2471#p23167

          If you look at that thread, he has 40x40x20 fans as well, but had to add the F10 at the end of his M106.

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

            @tommertens:

            Hi all,

            I have not been able to get any PWM fan working as a part cooling fan.
            I have tried all PWM fan outputs, ensuring that fan 1 and 2 aren't thermostatically controlled.

            The fans work when plugged into the 'always on' section but don't when not.

            Pictured are the fans in question, two 40mm x 20mm fans from Noctua.

            Thanks in advance,

            Tom

            Not all fans run happily with PWM. IIRC the default PWM frequency is 250Hz but lowering it to 100 or less may be what is needed for those particular fans. For a print cooling fan you'd need something like M106 P0 S0.0 I0 F100 (or maybe even lower) H-1 in you config.g. This all assumes that the fans are connected to the main Duex board. The Duex2 and Duex5 do not support variable PWM frequencies. HTH

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

            1 Reply Last reply Reply Quote 0
            • T3P3Tonyundefined
              T3P3Tony administrators
              last edited by

              As Ian says, not all fans like PWM. Do they work on the PWM fan outputs when those are set to full on? M106 P0 S1

              www.duet3d.com

              1 Reply Last reply Reply Quote 0
              • tommertensundefined
                tommertens
                last edited by

                These fans were sold as PWM capable. Will try adding the M106 command to the config once I'm back in the office. Will let you know how it goes.

                Cheers all!

                1 Reply Last reply Reply Quote 0
                • tommertensundefined
                  tommertens
                  last edited by

                  Adding the M106 command didn't do anything unfortunately.

                  1 Reply Last reply Reply Quote 0
                  • number40fanundefined
                    number40fan
                    last edited by

                    F10 at the end?

                    1 Reply Last reply Reply Quote 0
                    • tommertensundefined
                      tommertens
                      last edited by

                      Yep, as below.

                      M106 P0 S0.3 I0 H-1 F10 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
                      M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
                      M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

                      1 Reply Last reply Reply Quote 0
                      • number40fanundefined
                        number40fan
                        last edited by

                        I don't have particular fan to try, but I do have a 40x40x30.

                        M106 P1 H-1
                        M563 P0 D0 H1 F0:1 is what I have in my config and I was able to PWM control it. Might be worth a shot.

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

                          @tommertens:

                          Yep, as below.

                          M106 P0 S0.3 I0 H-1 F10 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
                          M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
                          M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

                          You have fan 0 set at 30% PWM and fans 1 and 2 in thermostatic mode. Not a good test. Try them in non thermostatic mode at 100% speed:

                          M106 P0 S1 H-1
                          M106 P1 S1 H-1
                          M106 P2 S1 H-1

                          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
                          • deckingmanundefined
                            deckingman
                            last edited by

                            @tommertens:

                            Yep, as below.

                            M106 P0 S0.3 I0 H-1 F10 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
                            M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
                            M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

                            As Tony asked, does it work if you set full on by using S1?

                            If that works, then you could try S0.3 but use the B parameter to give it a blip https://duet3d.com/wiki/G-code#M106:_Fan_On

                            Edit. I was typing at the same time as David

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

                            1 Reply Last reply Reply Quote 0
                            • tommertensundefined
                              tommertens
                              last edited by

                              It doesn't work with S1 either. Neither did the F0:1 line.

                              1 Reply Last reply Reply Quote 0
                              • tommertensundefined
                                tommertens
                                last edited by

                                Here is my config.

                                ; CoreXY sample config file for dc42 Duet firmware
                                
                                M111 S0                             ; Debug off
                                M550 PMyCoreXY				        ; Machine name (can be anything you like)
                                M551 Preprap                        ; Machine password (used for FTP connections)
                                M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED ; MAC Address
                                ;*** Adjust the IP address and gateway in the following 2 lines to suit your network
                                M552 S1 P0.0.0.0						; IP address (0 = use DHCP)
                                M554 P192.168.1.1                   ; Gateway
                                M553 P255.255.255.0                 ; Netmask
                                M555 P1                             ; Set output to look like Marlin
                                M575 P1 B57600 S1					; Comms parameters for PanelDue
                                
                                ; Machine configuration
                                M569 P0 S0							; Drive 0 goes forwards (change to S0 to reverse it)
                                M569 P1 S1							; Drive 1 goes forwards
                                M569 P2 S0							; Drive 2 goes forwards
                                M569 P3 S1							; Drive 3 goes forwards
                                M569 P4 S1							; Drive 4 goes forwards
                                ; If you use an endstop switch for Z homing, change Z0 to Z1 in the following line, and see also M558 command later in this file
                                M574 X1 Y1 Z0 S1					; set endstop configuration (X and Y and endstops only, at low end, active high)
                                M667 S1								; set CoreXY mode
                                M92 X80 Y80 Z800					; Set axis steps/mm
                                M92 E402:402						; Set extruder steps/mm
                                M906 X2000 Y2000 Z2000 E800           ; Set motor currents (mA)
                                M201 X600 Y500 Z5 E1000            ; Accelerations (mm/s^2)
                                M203 X15000 Y15000 Z500 E3600       ; Maximum speeds (mm/min)
                                M566 X600 Y600 Z30 E20              ; Maximum jerk speeds mm/minute
                                M208 X450 Y500 Z1083					; set axis maxima (adjust to suit your machine)
                                M208 X-8 Y0 Z-0.5 S1				; set axis minima (adjust to make X=0 and Y=0 the edges of the bed)
                                G21                                 ; Work in millimetres
                                G90                                 ; Send absolute coordinates...
                                M83                                 ; ...but relative extruder moves
                                
                                ; Z probe
                                M558 P1 X0 Y0 Z1                    ; Analog Z probe, also used for homing the Z axis
                                G31 Z1.20 P500                      ; Set the probe height and threshold (put your own values here)
                                ; The following M557 commands are not needed if you are using a bed.g file to perform bed compensation
                                ;*** Adjust the XY coordinates in the following M557 commands to suit your build and the position of the Z probe
                                M557 P0 X60 Y0                      ; Four... 
                                M557 P1 X60 Y165                    ; ...probe points...
                                M557 P2 X222 Y165                   ; ...for bed...
                                M557 P3 X222 Y0                     ; ...levelling
                                ;M557 P4 X141 Y82.5                 ; 5th probe point for levelling
                                
                                ; Thermistors and heaters
                                ;*** If you have a Duet board with 1K thermistor series resistors, change R4700 to R1000 to the following M305 commands
                                ; You can also use S and B parameters to define the parameters of the thermistors you are using
                                M305 P0 R4700 H0 L0					; Put your own H and/or L values here to set the bed thermistor ADC correction
                                M305 P1 R4700 H0 L0					; Put your own H and/or L values here to set the first nozzle thermistor ADC correction
                                M305 P2 R4700 H0 L0					; Put your own H and/or L values here to set the second nozzle thermistor ADC correction
                                M301 H1 P10 I0.10 D100 T0.50 S1.0	; PID settings for extruder 0
                                M301 H2 P10 I0.10 D100 T0.50 S1.0	; PID settings for extruder 1
                                M570 S120							; Increase to allow extra heating time if needed
                                
                                ; Tool definition
                                M563 P0 D0 H1 F0                  ; Define tool 0
                                G10 P0 S0 R0                        ; Set tool 0 operating and standby temperatures
                                ;*** If you have a dual-nozzle build, un-comment the following 3 lines
                                M563 P1 D1 H2 F0                     ; Define tool 1
                                G10 P1 S0 R0                       ; Set tool 1 operating and standby temperatures
                                
                                ;*** If you are using axis compensation, put the figures in the following command
                                M556 S78 X0 Y0 Z0                   ; Axis compensation here
                                T0									; select first hot end
                                
                                ; Fan Configuration
                                M106 P0 H-1 B0.2
                                M106 P1 H-1	B0.2
                                M106 P2 H-1	B0.2
                                
                                
                                1 Reply Last reply Reply Quote 0
                                • number40fanundefined
                                  number40fan
                                  last edited by

                                  Can you confirm that you are getting 12 volts and a ground out of the connection that you are using?

                                  1 Reply Last reply Reply Quote 0
                                  • tommertensundefined
                                    tommertens
                                    last edited by

                                    I would have done but upon attempting to check with the multimeter I slipped and shorted something out. Board is dead.

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

                                      I'm sorry to hear of your misfortune. Is the board completely dead, or just the fan outputs?

                                      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