From bf54109ca7f9ecfe9bc43a8b7230fd7bd8b3abd2 Mon Sep 17 00:00:00 2001 From: David Rice Date: Thu, 12 Mar 2026 16:17:47 +0000 Subject: [PATCH] updates --- arrive_vidplybck.py | 51 +++++++++++++++++++-------------------------- 1 file changed, 22 insertions(+), 29 deletions(-) diff --git a/arrive_vidplybck.py b/arrive_vidplybck.py index 3c31698..6503ad9 100644 --- a/arrive_vidplybck.py +++ b/arrive_vidplybck.py @@ -16,10 +16,15 @@ class BrightnessManager: self.bl_current = 10 self.bl_direction = 1 # 1 for increasing, -1 for decreasing - # LED state - self.led_val = 0 - self.led_dir = 5 # Step size for smooth ramping - self.color_index = 0 # 0: Red, 1: Green, 2: Blue + # Hex to RGB Tuples: 5F016F, FF33BB, FF80D4, FFADE4 + self.colors = [ + (95, 1, 111), # #5F016F + (255, 51, 187), # #FF33BB + (255, 128, 212),# #FF80D4 + (255, 173, 228) # #FFADE4 + ] + + self.color_index = 0 self.setup_led() @@ -27,35 +32,23 @@ class BrightnessManager: try: with open(self.led_trig_path, 'w') as f: f.write("none") with open(self.led_br_path, 'w') as f: f.write("255") + self.change_led_colour() except Exception as e: print(f"LED Setup Error: {e}") - def update_led_ramp(self): - # Calculate next brightness step - self.led_val += self.led_dir - - # If we hit 255 or 0, reverse direction - if self.led_val >= 255: - self.led_val = 255 - self.led_dir = -5 - - elif self.led_val <= 0: - self.led_val = 0 - self.led_dir = 5 - # Move to the next color once we finish a down-ramp - self.color_index = (self.color_index + 1) % 3 - - # Construct the RGB string - rgb = [0, 0, 0] - rgb[self.color_index] = self.led_val - + def change_led_colour(self): + r, g, b = self.colors[self.color_index] + try: with open(self.led_multi_path, 'w') as f: - f.write(f"{rgb[0]} {rgb[1]} {rgb[2]}") - except: - pass - - return True # Keep the GLib timer running + f.write(f"{r} {g} {b}") + print(f"LED changed to color index {self.color_index}: {r} {g} {b}") + except Exception as e: + print(f"Failed to write LED color: {e}") + + # Increment index for next time + self.color_index = (self.color_index + 1) % len(self.colors) + return True # Keep GLib timer alive def cycle_backlight(self): """Standard backlight cycle on touch""" @@ -126,7 +119,7 @@ def play_kiosk_video(): except FileNotFoundError: print("Warning: /dev/input/event2 not found. Brightness control disabled.") - GLib.timeout_add(20, brightness_manager.update_led_ramp) + GLib.timeout_add(30000, brightness_manager.change_led_colour) # --- LOOPING LOGIC --- bus = pipeline.get_bus()