1.9.0 Fan control not functioning

What is the problem?

Gcode ran from octopie or manual toggle of Fans on/ Fans off is not working for me.
sending M106 S85 or M106 S0 or M106 S255 on my tft35 works fine..

What did you already try to solve it?

It appears that when i send M106 S### in the terminal.. but adds *### to the end of everything.. and it is doing nothing on the printer.. but the print is printing.

Have you tried running in safe mode?

Not yet, i have no 3rd party plugins installed. just the octopie bundled plugins.

Did running in safe mode solve the problem?


Systeminfo Bundle

You can download this in OctoPrint's System Information dialog ... no bundle, no support!)

Additional information about your setup

OctoPrint version, OctoPi version, printer, firmware, browser, operating system, ... as much data as possible

Octoprint 1.9.0, ender3 with BTT Octopus v1.1 dual extruder 2-2, marlin bugfix, chrome, chrome/windows

That's a checksum - that's normal

In the log you're testing it mid print - did you also try it when the printer was in idle?
Depending on what you're printing and the buffer size it can take some time until the command is executed.

All I can tell you based on the logs is that everything should work. The command was sent and accepted.

The only other thing I noticed is that you're running a bugfix build so it might be a Marlin bug :person_shrugging:

Other things you could try are M107 to stop the fan and adding P with an fan index number like 0 or 1 to the M106 command.

Here's the full documentation of the M106 gcode.

So testing idle, it worked.. but printing it did not. I do have multi extruders and printing with extruder 1 is what broke it?... but your suggestion to add the index of p0... even though i only have 1 part cooling fan is what fixed it.. this allowed me to start the fan in terminal mid print and stop it... but the command m106 and m107 doesn't work without it. Now i just have to figure out how to add the correct fan index selection to Cura and the buttons on Octoprint.

EDIT: After a print with nozzle 1. even at idle the fan control buttons don't work without p0.

After i restart printer buttons function again accepting regular m106/107

printing with nozzle 0 during (after a wait) and after print.. the buttons work.

so using nozzle 1 makes the printer require the fan index.

Send: N6 M106 S25599
Recv: ok
Send: N7 M106 S0
Recv: ok
Send: N8 G92 E079
Recv: X:230.00 Y:204.00 Z:2.01 E:0.00 Count X:18400 Y:16320 Z:906
Recv: ok
Send: N9 G1 E-3 Z2 F2400
Recv: echo: cold extrusion prevented
Recv: ok
Send: N10 M8446
Recv: ok
Send: N11 M104 T0 S0
Recv: ok
Send: N12 M104 T1 S019
Recv: ok
Send: N13 M140 S0
Recv: //action:notification Bed Cooling...
Recv: //action:notification 3D Printer Ready.
Recv: ok
Send: N14 M106 S0*82
Recv: ok
Changing monitoring state from "Cancelling" to "Operational"
Recv: //action:notification 3D Printer Ready.

Literally worked the first time... started print with nozzle 1 and then buttons all stopped working and requires p0

I checked the Marlin configuration.h and found

//=============================== Extra Features ==============================

// @section fans

// Set number of user-controlled fans. Disable to use all board-defined fans.
// :[1,2,3,4,5,6,7,8]
//#define NUM_M106_FANS 1

The option is disabled by default and could solve your issue
I think since you're using a second hotend and got multiple fan headers on the board it assumes you're also using two part cooling fans as soon as you start printing.

1 Like

Just compiled and tested with this active, and the commands appear to work appropriately.

in vscode marlin-gcode-temp-M106_m107 they use ACTIVE_EXTRUDER,Fan_count-1 this must be some sorta link messing me up. but i believe there has to be an if/else somewhere breaking this connection if that is enabled.. who knows but either way i believe you are life saver my friend... or atleast a print saver.

1 Like

You're welcome

If you have further Marlin specific questions or think you found a bug I would suggest you talk with the Marlin guys over on their Discord
Pretty sure they're able to help you :slight_smile:

does that make me old.. to hate on discord because i have a teamspeak server... but yes, you are right, as marlin was the culprit... but as they have moved on past 2.0.9 bugfix i was hesitant to go looking just to receive a note.. update first and ask questions later.

just tested a gcode print and the issue does seem fully resoved. Thank you again!


I guess the answer to that is yes - not because you're old, but because (at least that's what I observed) the younger people seem to install and use everything without even thinking about it.

Discord isn't bad - think of it as IRC + Imageboard +Teamspeak

Glad to hear that :slight_smile: Happy printing :tentacle:

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.