Last active
December 19, 2020 02:24
-
-
Save rowena-s/738754e33481612d67bf3fe5db5a7193 to your computer and use it in GitHub Desktop.
Sense Hat Christmas lights
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| from sense_hat import SenseHat | |
| from time import sleep | |
| sense = SenseHat() | |
| R = (255, 0, 0) | |
| B = (0,0,0) | |
| W = (255,255,255) | |
| cc_1 = [ | |
| B, B, R, W, W, R, B, B, | |
| B, R, W, W, R, W, R, B, | |
| B, W, R, B, B, W, W, B, | |
| B, B, B, B, B, W, R, B, | |
| B, B, B, B, B, R, W, B, | |
| B, B, B, B, B, W, W, B, | |
| B, B, B, B, B, W, R, B, | |
| B, B, B, B, B, R, W, B | |
| ] | |
| cc_2 = [ | |
| B, B, R, W, R, W, B, B, | |
| B, W, W, R, W, W, W, B, | |
| B, R, W, B, B, W, R, B, | |
| B, B, B, B, B, R, W, B, | |
| B, B, B, B, B, W, W, B, | |
| B, B, B, B, B, W, R, B, | |
| B, B, B, B, B, R, W, B, | |
| B, B, B, B, B, W, W, B | |
| ] | |
| while True: | |
| sense.set_pixels(cc_1) | |
| sleep(2) | |
| sense.set_pixels(cc_2) | |
| sleep(2) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| from sense_hat import SenseHat | |
| from time import sleep | |
| sense = SenseHat() | |
| X = [0,0,0] | |
| G= [0,100,0] | |
| Y = [255,255,0] | |
| BR = [100,50,20] | |
| Red = [150,0,0] | |
| Blue = [0,50,150] | |
| Lime = [134,185,50] | |
| Purple = [102,51,153] | |
| lavender = [120,100,100] | |
| Pink = [150,20,100] | |
| Indigo = [75,70,170] | |
| LightBlue=[0,150,150] | |
| DarkYellow=[160,153,0] | |
| Orange = [200,80,0] | |
| tree = [ | |
| X, X, X, X, Y, X, X, X, | |
| X, X, X, X, G, X, X, X, | |
| X, X, X, G, G, G, X, X, | |
| X, X, G, G, G, G, G, X, | |
| X, X, X, G, G, G, X, X, | |
| X, X, G, G, G, G, G, X, | |
| X, G, G, G, G, G, G, G, | |
| X, X, X, X, BR, X, X, X | |
| ] | |
| ry = 255 | |
| gy = 255 | |
| sense.clear() | |
| sense.set_pixels(tree) | |
| while True: | |
| sense.set_pixels(tree) | |
| sense.set_pixel(4,2,Red) | |
| sense.set_pixel(3,4,Blue) | |
| sense.set_pixel(5,4,Orange) | |
| sense.set_pixel(1,6,Purple) | |
| sense.set_pixel(3,6,Lime) | |
| sense.set_pixel(5,6,LightBlue) | |
| sense.set_pixel(7,6,Pink) | |
| sleep(1) | |
| sense.set_pixels(tree) | |
| sense.set_pixel(4,2,LightBlue) | |
| sense.set_pixel(3,3,Orange) | |
| sense.set_pixel(5,3,Lavender) | |
| sense.set_pixel(4,5,DarkYellow) | |
| sense.set_pixel(2,6,Pink) | |
| sense.set_pixel(6,6,Indigo) | |
| sleep(1) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| from sense_hat import SenseHat | |
| from time import sleep | |
| import random | |
| sense = SenseHat() | |
| sense.set_rotation(270) | |
| R = (150, 0, 0) | |
| W = (150,150,150) | |
| X = [0,0,0] | |
| G= [0,100,0] | |
| Y = [255,255,0] | |
| BR = [100,50,20] | |
| Red = [150,0,0] | |
| Blue = [0,50,150] | |
| Lime = [134,185,50] | |
| Purple = [102,51,153] | |
| Lavender = [120,100,100] | |
| Pink = [150,20,100] | |
| Indigo = [75,70,170] | |
| LightBlue=[0,150,150] | |
| DarkYellow=[160,153,0] | |
| Orange = [200,80,0] | |
| cc_1 = [ | |
| X, X, R, W, W, R, X, X, | |
| X, R, W, W, R, W, R, X, | |
| X, W, R, X, X, W, W, X, | |
| X, X, X, X, X, W, R, X, | |
| X, X, X, X, X, R, W, X, | |
| X, X, X, X, X, W, W, X, | |
| X, X, X, X, X, W, R, X, | |
| X, X, X, X, X, R, W, X | |
| ] | |
| cc_2 = [ | |
| X, X, R, W, R, W, X, X, | |
| X, W, W, R, W, W, W, X, | |
| X, R, W, X, X, W, R, X, | |
| X, X, X, X, X, R, W, X, | |
| X, X, X, X, X, W, W, X, | |
| X, X, X, X, X, W, R, X, | |
| X, X, X, X, X, R, W, X, | |
| X, X, X, X, X, W, W, X | |
| ] | |
| tree = [ | |
| X, X, X, X, X, X, X, X, | |
| X, X, X, X, G, X, X, X, | |
| X, X, X, G, G, G, X, X, | |
| X, X, G, G, G, G, G, X, | |
| X, X, X, G, G, G, X, X, | |
| X, X, G, G, G, G, G, X, | |
| X, G, G, G, G, G, G, G, | |
| X, X, X, X, BR, X, X, X | |
| ] | |
| def get_colours(phase): | |
| colours1 = [(4,2,Red), (3,4,Blue), (5,4, Orange), (1,6,Purple),(3,6,Lime),(5,6,LightBlue),(7,6,Pink)] | |
| colours2= [(4,2,LightBlue),(3,3,Orange),(5,3,Lavender),(4,5,DarkYellow),(2,6,Pink),(6,6,Indigo)] | |
| if phase ==1: | |
| return colours1 | |
| else: | |
| return colours2 | |
| def show_tree(colours): | |
| sense.set_pixels(tree) | |
| sense.set_pixel(4,0,Y) | |
| for x,y,colour in colours: | |
| sense.set_pixel(x,y,colour) | |
| ry = 255 | |
| gy = 255 | |
| while True: | |
| sense.clear() | |
| sleep(1) | |
| for i in range(3): | |
| sense.set_pixels(cc_1) | |
| sleep(1) | |
| sense.set_pixels(cc_2) | |
| sleep(1) | |
| sense.clear() | |
| sleep(0.5) | |
| sense.set_pixels(tree) | |
| sense.set_pixel(4,0,Y) | |
| colours = get_colours(1) | |
| for i in range(12): | |
| sense.set_pixel(4,0,[ry,gy,0]) | |
| ry-=20 | |
| gy-=20 | |
| sleep(0.5) | |
| if colours: | |
| if (i %2 ==0): | |
| if len(colours) !=1: | |
| x,y,colour = colours.pop(random.randrange(len(colours))) | |
| sense.set_pixel(x,y,colour) | |
| x,y,colour = colours.pop(random.randrange(len(colours))) | |
| sense.set_pixel(x,y,colour) | |
| else: | |
| x,y,colour = colours.pop(random.randrange(len(colours))) | |
| sense.set_pixel(x,y,colour) | |
| sleep(1) | |
| sense.set_pixels(tree) | |
| colours = get_colours(2) | |
| for i in range(12): | |
| sense.set_pixel(4,0,[ry,gy,0]) | |
| ry+=20 | |
| gy+=20 | |
| sleep(0.5) | |
| if i%2 ==0: | |
| x,y,colour = colours.pop(random.randrange(len(colours))) | |
| sense.set_pixel(x,y,colour) | |
| sleep(1) | |
| sense.clear() | |
| sleep(1) | |
| sense.set_pixels(tree) | |
| sense.set_pixel(4,0,Y) | |
| sleep(1) | |
| sense.clear() | |
| sleep(0.75) | |
| show_tree(get_colours(1)) | |
| sleep(1) | |
| sense.clear() | |
| sleep(0.75) | |
| show_tree(get_colours(2)) | |
| sleep(1) | |
| sense.clear() | |
| sleep(0.75) | |
| sense.set_pixels(cc_1) | |
| sleep(1) | |
| sense.clear() | |
| sleep(0.75) | |
| sense.set_pixels(cc_2) | |
| sleep(1) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment