Duet3D Logo

    Duet3D

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Documentation
    • Order

    Any PWM Fan not working

    Duet Hardware and wiring
    5
    20
    2374
    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.
    • number40fan
      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
      • number40fan
        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
        • deckingman
          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
          • T3P3Tony
            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
            • tommertens
              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
              • tommertens
                tommertens last edited by

                Adding the M106 command didn't do anything unfortunately.

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

                  F10 at the end?

                  1 Reply Last reply Reply Quote 0
                  • tommertens
                    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
                    • number40fan
                      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
                      • dc42
                        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
                        • deckingman
                          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
                          • tommertens
                            tommertens last edited by

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

                            1 Reply Last reply Reply Quote 0
                            • tommertens
                              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
                              • number40fan
                                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
                                • tommertens
                                  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
                                  • dc42
                                    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