No slicer fan control

Discussion in 'Getting Started' started by Ben Kay, Nov 14, 2019.

  1. Ben Kay

    Ben Kay Well-Known Member

    Joined:
    Sep 9, 2019
    Messages:
    48
    Likes Received:
    14
    Hi,

    I'm back to getting up and running with the tool changer.

    Everything mechanically is good, bench printed fine using one tool, though I seem to be lacking an awful lot of part cooling.

    I then discovered that the print fan is coming on as soon as the tool is selected, but seems to have no control in terms of on/off or speed from the slic3r PE software, nor the fan slider in the web control, or PanelDue control.

    Therefore the fan is running just one speed the whole time (I'm not sure what speed either)....how can this be corrected?
     
  2. Paul Arden

    Paul Arden Well-Known Member

    Joined:
    Aug 28, 2019
    Messages:
    162
    Likes Received:
    55
    I spent some time working out fan control for PrusaSlicer which should be the same in Slic3r PE. You can see what I did on this thread. After making the changes I mention the PCF settings follow the tool around and will respond to the fan power gcodes generated by the slicer. I’ve not run that many complex prints with it so YMMV.
     
    garethky likes this.
  3. Greg Holloway

    Greg Holloway Administrator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    983
    Likes Received:
    620
    You can do it manually with an M106 P2/4/6/8 S0/255.
     
    Todd Spurgeon likes this.
  4. Andy Cohen

    Andy Cohen Well-Known Member

    Joined:
    Aug 23, 2019
    Messages:
    217
    Likes Received:
    57
    E3D's tool change scripts turn the downward fan on. The "Post" files have the command at the end. I've been looking and I see no way to control via a slicer UI which of the 4 downward fans go on... you'd think in S3D the fan control would go to the "Primary Extruder" selected in the "Extruder" tab... but no... it does not work. As such when I run PLA the fans have to be controlled via the gcode console manually... For now...
     
  5. Todd Spurgeon

    Todd Spurgeon Member

    Joined:
    Oct 22, 2019
    Messages:
    8
    Likes Received:
    1
    @Andy Cohen When you say controlling with the slicerUI do you mean the duet web interface, or in S3D/Slic3r/Cura/etc..?
     
  6. Ben Kay

    Ben Kay Well-Known Member

    Joined:
    Sep 9, 2019
    Messages:
    48
    Likes Received:
    14
    So I tried Paul's suggestions last night and it seems to work well for me, still need to do more testing of tool hand-offs etc.

    But in principle, the fans need defining to the tools, as per this post :

    Code:
    ; Tools
    M563 P0 S"T0" D0 H1 F2                    ; Define tool 0
    G10 P0 X0 Y0 Z0                    ; Reset tool 0 axis offsets
    G10 P0 R0 S0                        ; Reset initial tool 0 active and standby temperatures to 0C
    
    M563 P1 S"T1" D1 H2 F4                    ; Define tool 1
    G10 P1 X0 Y0 Z0                    ; Reset tool 1 axis offsets
    G10 P1 R0 S0                        ; Reset initial tool 1 active and standby temperatures to 0C
    
    M563 P2 S"T2" D2 H3 F6                    ; Define tool 2
    G10 P2 X0 Y0 Z0                    ; Reset tool 2 axis offsets
    G10 P2 R0 S0                        ; Reset initial tool 2 active and standby temperatures to 0C
    
    M563 P3 S"T3" D3 H4 F8                    ; Define tool 3
    G10 P3 X0 Y0 Z0                    ; Reset tool 3 axis offsets
    G10 P3 R0 S0                        ; Reset initial tool 3 active and standby temperatures to 0C
    Also cut and paste the ";Fans" section of config.g above the ";Tools" section, just in preparation for RepRapFirmare v3.

    Then in all of the tPost macros, ; comment out the existing M106 line of code, and on a new line below insert M106 R2 (this recalls the last fan speed command from the slicer software for the new tool).

    I didn't change anything in tFree files, so keep in the e.g. M106 P2 S0 command.....it is important to keep the P"x" in this command, as this then means that the M106 R2 in the tPost file "ignores" the S0...and sets the new tool fan to the last slicer demanded speed...see relevant RRF documentation :

    • Rnnn Restore fan speed to the value it has when the print was paused (R1) or the last time the fan speed was set and no P parameter was provided (R2).

    After that, things seem to work exactly as I would expect. Print fan comes on only when the slic3r asks for it (unlike constantly at a fixed speed before)...so you can have fan off for the first x layers etc. as set in slicer software.....fan speed responds to all commands as expected both in GCode, and using the UI slider in WebControl.

    Now I'm happy as I had thought the part cooling was massively inadequate on the tool design, but it just turns out the standard firmware files simply set the fan at around 1/2 speed permanently.
     
  7. Andy Cohen

    Andy Cohen Well-Known Member

    Joined:
    Aug 23, 2019
    Messages:
    217
    Likes Received:
    57
    I mean setting the fan for a specific tool in the advanced, cooling tab of S3d.
    It should be coupled to the selected Primary Extruder.
     
  8. mkudzia

    mkudzia Active Member

    Joined:
    Dec 26, 2019
    Messages:
    37
    Likes Received:
    21
    Hey guys,

    easier option is to add the Part Cooling fan definition onto the tool inside of the config.g
    So for each tool definition (M563) just add the appropriate fan (F2/F4/F6/F8)

    This way when a specific tool is active the M106 (Fan On and Fan Off) commands default to the Part Cooling Fan of currently active tool.

    This way the M106 commands generated by the slicer will work out of the box.

    You do need to move the fan definition section before the tool definition section.

    My edit:


    ; Fans
    M106 P0 S0 ; UNUSED
    M106 P1 S255 H1 T70 ; T0 HE
    M106 P2 S0 ; T0 PCF
    M106 P3 S255 H2 T70 ; T1 HE
    M106 P4 S0 ; T1 PCF
    M106 P5 S255 H3 T70 ; T2 HE
    M106 P6 S0 ; T2 PCF
    M106 P7 S255 H4 T70 ; T3 HE
    M106 P8 S0 ; T3 PCF
    ; Tools
    M563 P0 S"T0" D0 H1 F2 ; Define tool 0
    G10 P0 X0 Y0 Z0 ; Reset tool 0 axis offsets
    G10 P0 R0 S0 ; Reset initial tool 0 active and standby temperatures to 0C
    M563 P1 S"T1" D1 H2 F4 ; Define tool 1
    G10 P1 X0 Y0 Z0 ; Reset tool 1 axis offsets
    G10 P1 R0 S0 ; Reset initial tool 1 active and standby temperatures to 0C
    M563 P2 S"T2" D2 H3 F6 ; Define tool 2
    G10 P2 X0 Y0 Z0 ; Reset tool 2 axis offsets
    G10 P2 R0 S0 ; Reset initial tool 2 active and standby temperatures to 0C
    M563 P3 S"T3" D3 H4 F8 ; Define tool 3
    G10 P3 X0 Y0 Z0 ; Reset tool 3 axis offsets
    G10 P3 R0 S0 ; Reset initial tool 3 active and standby temperatures to 0C

    I will be putting my firmware changed on github soon (running with 4 hermeras)

    I got another problem tough and I don't know whether it's just the issue with fan provided with the tools?
    You can turn them 100% on with M106 P2/4/6 S255 or S1.0
    However values between 0 and 255 or 0.0-1.0 don't work and turn the fans off
    So I can't set the PCF to 50% by doing M106 S0.5
     
    mhe likes this.
  9. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    458
    Likes Received:
    206
    Some types of fan don't play well with PWM. Try setting a lower PWM frequency. Are they the standard Hemera fans?
     
  10. John Meacham

    John Meacham Well-Known Member

    Joined:
    Dec 18, 2019
    Messages:
    58
    Likes Received:
    21
    My part cooling fan is not working properly either, it either runs full blast with S255 or is completely off with anything less than 255. Were you able to find a solution?
     
  11. John Pickens

    John Pickens Member

    Joined:
    Jul 1, 2018
    Messages:
    20
    Likes Received:
    3
    I have this same problem. Tried @Greg Holloway suggestion.
    Command: M106 P2 S255 turns fan for Tool 0(1?) full blast
    Any other S value yields a stationary part cooling fan.
    Even M106 P2 S254 does not turn the fan, so I'm thinking configuration issues, not PWM values.
    But any help would be appreciated. I'm using the stock firmware as shown in the installation wiki.

    Edit: I was wrong, S253, S254, and S255 cause the fan to move.
    S252 shuts it down. So...PWM or config????
     
  12. John Meacham

    John Meacham Well-Known Member

    Joined:
    Dec 18, 2019
    Messages:
    58
    Likes Received:
    21
    The fans provided are incompatible with the PWM drivers on the boards it appears. (incidentally, the M2.5 screws didn't fit either, maybe it is related? Did some of us get a different batch of fans?)

    You can get the fan for T0 to work by adding the F parameter to the fan definition to change the PWM speed

    M106 P2 S0 F25000 ; T0 PCF

    However, as far I can tell the fans on the Duex don't allow changing the PWM speed. I have not found a workaround yet. Is there any way to get working fans to replace the non-working ones? PLA turns out very poorly to the point of being unusable without proper fan control.

    Since fans can work at very low or very high PWMs (but not the ~400hz duex seems to default to), perhaps software PWM will work for frequencies < 100Hz? Does ReprapFirmware support this? Alternatively can I easily change the duex pwm speed, even if its global if I can find something that works it would be an acceptable workaround since it's just fans on it.
     
  13. Doug Ronaghan

    Doug Ronaghan Member

    Joined:
    Dec 27, 2019
    Messages:
    4
    Likes Received:
    0
     
  14. Doug Ronaghan

    Doug Ronaghan Member

    Joined:
    Dec 27, 2019
    Messages:
    4
    Likes Received:
    0
    Thank you very much. Seems to work for me.
     

Share This Page