from machine import Pin, PWM
from time import sleep
# Set up PWM pins for RGB LED
red = PWM(Pin(2))
green = PWM(Pin(1))
blue = PWM(Pin(0))
red.freq(1000)
green.freq(1000)
blue.freq(1000)
# Set up button
button = Pin(15, Pin.IN)
# Variable to track which color preset is active
preset_number = 1
print("Press the button to change mood light color")
while True:
if button.value() == 1:
sleep(0.3) # Debounce delay
while button.value() == 1:
pass
if preset_number == 1:
# Warm Light
red_value = 255
green_value = 160
blue_value = 90
preset_number = 2
elif preset_number == 2:
# Cool Light
red_value = 100
green_value = 200
blue_value = 255
preset_number = 3
elif preset_number == 3:
# Night Light
red_value = 30
green_value = 0
blue_value = 50
preset_number = 1
# Convert 0–255 to 0–65535 and apply
red.duty_u16(int(red_value / 255 * 65535))
green.duty_u16(int(green_value / 255 * 65535))
blue.duty_u16(int(blue_value / 255 * 65535))
print("Preset applied -> R:", red_value, "G:", green_value, "B:", blue_value)
sleep(0.1)