Exemple #1
0
 def __init__(self):
     HippieTrap.__init__(self)
     self.state = False
     self.patterns = []
     self.current_pattern = None
     self.random_patterns = None
     self.next_update = 0
Exemple #2
0
def main(transitions=True):

    with HippieTrap() as trap:
        trap.begin()
        trap.set_brightness(ALL, brightness)

        ht.add_pattern(SweepTwoColorShiftPattern)
        ht.add_pattern(SweepOneColorPerRingPattern)
        ht.add_pattern(SwappiesPattern)
        ht.add_pattern(RandomColorsPattern)
        ht.add_pattern(EachBottleOneRainbowPattern)
        ht.add_pattern(FireIceCirclesPattern)
        ht.add_pattern(SolidPattern)
        ht.add_pattern(RainbowPattern)
        ht.add_pattern(TexturePattern)
        ht.setup()

        while True:
            random.shuffle(patterns)
            for pattern_class in patterns:
                pattern = pattern_class(trap)
                print(pattern.name)
                pattern.start()
                try:
                    sleep(10)
                except KeyboardInterrupt:
                    pattern.stop()
                    pattern.join()
                    trap.clear(ALL)
                    return

                pattern.stop(transition=transitions)
                pattern.join()
Exemple #3
0
def send_firmware(filename):
    with HippieTrap() as ch:
        try:
            with open(filename, "rb") as f:
                lines = f.readlines()

            filesize = os.path.getsize(filename)
        except IOError as err:
            print(("Error loading hex file: %s" % err))
            return

        print(("filesize: %d bytes of max %d bytes" % (filesize, MAX_SIZE)))
        if filesize >= MAX_SIZE:
            print("hex file too large. Can't upload.")
            return

        for i in range(16):
            if not ch.ser.write(bytearray((0x45, ))):
                print("Cannot write programming header.")
                return
        sleep(.1)

        if not ch.ser.write(bytearray(struct.pack("<H", filesize))):
            print("Cannot write hex file size header.")
            return

        sleep(.1)

        for i, line in enumerate(lines):
            if not line:
                break

            if not ch.ser.write(bytearray(line)):
                print("Cannot write to device.")
                return

            print(("%03d/%03d\b\b\b\b\b\b\b\b" % (i, len(lines))), end=' ')
            sys.stdout.flush()
            sleep(.05)

        print("Write complete.")
Exemple #4
0
from random import random


class RandomColorsPattern(PatternBase):

    PERIOD = 850 
    name = "random colors"

    def pattern(self):

        self.trap.send_entropy()
        while True:
            self.trap.send_fade(ALL, self.PERIOD, ())
            self.trap.start_pattern(ALL)
            sleep(self.PERIOD / 1000.0)
            self.trap.stop_pattern(ALL)

            if self.stop_thread:
                break 

        self.trap.stop_pattern(ALL)


if __name__ == "__main__":
    with HippieTrap() as trap:
        trap.begin()
        trap.set_brightness(ALL, 100)

        p = RandomColorsPattern(trap)
        p.pattern()
Exemple #5
0
#!/usr/bin/env python3

import os
import sys
import math
import random

from time import sleep, time
from hippietrap.hippietrap import HippieTrap, BROADCAST, NUM_NODES
from hippietrap.color import Color

with HippieTrap() as ch:
    ch.begin()

    start = int(sys.argv[1])

    for id in range(start, NUM_NODES + 1):
        ch.set_color(id, Color(0, 0, 0))

    for id in range(start, NUM_NODES + 1):
        print(id)
        ch.set_color(id, Color(0, 0, 255))
        sleep(.25)
Exemple #6
0
 def __init__(self):
     HippieTrap.__init__(self)
     self.state = False
     self.patterns = []
     self.current_pattern = None
Exemple #7
0
#!/usr/bin/env python3

import os
import sys
import math
from hippietrap.hippietrap import HippieTrap

with HippieTrap() as ht:
    ht.power_on()
Exemple #8
0
#!/usr/bin/python

import os
import sys
import math
from hippietrap.hippietrap import HippieTrap

HippieTrap.power_on()
Exemple #9
0
#!/usr/bin/python

import os
from time import sleep
from hippietrap.hippietrap import HippieTrap, BROADCAST

with HippieTrap() as ch:
    ch.clear(BROADCAST)

sleep(.1)

HippieTrap.power_off()