Hi,
I’m still learning with esphome and the display part is the most difficult one.
Now I have a situation with white “arrows” in the corner of the screen like you can see on the photo.
Here is the code I’m using:
display:
- platform: ili9xxx
id: my_display
model: ST7735
cs_pin: GPIO10
dc_pin: GPIO9
reset_pin: GPIO8
show_test_card: false
transform:
mirror_x: true
mirror_y: true
swap_xy: false
dimensions:
width: 128
height: 160
invert_colors: false
update_interval: never
auto_clear_enabled: false
data_rate: 80MHz
# Configure LVGL
lvgl:
displays: my_display
buffer_size: 25%
pages:
- id: main_page
widgets:
# Main container with a black background
- obj:
height: 160
width: 128
align: CENTER
bg_color: 0x000000 # Black background
bg_opa: COVER
border_width: 0
widgets:
# Top labels as direct children
- label:
id: temp_target_label
align: TOP_LEFT
x: 2
y: 2
text_color: 0xFFFF00 # Yellow
text_font: font_small
text: "Target: --°C"
- label:
id: boiler_temp_label
align: TOP_LEFT
x: 2
y: 22
text_color: 0xFFFFFF # White
text_font: font_small
text: "Boiler: --°C"
- label:
id: fan_speed_label
align: TOP_LEFT
x: 2
y: 42
text_color: 0xFFFFFF # White
text_font: font_small
text: "Fan: --%"
# Meter with manual positioning
- meter:
id: temp_gauge
x: -15 # Center horizontally (128/2)
y: 60 # Positioned in middle
height: 90 # Height to avoid overlapping
width: 120 # Width for proper arc display
border_width: 0
bg_color: 0x000000 # Black
bg_opa: COVER # Fully opaque
scales:
- range_from: 880
range_to: 990
angle_range: 180
ticks:
width: 0
count: 0
indicators:
- arc:
color: 0x00FF00 # Green arc first
r_mod: 0
width: 12
start_value: 880
end_value: 960
- arc:
color: 0xFF0000 # Red arc second
r_mod: 0
width: 12
start_value: 960
end_value: 990
- line:
id: temp_needle
width: 3
color: 0xFF0000 # Red needle
r_mod: -4
value: 880
# Cover for the middle part of meter indicator line
- obj:
height: 45
width: 45
radius: 25 # Half of width/height to create a circle
align: CENTER
x: -15 # Same x offset as the meter
y: 60 # Same y position as the meter
border_width: 0
bg_color: 0x000000 # Black to match background
pad_all: 0
# Temperature value at the bottom
- label:
id: temp_value_label
align: BOTTOM_LEFT
x: 30 # Manually centered
y: -5
text_color: 0xFFFFFF # White
text_font: font_large
text: "--.-°C"
Thanks for help!
Best regards
Karl-Heinz Fink