esphome: name: espsalon platform: ESP8266 board: d1_mini # Enable logging logger: # Enable Home Assistant API api: password: "feelhome123" ota: password: "feelhome123" wifi: ssid: "lauIOT" password: "superiot1" domain: .home.cabestan.be # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Espsalon Fallback Hotspot" password: "jTlMOFiFOzog" captive_portal: web_server: port: 80 i2c: sda: D2 scl: D1 scan: true id: bus_a time: - platform: sntp id: esptime timezone: "Europe/Brussels" on_time: - seconds: /1 then: - display.page.show_next: saloon_display font: - file: "Roboto-Black.ttf" id: my_font_16 size: 16 - file: "Roboto-Black.ttf" id: my_font_14 size: 14 - file: "materialdesignicons-webfont.ttf" id: icons_14 size: 14 glyphs: - "\U000F050F" # mdi-home-thermometer - "\U000F058E" # mdi-water-percent - "\U000F015F" # mdi-cloud - "\U000F1252" # mdi-home-lightbulb-outline - "\U000F0A60" # mdi-ip-network mqtt: broker: hass20.home.cabestan.be username: espsalon password: sala45224 switch: - platform: gpio name: "Esp Salon Led" pin: 2 binary_sensor: - platform: gpio name: "Living Room Window" pin: number: 4 inverted: true mode: input: true pullup: true - platform: status name: "Living Room Status" id: nw_connected sensor: - platform: dht pin: D7 temperature: id: temperature name: "Living Room Temperature" humidity: id: humidity name: "Living Room Humidity" update_interval: 10s - platform: bmp280 temperature: name: "Living Room Temperature S2" oversampling: 16x pressure: id: pressure name: "Pressure" address: 0x76 update_interval: 60s - platform: adc id: ambiantlight pin: A0 name: "Living Room Brightness" device_class: "illuminance" unit_of_measurement: "lx" update_interval: 2s accuracy_decimals: 1 filters: - multiply: 500.0 # - sliding_window_moving_average: # window_size: 15 # send_every: 5 display: - platform: ssd1306_i2c model: "SSD1306 128x64" reset_pin: D0 address: 0x3C id: saloon_display rotation: 90 pages: # - id: page1 # lambda: |- # it.printf( 5,20, id(my_font_20), "hello world"); - id: page1 lambda: |- it.strftime( 32, 0, id(my_font_16), TextAlign::TOP_CENTER , "%H:%M:%S" , id(esptime).now() ); it.printf( 0, 25, id(icons_14), TextAlign::TOP_LEFT , "\U000F050F"); it.printf( 18, 25, id(my_font_14), TextAlign::TOP_LEFT , "%.1f°" , id(temperature).state ); it.printf( 0, 45, id(icons_14), TextAlign::TOP_LEFT , "\U000F058E"); it.printf( 18, 45, id(my_font_14), TextAlign::TOP_LEFT , "%.1f%%", id(humidity).state ); it.printf( 0, 65, id(icons_14), TextAlign::TOP_LEFT , "\U000F015F"); it.printf( 18, 65, id(my_font_14), TextAlign::TOP_LEFT , "%.0f" , id(pressure).state ); it.printf( 0, 85, id(icons_14), TextAlign::TOP_LEFT , "\U000F1252"); it.printf( 18, 85, id(my_font_14), TextAlign::TOP_LEFT , "%.0f" , id(ambiantlight).state ); it.printf( 0, 105, id(icons_14), TextAlign::TOP_LEFT , "\U000F0A60"); # it.printf( 18, 105, id(my_font_14), TextAlign::TOP_LEFT , "%s" , id(nw_connected).state );