HermesLedControl

Hi Guys, I am trying HermesLedControl on my 2 satellite RasPi’s, and have a couple of questions…

After a couple of issues (including HLC defaulting to the wrong MQTT port) it is flashing beautifully on the RasPi 3B with reSpeaker 4-mic HAT. :smiley: :heart_eyes:

  1. The wiki on the project-alice github leaves out more than it answers. Should I ask questions and make documentation suggestions by raising github issues, or is there a more appropriate forum than here ?

  2. Unfortunately the RasPi Zero W with Adafruit Voice Bonnet (which I believe is functionally identical to reSpeaker 2-mic HAT) appears to be receiving MQTT messages, but showing messages like “On play finished received but it wasn’t for me”

/etc/systemd/system/hermesledcontrol.service contains

[Unit]
Description=Hermes Led Control

[Service]
WorkingDirectory=/home/don/hermesLedControl_v2.0.15
ExecStart=/home/don/hermesLedControl_v2.0.15/venv/bin/python3 main.py --hermesLedControlConfig=/home/don/.config/hermesLedControl/configuration.yml
Restart=always
RestartSec=5
User=don

[Install]
WantedBy=multi-user.target

/home/don/.config/hermesLedControl/configuration.yml contains:

engine: "rhasspy"
pathToConfig: "/home/don/.config/rhasspy/profiles/en/profile.json"
hardware: "respeaker2Mics"
pattern: "google"
enableDoA: false
debug: True
endFrame: 0 

and the Rhasspy profile is:

{
    "dialogue": {
        "volume": "0.5"
    },
    "handle": {
        "satellite_site_ids": "sat-2",
        "system": "hass"
    },
    "home_assistant": {
        "access_token": "eyJ0eXAiOiJKV1Qi … PH_CoQYsJa00b_-sd8",
        "url": "http://192.168.1.98:8123/"
    },
    "intent": {
        "system": "hermes"
    },
    "microphone": {
        "arecord": {
            "device": "plughw:CARD=seeed2micvoicec,DEV=0",
            "siteId": "sat-2",
            "udp_audio_port": "12203"
        },
        "system": "arecord"
    },
    "mqtt": {
        "enabled": "true",
        "host": "192.168.1.98",
        "port": "1883",
        "password": "passwd",
        "site_id": "sat-2",
        "username": "rhasspy"
    },
    "sounds": {
        "aplay": {
            "device": "plughw:CARD=seeed2micvoicec,DEV=0",
            "volume": "0.5"
        },
        "system": "aplay"
    },
    "speech_to_text": {
        "system": "hermes"
    },
    "text_to_speech": {
        "satellite_site_ids": "sat-2",
        "system": "hermes"
    },
    "wake": {
        "porcupine": {
            "udp_audio": "12203"
        },
        "system": "porcupine"
    }
}

On the RasPi Zero (siteId “sat-2”), journalctl -u hermesledcontrol.service gives (with date/time stamps removed for readability) …

[MainThread] - [INFO] - Initializing HermesLedControl
[MainThread] - [INFO] - Initializing Rhasspy settings
[MainThread] - [INFO] - Loading configurations
[MainThread] - [INFO] - Loaded 14 hardware references
[MainThread] - [INFO] - - Mqtt server set to 192.168.1.98
[MainThread] - [INFO] - - Mqtt port set to 1883
[MainThread] - [INFO] - - Mqtt username set to rhasspy
[MainThread] - [INFO] - - Mqtt password set to "hidden"
[MainThread] - [INFO] - - Client id set to sat-2
[MainThread] - [INFO] - - Hardware set to ReSpeaker 2-Mics
[MainThread] - [INFO] - - Using google as pattern with 3 leds
[MainThread] - [INFO] - Initializing leds controller
[MainThread] - [INFO] - Hermes Led Control started
[Thread-4] - [DEBUG] - New animation <bound method GoogleHomeLedPattern.wakeup of <ledPatterns.GoogleLedPat
[Thread-4] - [DEBUG] - Timeout is setting duration from 0 to 120
[Thread-4] - [DEBUG] - New animation <bound method GoogleHomeLedPattern.idle of <ledPatterns.GoogleLedPatte
[Thread-3] - [DEBUG] - On hotword triggered
[Thread-3] - [DEBUG] - New animation <bound method GoogleHomeLedPattern.wakeup of <ledPatterns.GoogleLedPat
[Thread-3] - [DEBUG] - Timeout is setting duration from 0 to 120
[Thread-3] - [DEBUG] - On play finished received but it wasn't for me
[Thread-3] - [DEBUG] - On hotword toggle on triggered

I have tried to simplify the config files by reducing fields duplicated in multiple files.

SiteId is specified in ~/.config/rhasspy/profiles/en/profile.json"; but does “–clientId:” also need to be specified in ~/.config/hermesLedControl/configuration.yml" ?