Ejemplo n.º 1
0
 def startup(self):
     """Startup of the LED pixel ring."""
     LOG.debug("[Respeaker4Mic] Start LED pixel ring.")
     self.power.on()
     pixel_ring.set_brightness(10)
     pixel_ring.change_pattern(self.pattern)
     pixel_ring.wakeup()
Ejemplo n.º 2
0
    def initialize(self):
        LOG.debug("initialising")
        self.en = mraa.Gpio(12)
        if os.geteuid() != 0:
            time.sleep(1)

        self.en.dir(mraa.DIR_OUT)
        self.en.write(0)
        pixel_ring.set_brightness(20)
        pixel_ring.wakeup()

        self.userkey = None
        try:
            self.userkey = InputDevice("/dev/input/event0")
        except Exception as e:
            LOG.debug("exception while reading InputDevice: {}".format(e))

        if self.userkey:
            self.schedule_repeating_event(self.handle_button, None, 0.1,
                                          'RespeakerIo')

        self.add_event('recognizer_loop:record_begin',
                       self.handle_listener_wakeup)
        self.add_event('recognizer_loop:record_end', self.handle_listener_off)
        self.add_event('recognizer_loop:audio_output_start',
                       self.handle_listener_speak)
        self.add_event('recognizer_loop:audio_output_end',
                       self.handle_listener_off)
        self.add_event('mycroft.skill.handler.start',
                       self.handle_listener_think)
        self.add_event('mycroft.skill.handler.complete',
                       self.handle_listener_off)
        pixel_ring.off()
Ejemplo n.º 3
0
 def initialize(self):
     self.log.info("Pixel Ring: Initializing")
     self.power = LED(5)
     self.power.on()
     pixel_ring.set_brightness(10)
     pixel_ring.change_pattern('echo')
     pixel_ring.wakeup()
     self.enable()
def consume_enter(sins, board, opts, vars):
    en = mraa.Gpio(12)
    if os.geteuid() != 0:
        time.sleep(1)

    en.dir(mraa.DIR_OUT)
    en.write(0)
    vars["led"] = en
    pixel_ring.set_brightness(20)
Ejemplo n.º 5
0
    def record_begin_handler(self, message):
        en = mraa.Gpio(12)
        if os.geteuid() != 0:
            time.sleep(1)

        en.dir(mraa.DIR_OUT)
        en.write(0)

        pixel_ring.set_brightness(20)
        pixel_ring.think()
        print('I\'m awake')
Ejemplo n.º 6
0
 def initialize(self):
     self.log.info("Pixel Ring: Initializing")
     self.power = LED(5)
     self.power.on()
     pixel_ring.set_brightness(10)
     pattern = self.settings.get("theme", "mytheme1")
     pixel_ring.change_pattern(pattern)
     self.log.info(
         f"Pixel Ring Pattern - Input: {pattern} - Actual: {pixel_ring.pattern}"
     )
     pixel_ring.wakeup()
     self.enable()
Ejemplo n.º 7
0
def main(options):
    """
    Main function, starts the logic based on parameters.
    """
    LOGGER.debug("Options: %s", options)
    # start LED ring
    power = LED(5)
    power.on()
    pixel_ring.set_brightness(options.led_brightness)
    pixel_ring.change_pattern(options.led_pattern)
    # subscribe topics
    start_subscribe(options)
Ejemplo n.º 8
0
def led_pixel_ring():

    pixel_ring.set_brightness(20)

    while led_ring:
        try:
            pixel_ring.wakeup()
            time.sleep(0.1)
            pixel_ring.off()
            time.sleep(0.1)
            pixel_ring.off()
        except KeyboardInterrupt:
            break

    pixel_ring.off()
Ejemplo n.º 9
0
def led_pixel_ring():
    en.dir(mraa.DIR_OUT)
    en.write(0)
    pixel_ring.set_brightness(20)

    while led_ring:
        try:
            pixel_ring.wakeup()
            time.sleep(0.01)
            pixel_ring.off()
            time.sleep(0.01)
        except KeyboardInterrupt:
            break

        pixel_ring.off()
    en.write(1)
Ejemplo n.º 10
0
def main():
    logging.basicConfig(level=logging.DEBUG)

    quit_event = Event()
    thread = Thread(target=task, args=(quit_event,))
    thread.daemon = True
    thread.start()
    pixel_ring.set_brightness(9)
    tts.startLoop()
    print("Starting main loop")
    while True:
        try:
            time.sleep(1)
        except KeyboardInterrupt:
            print('Quit')
            quit_event.set()
            break
    time.sleep(1)
Ejemplo n.º 11
0
    def initialize(self):
        LOG.debug("initialising")

        pixel_ring.set_brightness(10)
        pixel_ring.wakeup()

        self.add_event('recognizer_loop:record_begin',
                       self.handle_listener_wakeup)
        self.add_event('recognizer_loop:record_end', self.handle_listener_off)
        self.add_event('recognizer_loop:audio_output_start',
                       self.handle_listener_speak)
        self.add_event('recognizer_loop:audio_output_end',
                       self.handle_listener_off)
        self.add_event('mycroft.skill.handler.start',
                       self.handle_listener_think)
        self.add_event('mycroft.skill.handler.complete',
                       self.handle_listener_off)
        pixel_ring.off()
