SaleB

ESPhome LCD pages timer

Oct 13th, 2021
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 1.48 KB | None | 0 0
  1. font:
  2.   - file: "Comic Sans MS.ttf"
  3.     id: my_font
  4.     size: 16
  5.  
  6. display:
  7.   - platform: ssd1306_i2c
  8.     model: "SSD1306 128x32"
  9.     address: 0x3C
  10.     id: my_display
  11.     update_interval: 1s
  12.     pages:
  13.       - id: page1
  14.         lambda: |-
  15.           // %% - literal % sign
  16.           it.strftime(64, -4, id(my_font), TextAlign::TOP_CENTER, "%d.%m.%Y", id(homeassistant_time).now());
  17.           it.strftime(64, 32, id(my_font), TextAlign::BASELINE_CENTER, "%H:%M:%S", id(homeassistant_time).now());
  18.          
  19.       - id: page2
  20.         lambda: |-
  21.           it.printf(64, -4, id(my_font), TextAlign::TOP_CENTER, "Temp: %.1f°C", id(temperature).state);
  22.           it.printf(64, 32, id(my_font), TextAlign::BASELINE_CENTER, "P: %.1fmBar", id(pressure).state);
  23.       - id: page3
  24.         lambda: |-
  25.           it.printf(64, -4, id(my_font), TextAlign::TOP_CENTER, "Temp: %.1f°C", id(temperature).state);
  26.           it.printf(64, 32, id(my_font), TextAlign::BASELINE_CENTER, "V: %.1f%%", id(humidity).state);
  27. #      - id: page4
  28. #        lambda: |-
  29. #          if (id(fm_tuner).state) {
  30. #            it.printf(64, -4, id(my_font), TextAlign::TOP_CENTER, "Temp: %.1f°C", id(temperature).state);
  31. #            it.printf(64, 32, id(my_font), TextAlign::BASELINE_CENTER, "%s", id(uart_readline));
  32. #          } else {
  33. #            return (id(page1))
  34. #          }
  35.          
  36. interval:
  37.   - interval: 3s
  38.     then:
  39.       - display.page.show_next: my_display
  40.       - component.update: my_display
Advertisement
Add Comment
Please, Sign In to add comment