Red Alert - Work in progress
My love of Star Trek is well known and so when I got the chance to play around with Pimoroni's new Mote lights, well there was only one thing to do. Simulate alert statuses!
Pimoroni's new Mote kit is a light control board powered by an Atmel ATxmega32A4U micro-controller, but it can be programmed from any computer. Windows, Mac, Linux and Raspberry Pi. It comes with it's own Python library that is really easy to use.
Each Mote control board has 4 channels to provide output. And to each channel we can add a 16 pixel APA102 RGB LED, providing plenty of colour options and light.
So anyway back to the tinkering. I installed the Python library, opened IDLE Python editor, and proceeded hacking.
All hands stand to battlestations! #sysadminREDALERT @pimoroni #Mote pic.twitter.com/vnRmnpNcB5
— biglesp (@biglesp) August 4, 2016
My first test was fun, I had the lights...YAY! But Red Alert is nothing without the sound.
So I used Pygame to add a little sound, that I found from Trekcore website
Now with added pygame for audio playback! #sysadminREDALERT @pimoroni #Mote pic.twitter.com/giOpnCAbOp
— biglesp (@biglesp) August 4, 2016
And the result, well it is this glorious little hack, took me less than an hour to put together, and that included a bit of playing with colours and general blinky messing around.
Here is my code, still not finished as I need to add Yellow and Blue alert...oh and another secret feature for another post :) #Clickbait
from mote import Mote
from time import sleep
import pygame
mote = Mote()
num_pixels = 16
mote.configure_channel(1, num_pixels, False)
mote.configure_channel(2, num_pixels, False)
mote.configure_channel(3, num_pixels, False)
mote.configure_channel(4, num_pixels, False)
red = [255,0,0]
off = [0,0,0]
pygame.mixer.init()
pygame.mixer.music.load("RED.WAV")
try:
while True:
pygame.mixer.music.play(1)
for i in range(num_pixels):
mote.set_pixel(1,i,255,0,0)
sleep(0.01)
mote.set_pixel(2,i,255,0,0)
sleep(0.01)
mote.set_pixel(3,i,255,0,0)
sleep(0.01)
mote.set_pixel(4,i,255,0,0)
sleep(0.01)
mote.show()
sleep(0.5)
for i in range(num_pixels):
mote.set_pixel(1,i,0,0,0)
mote.set_pixel(2,i,0,0,0)
mote.set_pixel(3,i,0,0,0)
mote.set_pixel(4,i,0,0,0)
mote.show()
sleep(0.5)
except KeyboardInterrupt:
print("EXIT")
for i in range(num_pixels):
mote.set_pixel(1,i,0,0,0)
mote.set_pixel(2,i,0,0,0)
mote.set_pixel(3,i,0,0,0)
mote.set_pixel(4,i,0,0,0)
mote.show()
The Mote kit is £40 and you can pick one up from Pimoroni.com