I am trying to get a satellite set up with a Pi Zero W & ReSpeaker 2-Mic hat.
Rhasspy version 2.5.7, installed via Docker.
Manually typing the text to recognise works, with a successful link to the base station (see image) but the microphone & speaker don’t seem to be working.
The drivers are installed and tested in the Raspberry shell. They are also picked up in the Rhasspy “devices” under Settings and show as “working!” when I run the test.
However, it just doesn’t seem to do anything.
Hello,
I have the same hardware configuration.
I had the same problems because of the lack of power of this raspberry PI.
In my cas, now, I use hermes and the wake word is also hermes so that I have no more power issues beaucause my master is a powerful NUC used for Home Assistant.
If needed, I can show you my configuration.
I am running a master on my Home Assistant server also, so this is only intended to record and send the audio. I have it connected to the master by Remote HTTP (this part seems to be working OK).
I would like to see your configuration, if that’s OK. It might help me highlight any differences.
my home assistant send answer to satellites questions.
For audio, my home assistant is linked with mpc of all satellites.
When I wan music on a satellite, on the satellite I send the request for music to home assistant. Home assistant active the mpc on the resquester satellite. By today, I have an big issue ’ beaucause of echo I can’t send an another request. I must work on AEC technic.
When I press the “Wake up” button in the UI, the following is what I get on the Pi console:
Like it doesn’t hear anything, even though the audio input is definitely working.
[DEBUG:2020-10-29 15:41:33,408] rhasspyserver_hermes: Waiting for transcription (session_id=b12136f5-0ce9-4443-a371-772dabfcf478)
[DEBUG:2020-10-29 15:41:33,437] rhasspyserver_hermes: -> AsrStartListening(site_id='satellite', session_id='b12136f5-0ce9-4443-a371-772dabfcf478', lang=None, stop_on_silence=True, send_audio_captured=True, wakeword_id=None, intent_filter=None)
[DEBUG:2020-10-29 15:41:33,457] rhasspyserver_hermes: Publishing 182 bytes(s) to hermes/asr/startListening
[ERROR:2020-10-29 15:42:03,478] rhasspyserver_hermes:
Traceback (most recent call last):
File "/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/quart/app.py", line 1821, in full_dispatch_request
result = await self.dispatch_request(request_context)
File "/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/quart/app.py", line 1869, in dispatch_request
return await handler(**request_.view_args)
File "/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/__main__.py", line 866, in api_listen_for_command
handle_captured(), messages, message_types
File "/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/__init__.py", line 959, in publish_wait
result_awaitable, timeout=timeout_seconds
File "/usr/local/lib/python3.7/asyncio/tasks.py", line 449, in wait_for
raise futures.TimeoutError()
concurrent.futures._base.TimeoutError
Still an issue
Nobody else had this issue with a Pi Zero W?
I’ve tried the installation now through Docker, Debian package and a VENV. They all exhibit the same behaviour, so there seems to be a common issue (me??).
When using the ‘Speak’ button (like the following image), the audio is played back through the speaker, as expected.
Further verifying the connection to the ReSpeaker hat.
I just completed a fresh install of Rhasspy on my Pi Zero W using docker.
Followed the guide exactly except for setting my ReSpeaker Mic 2 hat as the default device in /usr/share/alsa/alsa.conf.
I haven’t tried speaking to Rhasspy yet as I’ve had limited time at the device but I just clicked the ‘Wake Up’ button on my satellite.
The web interface said it was listening for a command and then it stopped which I expected.
I checked the logs and I found some unhelpful information (for me at least).
[ERROR:2020-10-30 19:32:24,298] rhasspyserver_hermes:
Traceback (most recent call last):
File “/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/quart/app.py”, line 1821, in full_dispatch_request
result = await self.dispatch_request(request_context)
File “/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/quart/app.py”, line 1869, in dispatch_request
return await handler(**request_.view_args)
File “/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/main.py”, line 866, in api_listen_for_command
handle_captured(), messages, message_types
File “/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/init.py”, line 959, in publish_wait
result_awaitable, timeout=timeout_seconds
File “/usr/local/lib/python3.7/asyncio/tasks.py”, line 449, in wait_for
raise futures.TimeoutError()
concurrent.futures._base.TimeoutError
[DEBUG:2020-10-30 19:31:54,276] rhasspyserver_hermes: Publishing 184 bytes(s) to hermes/asr/startListening
[DEBUG:2020-10-30 19:31:54,244] rhasspyserver_hermes: -> AsrStartListening(site_id=‘Kitchen-Sat’, session_id=‘9b34f890-d589-4816-982c-342bae68df9a’, lang=None, stop_on_silence=True, send_audio_captured=True, wakeword_id=None, intent_filter=None)
[DEBUG:2020-10-30 19:31:54,217] rhasspyserver_hermes: Subscribed to hermes/error/asr
[DEBUG:2020-10-30 19:31:54,200] rhasspyserver_hermes: Waiting for transcription (session_id=9b34f890-d589-4816-982c-342bae68df9a)
I don’t know.
I do know that it is not the hardware.
I am able record with ‘arecord fiename.mp3’ and play it back with ‘aplay filename.mp3’.
I went to double check but my network connect to the pi has become completely unstable. I am now unable t login or connect to the web interface, even after rebooting. Not sure if it’s related to Rhasspy or maybe my SD card is failing.
One of my satellites is a RasPi Zero W with reSpeaker 2 mic. I didn’t use Docker since it only runs rhasspy. I use External MQTT, and the satellite is configured with arecord and aplay (device plughw:CARD=seeed2micvoicec,DEV=0 for both); Porcupine Wake Word; and Hermes MQTT for Speech to Text, Intent Recognition and Text to Speech.
If you use the RasPi Zero’s wi-fi you will want to turn off wi-fi power saving to reduce drop-outs sudo iw dev wlan0 set power_save off