Ejemplo n.º 12
0
def main():
    if len(sys.argv) < 2:
        print("Error: need to specify sensitivity")
        print("Usage: python main.py 0.36")
        sys.exit(-1)

    #pixel_ring
    en = mraa.Gpio(12)

    if os.geteuid() != 0:
        time.sleep(1)

    en.dir(mraa.DIR_OUT)
    en.write(0)

    pixel_ring.set_brightness(20)
    pixel_ring.change_pattern('echo')

    files = os.listdir("./res/*.*mdl")
    models = files

    sensitivity = sys.argv[1] * models.count()
    # capture SIGINT signal, e.g., Ctrl+C
    signal.signal(signal.SIGINT, signal_handler)

    detector = snowboydecoder_arecord.HotwordDetector(models, sensitivity=sensitivity, audio_gain=2)
    print('Listening... Press Ctrl+C to exit')

    # main loop
    detector.start(detected_callback=detected_callback,
                   interrupt_check=interrupt_callback,
                   sleep_time=0.03)

    pixel_ring.off()
    time.sleep(1)
    en.write(1)
    detector.terminate()
Ejemplo n.º 13
0
except NameError:
    FileNotFoundError = IOError

WARNING_NOT_REGISTERED = """
    This device is not registered. This means you will not be able to use
    Device Actions or see your device in Assistant Settings. In order to
    register this device follow instructions at:

    https://developers.google.com/assistant/sdk/guides/library/python/embed/register-device
"""

# If the hardware is ReSpeaker 4 Mic Array for Pi or ReSpeaker V2,
# there is a power-enable pin which should be enabled at first. I guess this applies to 6-Array as well?
power = LED(5)
power.on()
pixel_ring.set_brightness(20)
pixel_ring.pattern = CustomPattern(pixel_ring.show)
# pixel_ring.change_pattern("google")
pixel_ring.wakeup()
subprocess.Popen(
    ["aplay", "/home/pi/piassistant/src/sample-audio/startup_2.wav"],
    stdin=subprocess.PIPE,
    stdout=subprocess.PIPE,
    stderr=subprocess.PIPE)


