Relais bei Programmstart aus lassen

Hallo zusammen,

Ich habe mein erstes kleines Arduino Projekt "gebastelt". Ich möchte für meinen 3D Drucker das Gehäuse belüften und es somit immer auf ca. 55° per Lüfter kühlen. Ein Relais soll dabei bei +55° umschalten und den Lüfter aktivieren.
Dazu habe ich noch eine kleine Grafik und einen Balken mit eingefügt, damit es schöner aussieht.

Da dies mein erstes Arduino Programm ist, entschuldige ich mich für jegliche Fehler im Programm. Ich lerne noch :-).

Bis hierhin klappt alles ganz gut, jedoch beim Einschalten vom Arduino ist das Relais ganz kurz eingeschaltet, bis zum:

-digitalWrite(fan,LOW);

nach

-display.begin(SSD1306_SWITCHCAPVCC, 0x3C);

Das ist nicht so schlimm. Der Lüfter beginnt nicht einmal zu drehen, aber ich hätte es gerne, dass das Relais komplett aus bleibt, auch während des "Hochfahrens".

LG

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include "DHT.h"

#define DHTPIN 2     // what pin we're connected to
#define DHTTYPE DHT22   // DHT 22  (AM2302)
DHT dht(DHTPIN, DHTTYPE);

#define OLED_RESET 4

Adafruit_SSD1306 display(OLED_RESET);

#if (SSD1306_LCDHEIGHT != 64)   //OLED128x64

#error("Height incorrect, please fix Adafruit_SSD1306.h!");




#endif

//int p3 = (45); //Testwert
int maxHum = 60;
int maxTemp = 25;
int fan = 4;

void setup() {

pinMode(fan, OUTPUT);

dht.begin();  



display.begin(SSD1306_SWITCHCAPVCC, 0x3C);  // initialize with the I2C addr 0x3D (for the 128x64)
//Serial.begin(9600);

digitalWrite(fan,LOW);


display.clearDisplay();
  
display.drawRect(0, 0, 128, 16, WHITE);

 display.setTextSize(0);
  display.setTextColor(WHITE);
  display.setCursor(30, 5);
  display.println("Hochfahren");
  display.display();   
  delay(500);

  
  
  display.setCursor(95, 5);
  display.println(".");
  display.display();  
  delay(500);

  display.setCursor(100, 5);
  display.println(".");
  display.display();   
  delay(500);

  display.setCursor(105, 5);
  display.println(".");
  display.display();   
  delay(500);

  display.clearDisplay();

  
  
display.drawRect(0, 0, 128, 16, WHITE);

 display.setTextSize(0);
  display.setTextColor(WHITE);
  display.setCursor(30, 5);
  display.println("Hochfahren");
  display.display();   
  delay(500);
  
  display.setCursor(95, 5);
  display.println(".");
  display.display();   
  delay(500);

  display.setCursor(100, 5);
  display.println(".");
  display.display();   
  delay(500);

  display.setCursor(105, 5);
  display.println(".");
  display.display();   
  delay(500);

  display.clearDisplay();
  
  
}



void loop() {

  
delay(2000);
  display.clearDisplay();

  display.drawRect(0, 0, 128, 16, WHITE);

  float t = dht.readTemperature();
  float h = dht.readHumidity();

  display.setTextSize(0);
  display.setTextColor(WHITE);
  display.setCursor(15,5);
  display.print("Temperatur");
  //display.println(t); // neu

//Temperaturanzeige

display.drawRoundRect(0, 17, 63, 16, 3, WHITE);
display.drawRoundRect(65, 17, 63, 16, 3, WHITE);

display.setCursor(12 ,21);
display.print(t);
display.println(" C");

display.setCursor(75 ,21);
display.print(h);
display.println(" %");

//MIN/MAX Anzeige

display.setCursor(60 ,41);
display.println("MIN");

display.setCursor(99 ,41);
display.println("MAX");

// Balkenvertikalstriche

display.drawLine(79, 50, 79, 40, WHITE);
display.drawLine(96, 50, 96, 40, WHITE);


 // LÜFTERSCHALTUNG

if (t > maxTemp) {
  // Anweisungsblock für wahr
  digitalWrite(fan,HIGH);
  } else {
  // Anweisungsblock für falsch
  digitalWrite(fan,LOW);
 
}

// PROZENTBALKEN


drawPercentbar( 0, 50, 128, 14, t*1.4);

display.display();

delay(100);

}

void drawPercentbar(int x,int y, int width,int height, int progress)
{

   progress = progress > 100 ? 100 : progress;
   progress = progress < 0 ? 0 :progress;

   float bar = ((float)(width-4) / 100) * progress; 
  
   display.drawRect(x, y, width, height, WHITE);
   display.fillRect(x+2, y+2, bar, height-4, WHITE);

}

Wenn du für den Oled Reset und den Ventilator den gleichen Pin verwendest, darfst du dich nicht wundern , dass sich das ins Gehege kommt.
Oder?

...danke :-).