How to Get Started with Mycroft Voice Assistant

Jun 18, 2021 | Data Science

If you’re intrigued by the concept of a hackable open-source voice assistant, Mycroft is your gateway to exploring and experimenting with voice technology. This guide will help you set up Mycroft, run it, and troubleshoot common issues. Let’s dive in!

Table of Contents

Getting Started

To kick things off, you need to get Mycroft’s code in your system. The simplest way is through Git. Execute the following commands in your terminal:

cd ~
git clone https://github.com/MycroftAI/mycroft-core.git
cd mycroft-core
bash dev_setup.sh

This script will set up the necessary dependencies and create a virtual environment. If you’re not on Ubuntu or Debian, you may have to install some packages manually.

Running Mycroft

Mycroft provides a script start-mycroft.sh to perform essential tasks using the virtual environment set up previously. To start Mycroft, navigate to your Mycroft directory and execute:

cd ~/mycroft-core
./start-mycroft.sh debug

The debug mode not only runs the necessary background services but also brings up a Command Line Interface (CLI) where you can interact with Mycroft. Alternatively, you can start all services in the background using:

./start-mycroft.sh all

Need to stop everything? Just run:

./stop-mycroft.sh

Using Mycroft

*Home* Device and Account Manager

Mycroft AI manages devices through a system called Mycroft Home. To pair your device, say “Hey Mycroft, pair my device,” and a 6-digit code will be spoken. Enter this on the Mycroft Home site to complete the process.

Skills

Mycroft becomes more powerful when you add skills. Initially, a few default skills will be available, but you can explore the full range from the Skill Repository and share your own creations.

Behind the Scenes

Pairing Information

Your device’s pairing information is stored in ~/.config/mycroft/identity/identity2.json. Never share this file with anyone!

Configuration

Mycroft’s configuration can be found in various locations, and it loads them in a specific order:

  • mycroft-core/mycroft/configuration/mycroft.conf (Defaults)
  • Mycroft Home (Remote)
  • /etc/mycroft/mycroft.conf (Machine)
  • $XDG_CONFIG_DIR/mycroft/mycroft.conf (User)

Using Mycroft Without Home

If you prefer not to use Mycroft Home, create $HOME/.config/mycroft/mycroft.conf with specific content to blacklist certain skills.

API Key Services

Mycroft relies on a variety of API keys for functionality. Be sure to integrate keys like Google STT and OpenWeatherMap to enhance Mycroft’s capabilities.

Using Mycroft behind a Proxy

If you’re behind a proxy, you’ll need to set an environment for it:

For unauthenticated proxy:

export http_proxy=http://proxy_hostname.com:proxy_port
export https_proxy=http://proxy_hostname.com:proxy_port
export no_proxy=localhost,127.0.0.1,localaddress,.localdomain.com,0.0.0.0,::1

For authenticated proxy:

export http_proxy=http://user:password@proxy_hostname.com:proxy_port
export https_proxy=http://user:password@proxy_hostname.com:proxy_port
export no_proxy=localhost,127.0.0.1,localaddress,.localdomain.com,0.0.0.0,::1

Getting Involved

Mycroft welcomes contributions from developers. For guidance on contributing, refer to the contributing guide or join the Mycroft Chat for mentorship.

Troubleshooting

If you encounter issues while installing or running Mycroft, consider the following troubleshooting tips:

  • Ensure all dependencies are installed as per the installation instructions.
  • Check your internet connection, especially if you’re running behind a proxy.
  • If the CLI doesn’t load, ensure that you’re in the correct directory and that the start-mycroft.sh script has execute permissions.
  • For assistance and community support, visit the Mycroft Forum.
  • For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.

At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

Stay Informed with the Newest F(x) Insights and Blogs

Tech News and Blog Highlights, Straight to Your Inbox