def process_event(event):
    """Pretty prints events.

    Prints all events that occur with two spaces between each new
    conversation and a single space between turns of a conversation.
Ejemplo n.º 14
0
def on():
    # Change brightness of LEDs (0x20: ON)
    pixel_ring.set_brightness(0x1F)
    listen()
Ejemplo n.º 15
0
def off():
    # Change brightness of LEDs (0x00: OFF)
    pixel_ring.set_brightness(0x00)
    spin()
Ejemplo n.º 16
0
 def startup(self):
     """Startup of the LED pixel ring."""
     LOG.debug("[RespeakerArrayV2] Start LED pixel ring.")
     pixel_ring.set_brightness(10)
     pixel_ring.wakeup()
Ejemplo n.º 17
0
    def initialize(self):
        self.load_data_files(dirname(__file__))

        en = mraa.Gpio(12)
        if os.geteuid() != 0:
            time.sleep(1)

        en.dir(mraa.DIR_OUT)
        en.write(0)

        pixel_ring.set_brightness(27)
        pixel_ring.wakeup()
        time.sleep(1)
        pixel_ring.off()

        self.add_event('recognizer_loop:record_begin',
                       self.record_begin_handler)
        self.add_event('recognizer_loop:record_end', self.record_end_handler)

        all_open_intent = IntentBuilder("AlfredAllOpenIntent").require(
            "Open").build()
        self.register_intent(all_open_intent, self.handle_all_open_intent)

        all_close_intent = IntentBuilder("AlfredAllCloseIntent").require(
            "Close").build()
        self.register_intent(all_close_intent, self.handle_all_close_intent)

        all_white_intent = IntentBuilder("AlfredAllWhiteIntent").require(
            "White").build()
        self.register_intent(all_white_intent, self.handle_all_white_intent)

        all_black_intent = IntentBuilder("AlfredAllBlackIntent").require(
            "Black").build()
        self.register_intent(all_black_intent, self.handle_all_black_intent)

        all_purple_intent = IntentBuilder("AlfredAllPurpleIntent").require(
            "Purple").build()
        self.register_intent(all_purple_intent, self.handle_all_purple_intent)

        all_pink_intent = IntentBuilder("AlfredAllPinkIntent").require(
            "Pink").build()
        self.register_intent(all_pink_intent, self.handle_all_pink_intent)

        all_yellow_intent = IntentBuilder("AlfredAllYellowIntent").require(
            "Yellow").build()
        self.register_intent(all_yellow_intent, self.handle_all_yellow_intent)

        all_orange_intent = IntentBuilder("AlfredAllOrangeIntent").require(
            "Orange").build()
        self.register_intent(all_orange_intent, self.handle_all_orange_intent)

        all_red_intent = IntentBuilder("AlfredAllRedIntent").require(
            "Red").build()
        self.register_intent(all_red_intent, self.handle_all_red_intent)

        all_green_intent = IntentBuilder("AlfredAllGreenIntent").require(
            "Green").build()
        self.register_intent(all_green_intent, self.handle_all_green_intent)

        all_blue_intent = IntentBuilder("AlfredAllBlueIntent").require(
            "Blue").build()
        self.register_intent(all_blue_intent, self.handle_all_blue_intent)

        cinema_intent = IntentBuilder("AlfredCinemaIntent").require(
            "Cinema").build()
        self.register_intent(cinema_intent, self.handle_cinema_intent)

        agenda1_intent = IntentBuilder("AlfredAgenda1Intent").require(
            "Agenda1").build()
        self.register_intent(agenda1_intent, self.handle_agenda1_intent)

        agenda2_intent = IntentBuilder("AlfredAgenda2Intent").require(
            "Agenda2").build()
        self.register_intent(agenda2_intent, self.handle_agenda2_intent)

        fan_intent = IntentBuilder("AlfredFanIntent").require("Fan").build()
        self.register_intent(fan_intent, self.handle_fan_intent)

        self.apikey = self.settings['apikey']
        print('apikey equals ' + self.apikey)
        self.jeedomaddress = self.settings['jeedomaddress']
        print('jeedomaddress equals ' + self.jeedomaddress)

        self.idopen = self.settings['idopen']
        self.idclose = self.settings['idclose']
        self.idon = self.settings['idon']
        self.idoff = self.settings['idoff']
        self.idpurple = self.settings['idpurple']
        self.idpink = self.settings['idpink']
        self.idyellow = self.settings['idyellow']
        self.idorange = self.settings['idorange']
        self.idred = self.settings['idred']
        self.idgreen = self.settings['idgreen']
        self.idblue = self.settings['idblue']
        self.idcinema = self.settings['idcinema']
        self.idagenda1 = self.settings['idagenda1']
        self.idagenda2 = self.settings['idagenda2']
        self.idfan = self.settings['idfan']

        self.actionopen = self.settings['actionopen']
        self.actionclose = self.settings['actionclose']
        self.actionon = self.settings['actionon']
        self.actionoff = self.settings['actionoff']
        self.actionpurple = self.settings['actionpurple']
        self.actionpink = self.settings['actionpink']
        self.actionyellow = self.settings['actionyellow']
        self.actionorange = self.settings['actionorange']
        self.actionred = self.settings['actionred']
        self.actiongreen = self.settings['actiongreen']
        self.actionblue = self.settings['actionblue']
        self.actioncinema = self.settings['actioncinema']
        self.actionagenda1 = self.settings['actionagenda1']
        self.actionagenda2 = self.settings['actionagenda2']
        self.actionfan = self.settings['actionfan']
Ejemplo n.º 18
0
def main():

    # enable led power
    en = mraa.Gpio(12)
    if os.geteuid() != 0:
        time.sleep(1)
    en.dir(mraa.DIR_OUT)
    en.write(0)

    pixel_ring.set_brightness(100)
    pixel_ring.think()

    sm = StateMachine()

    def bus_handler(sender, object, iface, signal, params):
        # print(sender)
        # print(object)
        # print(signal)
        # print(params)

        if signal == 'trigger':
            try:
                dir = params[0]
            except:
                dir = 0
            sm.on_detected(dir)
        elif signal == 'on_listen':
            sm.on_listening()
        elif signal == 'on_think':
            sm.on_thinking()
        elif signal == 'on_speak':
            sm.on_speaking()
        elif signal == 'on_idle':
            sm.on_idle()
        elif signal == 'connecting':
            sm.on_thinking()
        elif signal == 'ready':
            sm.on_avs_ready()
        elif signal == 'respeakerd_ready':
            sm.on_respeakerd_ready()

    system_bus = SystemBus()
    loop = GLib.MainLoop()
    sub = system_bus.subscribe(iface='respeakerd.signal',
                               signal_fired=bus_handler)

    def on_exit(sig):
        sub.unsubscribe()
        loop.quit()

    setup_signals(signals=[signal.SIGINT, signal.SIGTERM, signal.SIGHUP],
                  handler=on_exit)

    print("Running...")

    try:
        loop.run()
    except KeyboardInterrupt:
        pass
    finally:
        pixel_ring.off()

    print("Quit...")

    en.write(1)
Ejemplo n.º 19
0
 def power_on_test(self):
     self.power = LED(5)
     self.power.on()
     pixel_ring.set_brightness(10)
Ejemplo n.º 20
0
    def __init__(self):
        MycroftSkill.__init__(self)
        self.power = LED(5)
        self.power.on()

        pixel_ring.set_brightness(10)
Ejemplo n.º 21
0
import time
from pixel_ring import pixel_ring

pixel_ring.set_brightness(1)
pixel_ring.set_color(rgb=None, r=50, g=205, b=50)
#time.sleep(3)





Ejemplo n.º 22
0
def start_LED(n):
    power.on()
    pixel_ring.set_brightness(10)
    time_end = time.time() + n
    return time_end