I’ve got 3 of RbPi 0 Ws with Respeaker Hats. I’ve installed the seeed drives, etc. Audio output primarily stays stable, but I can’t get the mics to work.
The seeed selection will disappear from the drop down selections and everything reverts to Default Device (which doesn’t work). I can sometimes refresh and get the respeaker listed, but it doesn’t work and goes back to the default device again eventually, with respeaker disappearing from the selections again. Most of the time I try refresh, I get a timeout error.
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 796, in api_microphones
microphones = await core.get_microphones()
File "/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/__init__.py", line 849, in get_microphones
handle_finished(), messages, message_types
File "/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/__init__.py", line 995, 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```
Thanks in advance
Make sure that you can record and play with the tests that Seeed list as part of the installation.
The resoeaker seems to require a Raspian OS because it need a file with hardware bindings that are not present in other installation.
And finally it is important to know that Rhasspy does not update the drop down lists correctly, so it will always show default device when you first load the page.
There should be a text that tells you what the actual selected device is though.
Didn’t help. I still get timeouts trying to refresh the drop downs so I can select the card.
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 796, in api_microphones
microphones = await core.get_microphones()
File "/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/__init__.py", line 849, in get_microphones
handle_finished(), messages, message_types
File "/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/__init__.py", line 995, 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```
The audio works when using aplay and arecord CL. But only if Rhasspy container is stopped. So it’s clear Rhasspy has access to the device and is tieing it up, but it still won’t utilize it. I do, again, have one working and as far as I can tell the setup is exactly the same as the other two that will not work properly.
FWIW, I learnt to ignore the concurrent.futures._base.TimeoutError and look at the other error messages on the console. It is probably timing-out because something else has gone wrong. When I got them fixed, the timeout went away.
In my install instructions I have also put a note to refresh my browser window periodically. Is it possible that the drop-down list in your browser has simply not updated to reflect all the values found on the RasPi by the [Test] button ?
There have definitely been issues with the seeed and HinTak drivers not working with later OS kernel versions - but I thought the
I’m not using Docker, venv or other container on my Rhasspy Pi Zero - don’t see any point adding complexity to a dedicated machine - so can’t help with that. Can you run Rhasspy from the console ?