Cześć
Instaluje sobie przykładową konfiguracje do obsługi wyświetlacza z tej strony Time & Temperature on OLED Display — ESPHome i ESPHome przestaje wykrywać układ. Przez chwilę wyświetla mi się aktualna godzina a po jakimś czasie przestaje się synchronizować z HA
Poniżej moja konfiguracja
Załączam też filmik jak się zachowuje port podczas próby manualnego zainstalowania konfiguracji. Naciśnięcie przycisku FLASH powoduje że port USB się pojawia i można normalnie wgrać konfigurację.
Podstawowa konfiguracja jaką tworzy ESPHome w HA po wgraniu działa poprawnie, dopiero po dodaniu kodu współpracy z HA i wyświetlaczem dzieje się tak jak opisałem.
esphome:
name: wyswietlacz
friendly_name: wyswietlacz
esp8266:
board: nodemcuv2
# Enable logging
logger:
level: DEBUG
# Enable Home Assistant API
api:
encryption:
key: "4ZSjZ9TCA6ZcyuCjgluV9o4rC/vgMqacvzCeP7vv3eQ="
ota:
password: "3ddc9661251e39c7058993a15ddaa248"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Wyswietlacz Fallback Hotspot"
password: "mVnVnKFx0t8I"
captive_portal:
time:
- platform: homeassistant
id: esptime
sensor:
- platform: homeassistant
id: inside_temperature
entity_id: sensor.mellanvaning_temperature
internal: true
- platform: homeassistant
id: outside_temperature
entity_id: sensor.10_00080192969d_temperature
internal: true
font:
- file: 'slkscr.ttf'
id: font1
size: 8
- file: 'BebasNeue-Regular.ttf'
id: font2
size: 48
- file: 'arial.ttf'
id: font3
size: 14
i2c:
sda: D1
scl: D2
scan: false
display:
- platform: ssd1306_i2c
model: "SH1106 128x64"
reset_pin: D0
address: 0x3C
lambda: |-
// Print "Mitt Smarta Hus" in top center.
it.printf(64, 0, id(font1), TextAlign::TOP_CENTER, "Mitt Smarta Hus");
// Print time in HH:MM format
it.strftime(0, 60, id(font2), TextAlign::BASELINE_LEFT, "%H:%M", id(esptime).now());
// Print inside temperature (from homeassistant sensor)
if (id(inside_temperature).has_state()) {
it.printf(127, 23, id(font3), TextAlign::TOP_RIGHT , "%.1f°", id(inside_temperature).state);
}
// Print outside temperature (from homeassistant sensor)
if (id(outside_temperature).has_state()) {
it.printf(127, 60, id(font3), TextAlign::BASELINE_RIGHT , "%.1f°", id(outside_temperature).state);
}