In [ ]:
import time
from dotstar import Adafruit_DotStar

In [ ]:
# Dotstar LEDs zijn ontwikkeld voor gebruik in een LED strip en de software bibliotheek is ook zo opgebouwd
# dus maken we er hier een strip van met slechts 1 LED pixel
numpixels = 1
datapin   = 23   # GPIO pin 23 wordt verbonden met het data kanaal van de LED
clockpin  = 24   # GPIO pin 24 wordt verbonden met het klok kanaal van de LED
strip     = Adafruit_DotStar(numpixels, datapin, clockpin)
strip.begin()    # dit moet aangeroepen worden vóór de LEDs gebruikt kunnen worden

In [ ]:
# en we kunnen starten!
# eerst stellen we de helderheid in van de LED(s) (maximaal 255, dus 127 is 50%)
strip.setBrightness(127)

In [ ]:
pixel_index  = 0               # Index van onze eerste (en enige) pixel
kleur_rood = 0xFF0000          # Rood
kleur_groen = 0x0000FF         # Groen
kleur_blauw = 0x00FF00         # Blauw

In [ ]:
# kleur configureren
strip.setPixelColor(pixel_index, kleur_blauw)
# ingestelde configuratie activeren
strip.show()

In [ ]:
kleur = kleur_rood                          # kleur variabele aanmaken en in geheugen stoppen met de waarde 0xFF0000 (rood)

while True:                                 # Eeuwig blijven herhalen
    strip.setPixelColor(pixel_index, kleur)
    strip.show()                            # kleur tonen
    time.sleep(0.5)                         # halve seconde wachten
    
    kleur >>= 8                             # kleurencyclus Rood -> Groen -> Blauw -> Zwart
    if(kleur == 0): kleur = 0xFF0000        # Bij zwart, opnieuw naar Rood overgaan

# klik de 'stop' knop bovenaan (of kies in het menu Kernel > Interrupt) om te stoppen

In [ ]:
import colorsys 

sat = 1
value = 0.5
length = 500

for teller in range(0, length + 1):
    hue = teller/float(length)
    color = list(colorsys.hsv_to_rgb(hue, sat, value))
    intcolor = int(color[0]*256)*256**2 + int(color[1]*256)*256 + int(color[2]*256)
    strip.setPixelColor(pixel_index, intcolor)
    strip.show()
    #time.sleep(1.0/length)

In [ ]:
import math
def makeColorGradient(frequency1, frequency2, frequency3, phase1, phase2, phase3, center=128, width=127, length=500):
    for i in range(length):
        rood = math.sin(frequency1*i + phase1) * width + center
        groen = math.sin(frequency2*i + phase2) * width + center
        blauw = math.sin(frequency3*i + phase3) * width + center
        intcolor = int(rood) * 255**2 + int(groen) * 255 + int(blauw)
        strip.setPixelColor(pixel_index, intcolor)
        strip.show()
        time.sleep(10.0/length)

print(makeColorGradient(.01,.01,.01,2,0,4))

In [ ]:
strip.setBrightness(0)
strip.show()