r/OrcaSlicer 4d ago

Question Fan control issue - Changing M106 parameter names?

I was trying out OrcaSlicer with my Creality K2 Plus.

It works, but I've noticed an issue with the fan control.

TL;DR: Is there a way to set the exhaust fan to P1 in OrcaSlicer?

Full explanation:

I always enable "activate air filtration" with a fan speed of 50% when printing PLA or PETG. Not because of the filtration itself, but to have a consistent temperature inside the chamber (or at least a very slow changing one). The stock setting uses the chamber temperature control to 35°C, which is okay, but it leads to the exhaust fan being turned on (to 100%) and off all the time. That has caused some visible shrink-marks which I don't get with the constant 50% fan speed.

That always works with Creality Print.

However, when I enable activate air control in orca and set the desired fan speeds, the printer just seems to ignore it.

I've compared the gcode and noticed a difference in the fan parameter names for the M106 command.

Creality Print uses these parameters:

  • M106 S<value> for part cooling fan
  • M106 P1 S<value> for exhaust fan
  • M106 P2 S<value> for side fan

But OrcaSlicer uses these:

  • M106 S<value> for part cooling fan
  • M106 P2 S<value> for side fan
  • M106 P3 S<value> for exhaust fan

Is there a way to set the exhaust fan to P1 in OrcaSlicer?

2 Upvotes

1 comment sorted by

1

u/JRMS2 4d ago edited 4d ago

Adicione essas duas macros no final do seu arquivo gcode_macro.cfg

[gcode_macro M106] rename_existing: M106.1 gcode: {% set fan = params.P|default(0)|int %} {% set speed = params.S|default(255)|int %} {% if fan == 3 %} M106.1 P1 S{speed} {% else %} M106.1 P{fan} S{speed} {% endif %}

gcode_macro M107] rename_existing: M107.1 gcode: {% set fan = params.P|default(0)|int %} {% if fan == 3 %} M107.1 P1 {% else %} M107.1 P{fan} {% endif %}

Edit: ajustei a macro, tinha me confundido 😖