Problem Raspiaudio Ultra++ + Wyoming satellite + Openwakeword

Hello Raspiaudio! I am trying to setup a voice assistant with my Rpi4 and your Ultra ++ for Home assistant.
I was able to install the drivers from

and test aplay/arecord successfully with wav files.

I had a problem after installing Wyoming and openwakeword, but after several system updates now everything is running.
Then I noticed that the soundcard service has failed to start:

hass@assistant:~ $ sudo systemctl status wyoming-openwakeword.service wm8960-soundcard.service wyoming-satellite.service
● wyoming-openwakeword.service - Wyoming openWakeWord
     Loaded: loaded (/etc/systemd/system/wyoming-openwakeword.service; disabled; preset: enabled)
     Active: active (running) since Fri 2024-10-18 22:33:38 CEST; 5s ago
   Main PID: 1890 (python3)
      Tasks: 7 (limit: 3909)
        CPU: 1.049s
     CGroup: /system.slice/wyoming-openwakeword.service
             ├─1890 python3 /home/hass/wyoming-openwakeword/script/run --uri tcp://127.0.0.1:10701
             └─1901 /home/hass/wyoming-openwakeword/.venv/bin/python3 -m wyoming_openwakeword --uri tcp://127.0.0.1:10701

Oct 18 22:33:38 assistant systemd[1]: Started wyoming-openwakeword.service - Wyoming openWakeWord.
Oct 18 22:33:40 assistant run[1901]: INFO:root:Ready

× wm8960-soundcard.service - WM8960 soundcard service
     Loaded: loaded (/etc/systemd/system/wm8960-soundcard.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Fri 2024-10-18 22:33:40 CEST; 3s ago
    Process: 1891 ExecStart=/usr/bin/wm8960-soundcard (code=exited, status=99)
   Main PID: 1891 (code=exited, status=99)
        CPU: 242ms

Oct 18 22:33:38 assistant systemd[1]: Starting wm8960-soundcard.service - WM8960 soundcard service...
Oct 18 22:33:38 assistant wm8960-soundcard[1891]: + exec
Oct 18 22:33:38 assistant wm8960-soundcard[1892]: ++ basename /usr/bin/wm8960-soundcard
Oct 18 22:33:40 assistant systemd[1]: wm8960-soundcard.service: Main process exited, code=exited, status=99/n/a
Oct 18 22:33:40 assistant systemd[1]: wm8960-soundcard.service: Failed with result 'exit-code'.
Oct 18 22:33:40 assistant systemd[1]: Failed to start wm8960-soundcard.service - WM8960 soundcard service.

● wyoming-satellite.service - Wyoming Satellite
     Loaded: loaded (/etc/systemd/system/wyoming-satellite.service; disabled; preset: enabled)
     Active: active (running) since Fri 2024-10-18 22:33:38 CEST; 5s ago
   Main PID: 1895 (python3)
      Tasks: 4 (limit: 3909)
        CPU: 812ms
     CGroup: /system.slice/wyoming-satellite.service
             ├─1895 python3 /home/hass/wyoming-satellite/script/run --name assistant --uri tcp://0.0.0.0:10700 --mic-command "arecord -D plughw:CARD=wm8960>
             ├─1905 /home/hass/wyoming-satellite/.venv/bin/python3 -m wyoming_satellite --name assistant --uri tcp://0.0.0.0:10700 --mic-command "arecord ->
             └─1922 arecord -D plughw:CARD=wm8960soundcard,DEV=0 -q -r 16000 -c 1 -f S16_LE -t raw

Oct 18 22:33:39 assistant run[1905]: INFO:root:Ready
Oct 18 22:33:39 assistant run[1905]: DEBUG:root:Detected IP: 192.168.1.1
Oct 18 22:33:39 assistant run[1905]: DEBUG:root:Zeroconf discovery enabled (name=dca6328950b2, host=None)
Oct 18 22:33:39 assistant run[1905]: DEBUG:root:Connecting to mic service: ['arecord', '-D', 'plughw:CARD=wm8960soundcard,DEV=0', '-q', '-r', '16000', '-c'>
Oct 18 22:33:39 assistant run[1905]: DEBUG:root:Connecting to snd service: ['aplay', '-D', 'plughw:CARD=wm8960soundcard,DEV=0', '-q', '-r', '22050', '-c', >
Oct 18 22:33:39 assistant run[1905]: DEBUG:root:Connecting to wake service: tcp://127.0.0.1:10400
Oct 18 22:33:39 assistant run[1905]: INFO:root:Connected to services
Oct 18 22:33:39 assistant run[1905]: DEBUG:root:Using webrtc audio enhancements
Oct 18 22:33:39 assistant run[1905]: DEBUG:root:Connected to mic service
Oct 18 22:33:39 assistant run[1905]: DEBUG:root:Connected to wake service

after that I realised my Rpi can recognize the wake word once , then I have to restart all 3 services. Can someone help me to understand what’s going on?

Hi, this is a known bug in Home Assistant. I’ve also experienced it occasionally with the Muse Luxe, which uses a different platform and codec, so it doesn’t seem related to the Ultra. I recommend checking the Home Assistant forum for similar issues affecting all Raspberry Pi audio shields and then with the WM8960 codec.

As an additional tip, you might want to check the YAML configuration I use for the Muse Radio, where I haven’t encountered this issue:

Thanks for the reply, I’m not configuring Home Assistant yet, still on Rpi, the error is on a different machine than HA. The service wm8960-soundcard.service should run fine also without HA.

After several tests it looks that the wm8960 service is not essential to record/play, I’ve been able to install wyoming and integrate my satellite in Home assistant.