{"id":178,"date":"2025-10-17T19:22:23","date_gmt":"2025-10-17T19:22:23","guid":{"rendered":"https:\/\/theroyalscode.com\/students\/g_cruz\/?p=178"},"modified":"2025-10-17T19:22:23","modified_gmt":"2025-10-17T19:22:23","slug":"dread","status":"publish","type":"post","link":"https:\/\/theroyalscode.com\/students\/g_cruz\/2025\/10\/17\/dread\/","title":{"rendered":"Dread"},"content":{"rendered":"\n<p>Do I even add the code?<\/p>\n\n\n\n<p>As far as now, no progress has been made as far as connecting to the internet<\/p>\n\n\n\n<p>damn&#8230;<\/p>\n\n\n\n<p>Need to find SOMETHING to get. it. to. WORK!<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>code, barely changed<\/p>\n\n\n\n<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<\/p>\n\n\n\n<p>###IMPORTS###<\/p>\n\n\n\n<p>from os import getenv<\/p>\n\n\n\n<p>from lib import neopixel #If you&#8217;re grabbing the &#8220;neopixel.mpy&#8221; file, GRAB THE LARGER ONE<\/p>\n\n\n\n<p>import board<\/p>\n\n\n\n<p>import time<\/p>\n\n\n\n<p>import random<\/p>\n\n\n\n<p>#print(os.getenv(&#8220;CIRCUITPY_WIFI_SSID&#8221;)) #accesses the the settings.toml file<\/p>\n\n\n\n<p>sleep_time = 1<\/p>\n\n\n\n<p>###DEF FUNCTIONS###<\/p>\n\n\n\n<p>#This is what the code will initially do when it recieves a message, kinda like a notification<\/p>\n\n\n\n<p>def static_gen(test_time_limit = False, test_time_max = 3):<\/p>\n\n\n\n<p>&nbsp; &nbsp; static_delay = 0<\/p>\n\n\n\n<p>&nbsp; &nbsp; static_time_total = 0<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; #randomized logic to disperse time.sleeps<\/p>\n\n\n\n<p>&nbsp; &nbsp; if random.randint(0,8) == 0:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; pixels.fill((0,0,0))<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; time.sleep(0.5)<\/p>\n\n\n\n<p>&nbsp; &nbsp; else:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; #pick random colors per random LED<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; for i in range(random.randint(75, 150)): #loops over the code multiple times<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; static_delay = .2*random.random()<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #test mode feature to cut off the remaining static loop time<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if test_time_limit:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if static_time_total &gt;= test_time_max:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; break<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pixels[random.randint(0, num_pixels-1)] = random.choice(list(colors.values()))<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; time.sleep(static_delay)<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pixels.fill((0,0,0))<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #test mode feature to count up the time used delaying<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if test_time_limit:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; static_time_total += static_delay<\/p>\n\n\n\n<p>#This is what the program will do with the lights when nothing is happening<\/p>\n\n\n\n<p>def idle_xmas(counter):<\/p>\n\n\n\n<p>&nbsp; &nbsp; print(counter)<\/p>\n\n\n\n<p>&nbsp; &nbsp; if counter == 0:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; #pixels.fill(colors[&#8220;RED&#8221;])<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; for i in range(num_pixels): #This will make the lights alternate between green and red<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if i %2 ==0:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pixels[i-1] = colors[&#8220;RED&#8221;]<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; else:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pixels[i-1] = colors[&#8220;GREEN&#8221;]<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; time.sleep(sleep_time)<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; counter += 1<\/p>\n\n\n\n<p>&nbsp; &nbsp; elif counter == 1: #This will do the inverse of the previous loop, making the light appear to be &#8220;dancing&#8221;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; for i in range(num_pixels):<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if i %2 ==0:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pixels[i-1] = colors[&#8220;GREEN&#8221;]<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; else:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pixels[i-1] = colors[&#8220;RED&#8221;]<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; counter -= 1<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; time.sleep(sleep_time)<\/p>\n\n\n\n<p>&nbsp; &nbsp; else:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; counter = 0<\/p>\n\n\n\n<p>&nbsp; &nbsp; return counter<\/p>\n\n\n\n<p>def msg_display(message = &#8220;PLACEHOLDER&#8221;):<\/p>\n\n\n\n<p>&nbsp; &nbsp; time.sleep(sleep_time)<\/p>\n\n\n\n<p>&nbsp; &nbsp; for char in message:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; pixels.fill((0,0,0))<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; time.sleep(.05)<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; if char.isalpha():<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pixels[letters[char.upper()]] = random.choice(list(colors.values()))<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; time.sleep(sleep_time)<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; elif char.isdigit():<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; char = int(char)<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if char&lt; 1 or char &gt; 26:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pass<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; else:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; for i in range(0, char):<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pixels[i] = random.choice(list(colors.values()))<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; time.sleep(sleep_time)<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; time.sleep(sleep_time)<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; else:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pixels.fill((0,0,0))<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; time.sleep(sleep_time)<\/p>\n\n\n\n<p>#def color dictionary<\/p>\n\n\n\n<p>colors = {<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;RED&#8221; : (255,0,0),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;ORANGE&#8221; : (255,105,0),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;GOLD&#8221; : (255,215,0),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;YELLOW&#8221; : (255,255,0),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;YELLOW-GREEN&#8221; : (170,255,0),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;GREEN&#8221; : (0,255,0),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;TURQOISE&#8221; : (0,255,170),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;CYAN&#8221; : (0,255,255),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;SKY&#8221; : (0,170,255),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;BLUE&#8221; : (0,0,255),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;PURPLE&#8221; : (170,0,255),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;UHH&#8221; : (255,0,255),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;HOT PINK&#8221; : (255,0,170),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;WHITE&#8221; : (255,255,255),<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;test brown&#8221; : (153,102,0)<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>#define alphabet to number dictionary<\/p>\n\n\n\n<p>letters = {<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;A&#8221; : 0,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;B&#8221; : 1,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;C&#8221; : 2,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;D&#8221; : 3,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;E&#8221; : 4,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;F&#8221; : 5,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;G&#8221; : 6,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;H&#8221; : 7,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;I&#8221; : 8,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;J&#8221; : 9,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;K&#8221; : 10,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;L&#8221; : 11,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;M&#8221; : 12,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;N&#8221; : 13,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;O&#8221; : 14,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;P&#8221; : 15,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;Q&#8221; : 16,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;R&#8221; : 17,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;S&#8221; : 18,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;T&#8221; : 19,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;U&#8221; : 20,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;V&#8221; : 21,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;W&#8221; : 22,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;X&#8221; : 23,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;Y&#8221; : 24,<\/p>\n\n\n\n<p>&nbsp; &nbsp; &#8220;Z&#8221; : 25,<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p># Update this to match the number of NeoPixel LEDs connected to your board<\/p>\n\n\n\n<p>num_pixels = 26 #need moar LEDs to get ALL letters<\/p>\n\n\n\n<p>#define your NeoPixel object and its brightness<\/p>\n\n\n\n<p>pixels = neopixel.NeoPixel(board.GP22, num_pixels)<\/p>\n\n\n\n<p>pixels.brightness = 0.5<\/p>\n\n\n\n<p>message_acquired = True<\/p>\n\n\n\n<p>counter = 0<\/p>\n\n\n\n<p>while True:<\/p>\n\n\n\n<p>&nbsp; &nbsp; counter = idle_xmas(counter)<\/p>\n\n\n\n<p>&nbsp; &nbsp; if random.random() &lt; .1:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; message_acquired = True<\/p>\n\n\n\n<p>&nbsp; &nbsp; if message_acquired:<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; static_gen(True, 2)<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; msg_display(&#8220;Hi World 2&#8221;)<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; message_acquired = False<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Do I even add the code? As far as now, no progress has been made as far as connecting to the internet damn&#8230; Need to find SOMETHING to get. it. to. WORK! code, barely changed &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; ###IMPORTS### from os import getenv from lib import neopixel #If you&#8217;re grabbing the &#8220;neopixel.mpy&#8221; file, GRAB THE LARGER ONE [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-178","post","type-post","status-publish","format-standard","hentry","category-progress"],"_links":{"self":[{"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/posts\/178","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/comments?post=178"}],"version-history":[{"count":1,"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/posts\/178\/revisions"}],"predecessor-version":[{"id":179,"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/posts\/178\/revisions\/179"}],"wp:attachment":[{"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/media?parent=178"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/categories?post=178"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/theroyalscode.com\/students\/g_cruz\/wp-json\/wp\/v2\/tags?post=178"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}