Adafruit_Learning_System_Gu.../Gemma_Nano_Ring/code.py
ntg081 8ccfefa4c6
line 36 move outside for loop
the strip turns the pixel off before it fades out, so moving the strip outside the for loop lets the fade out happen, then turns the pixel off.
2019-12-30 10:56:55 -05:00

44 lines
1.2 KiB
Python

import time
import board
import neopixel
try:
import urandom as random
except ImportError:
import random
numpix = 3 # Number of NeoPixels
pixpin = board.D1 # Pin where NeoPixels are connected
strip = neopixel.NeoPixel(pixpin, numpix, brightness=.1, auto_write=True)
colors = [
[30, 144, 255], # Dodger Blue
[232, 100, 255], # Purple
[204, 0, 204], # Pink
[200, 200, 20], # Yellow
[30, 200, 200], # Blue
]
def flash_random(wait, howmany):
for _ in range(howmany):
c = random.randint(0, len(colors) - 1) # Choose random color index
j = random.randint(0, numpix - 1) # Choose random pixel
strip[j] = colors[c] # Set pixel to color
for i in range(1, 5):
strip.brightness = i / 5.0 # Ramp up brightness
time.sleep(wait)
for i in range(5, 0, -1):
strip.brightness = i / 5.0 # Ramp down brightness
time.sleep(wait)
strip[j] = [0, 0, 0] # Set pixel to 'off'
while True:
# first number is 'wait' delay, shorter num == shorter twinkle
flash_random(.01, 1)
# second number is how many neopixels to simultaneously light up
flash_random(.01, 3)
flash_random(.01, 2)