From fa791af2573a7f39841a7c25a183d834d26aa171 Mon Sep 17 00:00:00 2001 From: Laurent Date: Thu, 25 Dec 2025 02:34:13 +0100 Subject: [PATCH] Fix screen garbage again --- esp32-lora/main.py | 11 +++++++---- esp32-lora/screen.py | 7 +++++++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/esp32-lora/main.py b/esp32-lora/main.py index b4b9bdbc..f27f6789 100644 --- a/esp32-lora/main.py +++ b/esp32-lora/main.py @@ -21,10 +21,13 @@ def sensor_task(): raw = read_light() percent = int((raw / 4095) * 100) - screen.clear() - screen.display("Light Sensor", 15, 0) - screen.display("Raw: {}".format(raw), 15, 20) - screen.display("Level: {}%".format(percent), 15, 40) + lines = [ + "Light Sensor", + f"Raw: {raw}", + f"Level: {percent}%" + ] + + screen.display_lines(lines) time.sleep(1) diff --git a/esp32-lora/screen.py b/esp32-lora/screen.py index 771f4e98..2bb44d32 100644 --- a/esp32-lora/screen.py +++ b/esp32-lora/screen.py @@ -28,5 +28,12 @@ class Screen: self.oled.show() def display(self, message, col=0, row=0): + self.clear() self.oled.text(message, col, row) self.oled.show() + + def display_lines(self, lines): + self.clear() + for i, line in enumerate(lines): + self.oled.text(line, 15, i * 20) + self.oled.show()