Files
esp_sensair/firmware/esp-sensair.yaml.example
Hannes ac5a556c11 Add ESPHome firmware templates, GND pour notes, v2 lessons learned
- firmware/: config + secrets templates committed, flashed config git-ignored
- README: document the GND pour on F.Cu/B.Cu and the module keep-out rule areas
- README: correct the calibration button wiring (S8 bCal_in, not an MCU GPIO)
- README: v2 list - dedicated 5 V power input, decoupling, mounting holes,
  I2C pull-ups, schematic annotation, RoHS finish, project name, antenna keep-out
2026-10-19 22:33:36 +02:00

73 lines
1.5 KiB
Plaintext

# ESPHome configuration for the ESP32-C3 CO2 & environment sensor board.
#
# This is the SHARED TEMPLATE. Copy it to esp-sensair.yaml (git-ignored) and keep
# all credentials in secrets.yaml (git-ignored). Never commit real keys.
#
# SPDX-License-Identifier: MIT
# SPDX-FileCopyrightText: 2026 Hannes Gehrmann
esphome:
name: esp32c3-bme280
friendly_name: esp32c3-bme280
esp32:
board: esp32-c3-devkitm-1
framework:
type: esp-idf
logger:
api:
encryption:
key: !secret api_encryption_key
ota:
- platform: esphome
password: !secret ota_password
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
fast_connect: true
manual_ip:
static_ip: !secret static_ip
gateway: !secret gateway
subnet: !secret subnet
dns1: !secret dns1
# Fallback hotspot if the Wi-Fi connection fails
ap:
ssid: "Esp32C3-Bme280 Fallback Hotspot"
password: !secret ap_password
captive_portal:
# BME280 on I2C - SDA on GPIO7, SCL on GPIO8 (board nets /SDA, /SCL)
i2c:
sda: GPIO7
scl: GPIO8
scan: true
# Sensirion S8 on UART - 9600 baud, 8N1 (board nets /TX, /RX)
uart:
tx_pin: GPIO21 # ESP32-C3 TX -> S8 RX
rx_pin: GPIO20 # ESP32-C3 RX <- S8 TX
baud_rate: 9600
sensor:
- platform: bme280_i2c
address: 0x76
temperature:
name: "BME280 Temperature"
pressure:
name: "BME280 Pressure"
humidity:
name: "BME280 Humidity"
update_interval: 60s
- platform: senseair
co2:
name: "Senseair S8 CO2"
update_interval: 60s