Skip to content

Instantly share code, notes, and snippets.

@dglaude
Last active June 2, 2017 22:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save dglaude/5f1549e85957a543f6dc6c88acf8b4f4 to your computer and use it in GitHub Desktop.
Save dglaude/5f1549e85957a543f6dc6c88acf8b4f4 to your computer and use it in GitHub Desktop.
HSV color control of the Blinkt! from a Blue Dot.
#!/usr/bin/env python
from bluedot import BlueDot
import colorsys
import time
import blinkt
def move(pos):
# print("The Blue Dot x={} y={} d={} a={}".format(pos.x, pos.y, pos.distance, pos.angle))
h=((pos.angle+180) % 360) / 360
s=pos.distance
v=1.0
r, g, b = [int(c*255) for c in colorsys.hsv_to_rgb(h, s, v)]
for x in range(blinkt.NUM_PIXELS):
blinkt.set_pixel(x, r, g, b)
blinkt.show()
blinkt.set_brightness(0.1)
blinkt.set_clear_on_exit()
bd = BlueDot()
bd.wait_for_press()
bd.when_pressed = move
bd.when_moved = move
while True:
time.sleep(1)
@dglaude
Copy link
Author

dglaude commented Jun 2, 2017

New with double click to turn off the Blinkt! LED.

#!/usr/bin/env python

from bluedot import BlueDot
import colorsys
import time
import blinkt

last_time = time.time()

def move(pos):
    h=((pos.angle+180) % 360) / 360
    s=pos.distance
    v=1.0
    r, g, b = [int(c*255) for c in colorsys.hsv_to_rgb(h, s, v)]
    for x in range(blinkt.NUM_PIXELS):
        blinkt.set_pixel(x, r, g, b)
    blinkt.show()

def rmove(pos):
    global last_time
    current_time=time.time()
    delta = current_time-last_time
    last_time = current_time
    print(delta)
    if (delta<0.3) :
        for x in range(blinkt.NUM_PIXELS):
            blinkt.set_pixel(x, 0, 0, 0)
        blinkt.show()

blinkt.set_brightness(0.1)
blinkt.set_clear_on_exit()

bd = BlueDot()
bd.wait_for_press()

bd.when_pressed = move
bd.when_moved = move
bd.when_released = rmove

while True:
    time.sleep(1)

@dglaude
Copy link
Author

dglaude commented Jun 2, 2017

Now updated version and version for other hardware on Github

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment