Getting Rhasspy running on a Mythic-Beasts hosted Pi

I just installed Rhasspy on a Mythic-Beasts hosted Pi4 and everything is up n running.
Now what’s the easiest way to talk to it - send audio - to test it out?
I installed the Rhasspy mobile app on my phone but so far no luck getting it to work.
I think it might be due to MB only supporting IPv6. I may try configuring their IPv6 to IPv4 reverse proxy.
But other easy ways?
I can VNC into the Pi desktop and have access to the Rhasspy web UI.

The easyest way, to me, is to plug a mic and a speaker on your PI4…

I can’t really help with this, it’s kind of a “strange” setup (not meant offensive, more like one in thousand :slight_smile: ).

What I’d try is to use the hosted Pi as the “main instance”, and setup the some satellites. Have you tried that?

In the end, you need something that physically has a microphone attached. So a Pi Zero as satellite talks via MQTT to the “main instance”? Something like that. :slight_smile:

Mythic Beasts is a hoster for Pis. :slight_smile: Like any hosting provider, but on Raspberrys. :wink: So attaching a microphone is a “not possible”. Take a look at their offers, it’s kind of “strange”. :rofl:

https://www.mythic-beasts.com/

1 Like

No can do. The Pi is thousands of miles away from me.
As I said in the OP it’s a “hosted” Pi at Mythic-Beasts data center in London :slight_smile:

why is the MB offering strange?
As for the physical microphone thing, you know there is an Rhasspy mobile Android app for talking to it, right? Seems not many people use that. It’s just my use is not for Home IoT kinda thing. Mostly want to use it for coding, experimenting.

I also saw some PyAudio apps I think … that should be able to talk to the Rhasspy node no?

1 Like

Yepp, I know the Rhasspy app, but I always thought of it as local only?! Maybe because in the screenshots on Github there is only a local IP. :thinking: I tried it once, but wasn’t very impressed. But at that time I wasn’t very familiar with Rhasspy at all, so I’ll try it again in the future. :slight_smile:

I find the offering from MB “strange”, because it offers not much for the money, I think. I can get a Pi for the cost of four, five months. So why rent it, when I can buy it? Especially with Pis, it’s always good to have one in the back, that is not used.

But in all honesty, I might not be their audience, as I use nine Pis at the moment, and have three lying around, waiting to get their projects finished. :rofl: :rofl: :rofl:

1 Like

I think there are various networking, infrastucture and maintenance advantages. Primary among them is 3X to 4X faster upload and download speeds. 360Mbps versus my 80Mbps at home.
Would you setup a publicly accessible website on your home Pi? You can spin up a MB Pi in like 10 minutes.
I don’t think the cost is high compared to other dedicated hosting offerings but I’m not super experienced in this sorta thing. I have a Pi4 at home too. Just wanna experiment with this hosted version to see how it compares.

1 Like

Please, don’t misunderstand me, I’m not against that at all or doubt your use case. It’s just not my use case. If there weren’t any use cases, I bet they wouldn’t offer it. :slight_smile: I stumbled over them a while ago in the HomeAssistant forum, and was more than surprised.

But as I said, I’m not their audience, and I have a few good hosters for my needs, but they are a lot cheaper. Sure, on different hardware, and mostly tailored for different (my) needs.

Please, don’t let that stop you. If you want to experiment with this, do it. Who am I to tell you how to spend your money :rofl: :rofl: :rofl:

See, I’m kind of a nerd, I want to own my (IoT) hardware. But as I said, I’m running a few Pis and that is not telling about the 22 ESP devices (ESP32 or ESP8266). :rofl: :rofl: :rofl:

1 Like

well now I’m stuck trying to figure out another problem, when trying to finalize the config when clicking on the button to download files for the profile it gives me this error…
ClientConnectorError: Cannot connect to host github.com:443 ssl:<ssl.SSLContext object at 0x7f73b503f0> [Temporary failure in name resolution]
saw one other person with this error here, but prob different reason. Seems like a DNS or routing problem. dunno yet. Any ideas how I can debug this? files listed for download specified here on github so I guess the URL it’s not able to reach is https://github.com/rhasspy/rhasspy-profile ???..

