<p>Apparently, I forgot a critical step:</p>

<p>While I have completely reconfigured the LCD menus, setup custom 25-point mesh leveling, changed a bunch of other numerical values, and flashed the firmware dozens of times, certain values will never be updated unless you remember to <strong>initialize the EEPROM</strong> after the flash! </p>

<p>Honestly I kinda wish they would make it all or nothing but I guess there is limited space so particular things take priority.</p>

CC BY-SA 4.0
2019-01-02T10:42:37.500Z
2019-01-03T16:54:29.833Z
2019-01-03T16:54:29.833Z
cds333
<p><em>This answer is now obsolete now that the OP has updated the question with additional information. It is left here as a possible solution for those who have tinkered with there firmware.</em></p>

<hr>

<p>Part cooling fan speed during preheat (from menu) is controlled by the setting </p>

<pre><code>#define PREHEAT_1_FAN_SPEED     0 // Value from 0 to 255
</code></pre>

<p>in <a href="https://github.com/MarlinFirmware/Marlin/blob/1.1.x/Marlin/Configuration.h" rel="nofollow noreferrer">Configuration.h</a> where a value of <code>0</code> implies no rotation, or 0&nbsp;% and <code>255</code> implies 100&nbsp;%.</p>

<p>If changing this value in your configuration does not result in a reduced fan speed, you could have this constant be defined somewhere else overriding this value.</p>

CC BY-SA 4.0
2019-01-02T08:44:39.380Z
2019-01-02T12:25:47.470Z
2019-01-02T12:25:47.470Z
0scar
<p>I dont want the part cooling fan on during preheat, especially when I'm only heating the bed, it is just unnecessarily loud and serves no purpose at that time.</p>

<p>However when I set <code>PREHEAT_1_FAN_SPEED</code> to 0 it has no effect, the fan still spins at full speed as soon as I preheat either the hotend or the bed.</p>

<p>So why is this setting not working and how do I fix this?</p>

<p>I am using the latest version of <a href="https://github.com/MarlinFirmware/Marlin/tree/1.1.x/Marlin" rel="nofollow noreferrer">Marlin</a>.</p>

<p>The only one that is defined is the one that I am editing and it is the one that appears on line ~1260 of the stock configuration.h</p>

<pre><code>#define PREHEAT_1_FAN_SPEED 0 // Value from 0 to 255
</code></pre>

<p>And this is the grep result of searching the entire firmware folder:</p>

<p><a href="https://i.sstatic.net/dJh5p.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/dJh5p.png" alt="grep results"></a></p>

CC BY-SA 4.0
2019-01-02T07:55:47.900Z
This question is a little terse and could use some extra information, please update the question by [edit] to include where you set this constant (as it could be that it is overridden later!). The default Marlin `configuration.h` file already contains a `PREHEAT_1_FAN_SPEED` of zero, part cooling fans should therefore never spin unless the configuration is altered. In that effect, which sources do you use? Original Marlin sources or a repository of someone else?
0scar
<marlin><firmware><creality-ender-3>
Marlin 1.1.x on Ender 3 changing PREHEAT_1_FAN_SPEED has no effect?
cds333
# Marlin 1.1.x on Ender 3 changing PREHEAT_1_FAN_SPEED has no effect?

(Asked by: username_0 on 2019-01-02)

I dont want the part cooling fan on during preheat, especially when I'm only heating the bed, it is just unnecessarily loud and serves no purpose at that time.

However when I set `PREHEAT_1_FAN_SPEED` to 0 it has no effect, the fan still spins at full speed as soon as I preheat either the hotend or the bed.

So why is this setting not working and how do I fix this?

I am using the latest version of [Marlin](https://github.com/MarlinFirmware/Marlin/tree/1.1.x/Marlin).

The only one that is defined is the one that I am editing and it is the one that appears on line ~1260 of the stock configuration.h

```
#define PREHEAT_1_FAN_SPEED 0 // Value from 0 to 255

```

And this is the grep result of searching the entire firmware folder:

[![grep results](https://i.sstatic.net/dJh5p.png)](https://i.sstatic.net/dJh5p.png)

**Tags:** marlin, firmware, creality-ender-3

> **Comments:**
> **username_1**: This question is a little terse and could use some extra information, please update the question by [edit] to include where you set this constant (as it could be that it is overridden later!). The default Marlin `configuration.h` file already contains a `PREHEAT_1_FAN_SPEED` of zero, part cooling fans should therefore never spin unless the configuration is altered. In that effect, which sources do you use? Original Marlin sources or a repository of someone else?  

---

## 2 answers

### Answer by username_0 on 2019-01-02. Score: 2

Apparently, I forgot a critical step:

While I have completely reconfigured the LCD menus, setup custom 25-point mesh leveling, changed a bunch of other numerical values, and flashed the firmware dozens of times, certain values will never be updated unless you remember to **initialize the EEPROM** after the flash!

Honestly I kinda wish they would make it all or nothing but I guess there is limited space so particular things take priority.


---

### Answer by username_1 on 2019-01-02. Score: 0

*This answer is now obsolete now that the OP has updated the question with additional information. It is left here as a possible solution for those who have tinkered with there firmware.*

---

Part cooling fan speed during preheat (from menu) is controlled by the setting

```
#define PREHEAT_1_FAN_SPEED     0 // Value from 0 to 255

```

in [Configuration.h](https://github.com/MarlinFirmware/Marlin/blob/1.1.x/Marlin/Configuration.h) where a value of `0` implies no rotation, or 0 % and `255` implies 100 %.

If changing this value in your configuration does not result in a reduced fan speed, you could have this constant be defined somewhere else overriding this value.


---

