I backed 3 Mark II with camera on kickstarter.com after I saw the campaign and this YouTube video (https://www.youtube.com/watch?v=NS3EASr1yfE). I was excited. I was infected. I was willing to back them. Because I thought it is a promising product. In overall I invested over 600 dollars for 3 Mark II units including delivery and taxes for Germany shipping.
Until the units arrive I thought I try to play with picroft as I had a raspberry pi 3. I bought a PS3 Eye camera and started to install everything with the goal to have a german speaking Mycroft for using it with openHAB, a open-source java-based home automation system (a skill exists already). As I have some skills in web development (mostly PHP and JS), some experience on terminal with Mac OS and Linux and I am feeling as a maker, this should be no problem, does it?
Although I like the vision of Mycroft and think that there are some cool approaches I have to say it is impossible for me.
These are the main pain points:
changing language to german
Maybe it is possible, but if you are following the documentation (https://mycroft.ai/documentation/language-support/german/) you are in a dead end. Yes, it is defined as experimental, but I tried it with 30+ hours to get it working with no chance. If there were a functional way for one language it would be easy to adapt it for other languages.
I kicked Mycroft Mark II with the goal to have a german Mycroft - today I think I will not achieve it.
changing the hot word
I tried it multiple times but it is confusing that there are four files (mycroft.conf) with the same job and it is not clear for me how they interact with each other and which of these are overwritten by home.mycroft.com. Furthermore I did not found a documentation which parameters could be set, I only found “examples” and did not know what is essential and what is obsolete. If you use the standard hot words from home.mycroft.ai but in Germany the existing hot words are not usable. I tried to get some german words and names going via the custom hot word function but then mycroft starts a infinite loop with listening and stopping. It does not matter if the word is short or long.
I backed the Mark IIs to use them as a christmas present for my wife and my two daughters. I am sure they would like them but would call them differently and with a german name. Today I think this will not be possible.
languages in skills (in particular the openhab skill)
I had a look at the openHAB skill and I was wondering how languages are implemented. They are hard written in the code. That was very surprising and very discouraging because in my opinion it is not very professional. I think that part I would somehow get done.
I have no python skills and I find it hard to learn it as I am 40+ year old, busy family man with only a small amount of time for yourself. Maybe if I could script in python or were a single then everything would be easier and there would be no problem to achieve my goal of a german mycroft.
My summary is I am not able take the first step to use picroft properly although I am a technology enthusiast - what about others with fewer skills? I could not tell anything about any functionality because I failed early. I invested in a future technology and today I have a very bad gut instinct.
I hope anyone of the mycroft team or somebody else can give me some hope. Maybe it is totally easy and I oversee the easy solution…
Thank you for your very open feedback - we really appreciate it.
Firstly, my apologies for the languages information not meeting your expectations. Getting the documentation correct for languages has proven difficult, and we even had one of our excellent community members translate the Languages information into German. Over the next few months we’ll be re-architecting the way that languages are handled within Mycroft - largely to increase abstraction away from in-code conditional statements, as you quite rightly point out.
Providing full-stack language support is a challenging task - as languages need to be implemented across the stack, including - as you point out - in each Skill.
Changing the Wake Word
Changing the Wake Word can be done from home.mycroft.ai -> Settings -> Advanced Settings link, but the phonemes used need to be from English, not German unfortunately. A secondary challenge here is that we use Precise as our Wake Word engine by default since mid-March 2018. Precise is based on a neural network, and requires ‘training’ on Wake Words. Your custom Wake Word is less likely to work than Hey Mycroft because it won’t have been trained as well.
I hope that provides more information, even if it doesn’t solve the problems that you’ve been encountering.
thanks for your ideas. I took the time and started from scratch. Unfortunately nothing changed: Mycroft is still thinking I am speaking english. Because I use a picroft there might be some problems with permission rights. Honestly I do not understand the permission concept why there are two users: pi and mycroft. And it is not clear stated in the instructions from @KathyReid which user should own the files I installed. And the instructions from @Jarbas_Ai are written for Mark I.
For now I am giving up. It is too much time for too less progress.
But I am happy that there is a start for developing a better language integration.
@KathyReid: It is not the translation of the documentation which is the problem. You should take someone new from your team and let this person follow the instructions from the documentation. I think something important is missing which is obviously for persons who know Mycroft/Picroft better. I am not firm with the system, I only can do that what is stated word by word.
Maybe there is a need for a special documentation for each system because each system handles details in a different way.
Warming up an old threat. I read the documentation how to add a new language. Unfortunatelly configuring the STT in the conf files is hard to do, because i have troubles to find valid entries.
For using goolge, i find some example, but using different STTs? Can i change the language? Can I use also deepsearch (locally, or better remote)?
I agree the documentation is hard to figure out. I have changed to use google_cloud stt and had also dificulties with figurering out how to do that.
I added what i figured out to the docs and made a PR.
My changes can be seen here and includes how to obtain the google_cloud credential json data.