anim001.py0000644000226200003120000000037111061702625011230 0ustar klarmkmcimport bl0rg import time foo = bl0rg.Bl0rg('82-195-85-23-visitor.cable.mrmcd.net',51279,'bl0rg') foo.clear() time.sleep(1) while 1: foo.fade([0] * 8,[255] * 8,[0] * 8,2) foo.fade([255] * 8,[0] * 8,[0] * 8,2) foo.fade([0] * 8,[0] * 8,[255] * 8,2)anim002.py0000644000226200003120000000057511061702635011240 0ustar klarmkmcimport bl0rg import time foo = bl0rg.Bl0rg('82-195-85-23-visitor.cable.mrmcd.net',51279,'bl0rg') foo.clear() time.sleep(1) while 1: for i in range(8): foo.fade([i * 32] * 8,([0] * i) + [192] + ([0] * (7 - i)),([0] * (7 - i)) + [255] + ([0] * i),0.25) for i in range(6,0,-1): foo.fade([i * 32] * 8,([0] * i) + [192] + ([0] * (7 - i)),([0] * (7 - i)) + [255] + ([0] * i),0.25)anim003.py0000644000226200003120000000045411061702646011237 0ustar klarmkmcimport bl0rg import time import random foo = bl0rg.Bl0rg('82-195-85-23-visitor.cable.mrmcd.net',51279,'bl0rg') foo.clear() time.sleep(1) while 1: foo.fade([ random.randrange(0,255) for i in range(8) ],[ random.randrange(0,255) for i in range(8) ],[ random.randrange(0,255) for i in range(8) ],0.25)bl0rg.py0000644000226200003120000000333711061702663011100 0ustar klarmkmcclass Bl0rg: _socket = None _state_red = [] _state_green = [] _state_blue = [] def __init__(self,ip,port,password): import socket self._socket = socket.socket() self._socket.connect((ip,port)) self._wait(0.5) self._send(password) def _wait(self,value): import time time.sleep(value) def _send(self,value): self._socket.sendall(value + '\r\n') def clear(self): self._send('c') self._state_red = [0] * 8 self._state_green = [0] * 8 self._state_blue = [0] * 8 def full(self): self._send('f') self._state_red = [255] * 8 self._state_green = [255] * 8 self._state_blue = [255] * 8 def set(self,red,green,blue): self._state_red = red self._state_green = green self._state_blue = blue self._send('s' + ''.join([ (hex(value)[2:] if len(hex(value)[2:]) > 1 else '0' + hex(value)[2:]) for value in green ]) + ''.join([ (hex(value)[2:] if len(hex(value)[2:]) > 1 else '0' + hex(value)[2:]) for value in blue ]) + ''.join([ (hex(value)[2:] if len(hex(value)[2:]) > 1 else '0' + hex(value)[2:]) for value in red ])) def fade(self,red,green,blue,time): latency = 0.1 steps = int(time / latency) delta_red = [] delta_green = [] delta_blue = [] for i in range(8): delta_red.append((red[i] - self._state_red[i]) / steps) delta_green.append((green[i] - self._state_green[i]) / steps) delta_blue.append((blue[i] - self._state_blue[i]) / steps) for step in range(steps): new_red = [] new_green = [] new_blue = [] for i in range(8): new_red.append(int(self._state_red[i] + delta_red[i])) new_green.append(int(self._state_green[i] + delta_green[i])) new_blue.append(int(self._state_blue[i] + delta_blue[i])) self.set(new_red,new_green,new_blue) self._wait(latency)