Piper can't download voice files

Hoping someone can point me in the right direction.

I have Ollama setup and functional. Whisper can hear and translate speech into text, piper see’s the result from Ollama but is unable to speak the result.

I see an error in the logs that says that because piper (really python, I think) can’t find a local SSL cert (lets encrypt is installed with a cert from Cloudflare) that it can’t download any voices. No voice => no speech output.

Below is my Piper log.

I have tried uninstalling/installing Ollama, Piper/Whisper without any improvement. I’ve looked all over and I can find a few mentions of folks with similar issues in the past but no usable solutions.

I think voices are downloaded from hugginface.co and I can easily access it from the vlan where HA and Ollama/OpenwebUI are hosted.

I don’t think it should matter but here’s my setup:

Everything is running in Proxmox
-HA and Ollama/OpenWebUI are on the same vlan but in separate LXCs. There are not firewall rules that prevent access from one to the other.

-There are no firewall rules that prevent HA from accessing the internet

I am using Satellite 1 boards from Future Proof Homes as my satellites

Thanks for any pointers you may have!

Piper Log:

urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:992)>

ERROR:asyncio:Task exception was never retrieved

future: <Task finished name=‘wyoming event handler’ coro=<AsyncEventHandler.run() done, defined at /usr/local/lib/python3.11/dist-packages/wyoming/server.py:31> exception=VoiceNotFoundError(‘en_US-kristin-medium’)>

Traceback (most recent call last):

File “/usr/local/lib/python3.11/dist-packages/wyoming/server.py”, line 41, in run

if not (await self.handle_event(event)):

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File “/usr/local/lib/python3.11/dist-packages/wyoming_piper/handler.py”, line 137, in handle_event

raise err

File “/usr/local/lib/python3.11/dist-packages/wyoming_piper/handler.py”, line 120, in handle_event

await self._handle_synthesize(self._synthesize)

File “/usr/local/lib/python3.11/dist-packages/wyoming_piper/handler.py”, line 196, in _handle_synthesize

model_path, config_path = find_voice(

^^^^^^^^^^^

File “/usr/local/lib/python3.11/dist-packages/wyoming_piper/download.py”, line 186, in find_voice

raise VoiceNotFoundError(name)

wyoming_piper.download.VoiceNotFoundError: en_US-kristin-medium

If you just want to run a voice, download it manually, copy it to /share/piper, and restart Piper.

If you want to check if the HF server is available, I would start by installing Piper on another host (for example, the main PC) to see if voice downloads work there.

TL:DR - DNS issue

Thanks - you ended up pointing me toward a path to solve this issue.

I installed a voice file as you suggested but still had no audio output from piper.

Then, I setup a new VM with fresh install of HA and just set up voice features. Still no joy. As I was looking at integrations I noticed that the Radio Browser gave an error that said, “Failed to set up” That error is also in my first instance of HA but since i’ve never used it, I didn’t think anything about it. When I started to research this, the issue seemed to be DNS related.

my unifi router is set up to use NextDNS and therefore I point all of my DNS traffic only to the router. After I added Quad9 as an alternative to my router for DNS, everything jsut worked after reboot.