--- # Hardware: M5Stack ATOM Lite + ATOM Hub Switch # Pinout: # GPIO1 UART0 TX # GPIO3 UART0 RX # GPIO12 IR # GPIO19 Relay2 # GPIO21 I2C1 SCL -> i2c (i2c scl) # GPIO22 Relay1 # GPIO23 RS485 Tx # GPIO25 I2C1 SDA - red -> i2c (i2c sda) # GPIO26 I2C0 SDA - white # GPIO27 NEO 1x -> atom_led (status LED, common/status_led_atom.yaml) # GPIO32 I2C0 SCL # GPIO33 RS485 Rx # GPIO39 BUTTON -> Status Button (binary_sensor gpio) # I2C: # 0x18 one_wire_bus (one_wire ds2482) # 0x27 pca9554_module (pca9554) substitutions: device: fireplace name: Heating Fireplace area: Living Room & Kitchen comment: Fireplace monitoring for heating esphome: name: mcu-${device} friendly_name: ${name} area: ${area} comment: ${comment} esp32: variant: esp32 toolchain: esp-idf framework: type: esp-idf external_components: # - source: github://pr#12717 # components: [ds248x] # refresh: 1h - source: github://pr#13534 components: [ds2482, ds2484, ds248x_base] refresh: 1h packages: common: !include common/common.yaml ipv6_only: !include common/ipv6_only.yaml status_led: !include common/status_led_atom.yaml i2c: # - id: i2c0 # sda: 26 # scl: 32 # scan: true #false # - id: i2c1 sda: 25 scl: 21 scan: true #false # ds248x: # # i2c_id: i2c_main # address: 0x18 # should be the default # # sleep_pin: 32 # remove if not needed, if set the ds248x sleeps when no transaction is in progress # active_pullup: true # adds a active pullup which should improve signal integrity # strong_pullup: false # enables a strong pullup used to provide the needed current for temperature reading without vcc connected # bus_sleep: true # power down the bus when no transaction is in progres # one_wire: # id: one_wire_bus # platform: ds2484 # active_pullup: true # ds248x: # id: ds2484_module # address: 0x18 # one_wire: # - platform: ds248x # ds248x_id: ds2484_module # id: one_wire_bus one_wire: id: one_wire_bus platform: ds2482 active_pullup: true pca9554: - id: pca9554_module address: 0x27 # modbus: # uart_id: uart1 # uart: # - id: uart1 # rx_pin: 33 # tx_pin: 32 # baud_rate: 9600 # stop_bits: 2 binary_sensor: - platform: gpio name: Status Button filters: - invert: pin: 39 - platform: template name: Fire lambda: |- if (id(heating_fireplace_temperature).state > 37.5) { return true; } else { return false; } - platform: gpio name: Pump id: off_peak_status pin: pca9554: pca9554_module number: 0 filters: - delayed_on: 300ms - delayed_off: 300ms sensor: # - platform: ds248x - platform: dallas_temp address: 0x6203168B32A7FF28 # index: 0 name: Temperature id: 'heating_fireplace_temperature' # - platform: dht # pin: 14 # temperature: # name: "Kitchen Temperature" # id: 'kitchen_temperature' # humidity: # name: "Kitchen Humidity" # id: 'kitchen_humidity' # update_interval: 60s # model: si7021 bluetooth_proxy: active: true