PWM fan + BMP280 not possible on Wemos D1 Mini with ESPHOME?

I’m currently building a Wemos d1 mini with a PWM(4 pin) fan(5v noctua) and a BMP280 sensor. The idea is that the fan starts when the temperature gets over a certain amount. Currently I can get readings from the BMP280 when its connected. And I can control the fan when that is connected. But when they are both connected I lose the signal to the Wemos? My setup is a s below:

esphome:

  name: ps4-fan

  friendly_name: ps4-fan

esp8266:

  board: d1_mini_lite

# Enable logging

logger:

  level: DEBUG

# Enable Home Assistant API

api:

  encryption:

    key: "CMDazGqOZhiITVk1EqDP1SwL3SIDcu7IIcMFgHRkOfM="

ota:

  password: "1ffeb0eeccdfc8aba11a70397d475df4"

wifi:

  ssid: "something"

  password: "something"

  # Enable fallback hotspot (captive portal) in case wifi connection fails

  ap:

    ssid: "Ps4-Fan Fallback Hotspot"

    password: ""

captive_portal:

i2c:

  scl: D1

  sda: D2

  scan: True

sensor:

  - platform: pulse_counter

    pin: D4

    name: PWM Fan RPM

    id: fan_pulse

    unit_of_measurement: 'RPM'

    filters:

      - multiply: 0.5

    count_mode:

      rising_edge: INCREMENT

      falling_edge: DISABLE

    update_interval: 15s

  - platform: bmp280

    temperature:

      name: "PS4 Temperature"

      oversampling: 16x

    pressure:

      name: "PS4 Pressure"

    address: 0x76

    update_interval: 20s

output:

  - platform: esp8266_pwm

    pin: D3

    frequency: 10000 Hz

    id: fanhub_pwm

fan:

  - platform: speed

    output: fanhub_pwm

    name: "PWM Fan"

Looks like you used pins D3 and D4 which is a poor choice as they have limitations. :no_entry:

Try to use D5, D6 or D7 instead as it might just works :raised_hands: