2026-02-26 13:42:45 -05:00
|
|
|
substitutions:
|
|
|
|
|
device_name: fdm-exhaust-fan-control
|
|
|
|
|
friendly_name: "FDM Exhaust Fan Control"
|
|
|
|
|
|
|
|
|
|
esphome:
|
|
|
|
|
name: ${device_name}
|
|
|
|
|
friendly_name: ${friendly_name}
|
|
|
|
|
|
|
|
|
|
esp32:
|
2026-02-26 18:46:51 -05:00
|
|
|
board: seeed_xiao_esp32c3
|
2026-02-26 13:42:45 -05:00
|
|
|
framework:
|
|
|
|
|
type: esp-idf
|
|
|
|
|
|
|
|
|
|
# Enable logging
|
|
|
|
|
logger:
|
|
|
|
|
|
|
|
|
|
# Enable Home Assistant API
|
|
|
|
|
api:
|
|
|
|
|
encryption:
|
|
|
|
|
key: !secret api_encryption_key
|
|
|
|
|
|
|
|
|
|
ota:
|
|
|
|
|
- platform: esphome
|
|
|
|
|
password: !secret ota_password
|
|
|
|
|
|
|
|
|
|
wifi:
|
|
|
|
|
ssid: !secret wifi_iot_ssid
|
|
|
|
|
password: !secret wifi_password
|
|
|
|
|
ap:
|
|
|
|
|
ssid: "${friendly_name} Fallback"
|
|
|
|
|
password: !secret fallback_password
|
|
|
|
|
|
|
|
|
|
captive_portal:
|
|
|
|
|
|
|
|
|
|
web_server:
|
|
|
|
|
port: 80
|
|
|
|
|
|
|
|
|
|
output:
|
|
|
|
|
- platform: gpio
|
2026-02-27 20:36:32 -05:00
|
|
|
pin:
|
|
|
|
|
number: GPIO3
|
|
|
|
|
inverted: true # Fix for driver inversion
|
2026-02-26 13:42:45 -05:00
|
|
|
id: fan_80mm_output
|
|
|
|
|
- platform: gpio
|
2026-02-27 20:36:32 -05:00
|
|
|
pin:
|
|
|
|
|
number: GPIO4
|
|
|
|
|
inverted: true
|
2026-02-26 13:42:45 -05:00
|
|
|
id: fan_120mm_output
|
|
|
|
|
|
|
|
|
|
fan:
|
|
|
|
|
- platform: binary
|
|
|
|
|
name: "80mm Exhaust Fan"
|
|
|
|
|
output: fan_80mm_output
|
|
|
|
|
- platform: binary
|
|
|
|
|
name: "120mm Exhaust Fan"
|
|
|
|
|
output: fan_120mm_output
|