IN DEVELOPMENT BigBox Dual X Carriages with Duet Wifi (and Duex)

Discussion in 'Guides, Mods, and Upgrades' started by T3P3Tony, Oct 20, 2016.

  1. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    140
    Likes Received:
    58
    I'll re-test the support for fan PWM on the DueX5 fan connectors, in case something broke between versions 1.16 and 1.17.
     
    #61 dc42, Jan 9, 2017
    Last edited: Jan 11, 2017
  2. AndyVirus

    AndyVirus Well-Known Member

    Joined:
    Apr 10, 2016
    Messages:
    141
    Likes Received:
    25
    OK so i just did a quick test of swapping the cooling fans around and the problem does seem to follow the port. either fan connected to FAN3 only reliably works on 0 or 100%. So both fans I have can been control as normal from FAN0. Im a bit stuck. For now ill go back to powering them both from FAN0 but is my config wrong or could it be a firmware bug?
     
  3. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    140
    Likes Received:
    58
    It does sound like a firmware bug to me. I hope I will have time to re-test it today.
     
  4. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    140
    Likes Received:
    58
    I just tested using Fan0 and Fan3 with firmware 1.17b and it is working for me. I sent M563 P0 H1 D0 F0:1, then T0. Then if I send e.g. M106 S0.1 it sets both fans to a slow speed.

    If you try to control fan 3 directly by sending e.g. M106 P3 S0.5, do you get the same behaviour i.e. fan stays off unless you set full speed?

    I wonder if your fan could be objecting to the PWM frequency. Fan0 is variable frequency with a default of 250Hz. Fan3 is a fixed frequency with a default of 500Hz. If you set Fan0 to 500Hz by sending M106 P0 F500, does it still work properly?
     
  5. AndyVirus

    AndyVirus Well-Known Member

    Joined:
    Apr 10, 2016
    Messages:
    141
    Likes Received:
    25
    Ok so if i set Fan0 to 500Hz it behaves like Fan3, i.e. it does not allow me to control the speed anymore, just full speed or off so it does look like the PWM frequency possibly.

    Tried setting Fan0 to 250hz using M106 P0 F250 still on or off, no variable control. Also tried 300, 350 and 400, 500, 600, 700, 800, 900, all no dice. On or off.

    Tried setting FAN3 to 250 using M106 P3 F250, same, on or off only.
     
  6. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    140
    Likes Received:
    58
    So your fans don't like the fixed 500Hz PWM frequency of the fan outputs on the DueX. Are you using fans 1 and 2 as thermostatic hot end fans? If so, they are always either on or off, so you could swap one of them with fan 3.

    Or try a different make of fan. The ones I use came from WeDo3DPrinting and work fine with 500Hz PWM.
     
    #66 dc42, Jan 14, 2017
    Last edited: Jan 14, 2017
  7. AndyVirus

    AndyVirus Well-Known Member

    Joined:
    Apr 10, 2016
    Messages:
    141
    Likes Received:
    25
    ill give swapping the fans about so one of the hot end fans os on the DueX and both print cooling fans are on the DuetWifi. I am using 1 and 2 for the Hot-end fans yes. Thanks! ill give that a go shortly.
     
  8. AndyVirus

    AndyVirus Well-Known Member

    Joined:
    Apr 10, 2016
    Messages:
    141
    Likes Received:
    25
    Ok seems to work now. I have Fan0 as Cooling Fan 0 and Fan1 and Cooling Fan1.

    Can you check i have set this correctly:
    Code:
    ; Fans
    M106 P0 S0 I0 F10 H-1 B0.25 L30 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off (Print fan left)
    M106 P3 S1 I0 F10 H1 T40 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on (Hotend fan left)
    M106 P2 S1 I0 F10 H2 T40 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on (Hotend fan right)
    M106 P1 S0 I0 F10 H-1 B0.25 L30 ; Set fan 3 value, PWM signal inversion and frequency. Thermostatic control is turned off (Print fan right)
    ;M106 P6 S0.5 I0 F5 ; Set fan 6 value, PWM signal inversion and frequency. (Cover fan)
    M106 P7 S1 I0 ; LEDs
    
    ; Printing tools
    ; Define tool 0
    M563 P0 D0 H1 X0 F0
    G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
    M572 D0 S0.05 ; set pressure advance coefficient
    
    ; Define tool 1
    M563 P1 D1 H2 X3 F1
    G10 P1 U0.1 Y0.4 Z0 ; Set tool 1 axis offsets
    G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C
    M572 D1 S0.05 ; set pressure advance coefficient
    Seems ok. Both fans seem to be controllable and both hotend fans both come on above 40c respective of their nozels.

    The only wierdness now is if i set a fan speed on Fan1 (second hotend) it "seems" to obey the speed but bot the web interface and the touchscreen show 0%. Not a big deal but i have found myself adjusting fan speeds while printing when i have messed up in gcode.

    Thanks for all your help!
     
  9. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    140
    Likes Received:
    58
    I'm glad you got it working. Btw there is a known bug. If your gcode contains a M106 command to set the fan speed, it will be mapped to either Fan0 or Fan1 in your case, depending on which tool is selected. But when you change to the other tool, the fans keep their original speeds, instead of the one on the old tool stopping and the one on the new tool taking up the speed that was previously set. I intend to fix this in release 1.18. Meanwhile, you may want to set up both tools to use both fans.

    I'll take a look at the reporting of fan setpoints.
     
  10. AndyVirus

    AndyVirus Well-Known Member

    Joined:
    Apr 10, 2016
    Messages:
    141
    Likes Received:
    25
    Hello. I am looking to migrate from using my slicer to handle the tool changes and instead using getting duet to do it when T# is called.
    Has anyone done this already? I tried using another users post but ran into issues such as waiting for the new tool to reach temp before moving and how to define standby temps. I currently have T4 and T5 defined in S3D for the standby temps so i can set them as i would any other heater. I assume i can just move that into the starting script... But if someone already does this then seeing what is possible would be a great advantage for my set up (and sanity) :)
     

Share This Page