Trying to use Mimic1 but Configuration Skill overrides my config settings

Hey everyone. I am testing out privacy and speed settings on my Picroft. I am trying to use mimic1 TTS instead of mimic2 with the RMS voice as my tts engine in Mycroft. I have tested mimic1 directly and got the voice working. I tried editing the config using mycroft-config system and it accepted the changes to /etc/mycroft/mycroft.conf. I restart Mycroft using mycroft-stop and mycroft-start debug. I hear the correct RMS voice from my config for about 60 seconds when Mycroft starts. Then the configuration settings load from home.mycroft.ai and override my TTS voice settings with “British Male” or what I have set on home.mycroft.ai.

Is there a way to block the Configuration Skill from overriding my TTS config settings, or maybe another way to accomplish changing my TTS to mimic1?

/etc/mycroft/mycroft.conf

{
   "play_wav_cmdline": "aplay %1",
   "play_mp3_cmdline": "mpg123 -a hw:0,0 %1",
   "enclosure": {
      "platform": "picroft"
   },
  "tts": {
    "module": "mimic",
    "mimic": {
      "voice": "/home/pi/mycroft-core/mimic/voices/cmu_us_rms.flitevox",
      "duration_stretch": "1.0",
      "int_f0_target_mean": "100"
    }
  },
   "ipc_path": "/ramdisk/mycroft/ipc/"
}

TTS changes back when this output displays in console after config update. No actual errors appear. I am not using the deprecated default config.

 02:49:28.799 | INFO     |  7558 | ConfigurationSkill | Remote configuration updated
 02:49:28.808 | WARNING  |  7558 | mycroft.configuration.config:_log_old_location_deprecation:175 |
 ===============================================
 ==             DEPRECATION WARNING           ==
 ===============================================
 You still have a config file at /home/pi/.mycroft/mycroft.conf
 Note that this location is deprecated and will not be used in the future
 Please move it to /home/pi/.config/mycroft

Short answer: Put it in ~/.mycroft/mycroft.conf (resp. the new location ~/.config/mycroft/mycroft.conf)

Long answer: (From what i can gather) this is described here and will be resolved sooner rather than later

3 Likes

That definitely fixed my problem. I moved my tts section from the mycroft system config over to the user config file. The changes stayed with me after Config Skill updated my settings.

Thank you, SGee! I am having a great time messing around with things. This one just really stumped me.

2 Likes

I am having the same issue. Did you find a fix?

Hey S_Murphy! Yeah SGee’s method worked for me. Mycroft has more than one config file, and each is loaded in a specific order. I moved the TTS section of my system config file to my user config file, which causes it to load later. Here are the contents of my user config file that allowed me to switch TTS voices. You only need the TTS section. Note I am on a Raspberry Pi.

** ~/.config/mycroft/mycroft.conf **

{
  "max_allowed_core_version": 21.2,
  "tts": {
  "module": "mimic",
  "mimic": {
    "voice": "/home/pi/mycroft-core/mimic/voices/cmu_us_rms.flitevox",
    "duration_stretch": "1.0",
    "int_f0_target_mean": "100"
    }
  }
}

As said in the latest DevSync there should be a new minor update soon. So dev stuff should hit the master branch, which would resolve the problem.