{
“en-us_pocketsphinx-cmu/acoustic_model/feat.params”: {
“bytes_expected”: 129,
“file_key”: “en-us_pocketsphinx-cmu/acoustic_model/feat.params”,
“file_path”: “/profiles/en/acoustic_model/feat.params”,
“human_size”: “129.0 B”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 0
},
“en-us_pocketsphinx-cmu/acoustic_model/feature_transform”: {
“bytes_expected”: 5660,
“file_key”: “en-us_pocketsphinx-cmu/acoustic_model/feature_transform”,
“file_path”: “/profiles/en/acoustic_model/feature_transform”,
“human_size”: “5.5 KiB”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 1
},
“en-us_pocketsphinx-cmu/acoustic_model/mdef”: {
“bytes_expected”: 6992233,
“file_key”: “en-us_pocketsphinx-cmu/acoustic_model/mdef”,
“file_path”: “/profiles/en/acoustic_model/mdef”,
“human_size”: “6.7 MiB”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 2
},
“en-us_pocketsphinx-cmu/acoustic_model/means”: {
“bytes_expected”: 23675972,
“file_key”: “en-us_pocketsphinx-cmu/acoustic_model/means”,
“file_path”: “/profiles/en/acoustic_model/means”,
“human_size”: “22.6 MiB”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 3
},
“en-us_pocketsphinx-cmu/acoustic_model/mixture_weights”: {
“bytes_expected”: 657728,
“file_key”: “en-us_pocketsphinx-cmu/acoustic_model/mixture_weights”,
“file_path”: “/profiles/en/acoustic_model/mixture_weights”,
“human_size”: “642.3 KiB”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 4
},
“en-us_pocketsphinx-cmu/acoustic_model/noisedict”: {
“bytes_expected”: 113,
“file_key”: “en-us_pocketsphinx-cmu/acoustic_model/noisedict”,
“file_path”: “/profiles/en/acoustic_model/noisedict”,
“human_size”: “113.0 B”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 5
},
“en-us_pocketsphinx-cmu/acoustic_model/transition_matrices”: {
“bytes_expected”: 2272,
“file_key”: “en-us_pocketsphinx-cmu/acoustic_model/transition_matrices”,
“file_path”: “/profiles/en/acoustic_model/transition_matrices”,
“human_size”: “2.2 KiB”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 6
},
“en-us_pocketsphinx-cmu/acoustic_model/variances”: {
“bytes_expected”: 23675972,
“file_key”: “en-us_pocketsphinx-cmu/acoustic_model/variances”,
“file_path”: “/profiles/en/acoustic_model/variances”,
“human_size”: “22.6 MiB”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 7
},
“en-us_pocketsphinx-cmu/base_dictionary.txt”: {
“bytes_expected”: 3240168,
“file_key”: “en-us_pocketsphinx-cmu/base_dictionary.txt”,
“file_path”: “/profiles/en/base_dictionary.txt”,
“human_size”: “3.1 MiB”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 8
},
“en-us_pocketsphinx-cmu/g2p.corpus”: {
“bytes_expected”: 4190329,
“file_key”: “en-us_pocketsphinx-cmu/g2p.corpus”,
“file_path”: “/profiles/en/g2p.corpus”,
“human_size”: “4.0 MiB”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 9
},
“en-us_pocketsphinx-cmu/g2p.fst”: {
“bytes_expected”: 41213581,
“file_key”: “en-us_pocketsphinx-cmu/g2p.fst”,
“file_path”: “/profiles/en/g2p.fst”,
“human_size”: “39.3 MiB”,
“setting_name”: “speech_to_text.system”,
“setting_value”: “pocketsphinx”,
“target_is_directory”: false,
“index”: 10
}
}

well a good clue I think…
destination host unreachable >> ping4 raw.githubusercontent.com
OK >> ping6 raw.githubusercontent.com

same for pinging github.com. Must be Mythic-Beasts ipv6 only needs the proxy or DNS configured I guess.

I do as well have problems with Github (especially the api endpoint of all kinds) today. Doesn’t seem related to you or what you’re trying to do…

I tried to update with git pull in two totally different projects, no luck.

Must be the day, maybe to warm? :rofl: Just try again tomorrow, before you search for an error, that is just a DNS gremlin. :rofl:

gonna leave a bread crumb here just en case anyone else goes down this path.
The problem is Mythic-Beasts Pi hosting only has IPv6 networking and Docker does not have IP6 enabled in the containers by default. You have to config that yourself. I knew nothing about Docker or IPv6 or Mythic-Beasts before this so it took me a while to figure out the problem.

This is helpful…
Build a IPv6 Docker Network
Youtube video of same: https://youtu.be/ghqBzad5efc

I haven’t tried installing Rhasspy other ways, without Docker (yet).
I was stubborn trying to understand why it was failing :wink:

Pinging this thread if only to see if anyone knows of changes in Docker’s support for IPv6? since that seems to have been the big roadblock for spinning up Rhasspy on an inexpensive hosted Pi4.

Unfortunately Mythic-Beast’s Support and doc’s didn’t help much wrt IPv6 configuration - it’s mostly left up to users’ to figure it out.