Mycroft AI
  • Documentation
  • About Mycroft AI
    • Why use Mycroft AI?
    • Glossary of terms
    • Contributing
    • FAQ
  • Using Mycroft AI
    • Get Mycroft
      • Mark II
        • Mark II Dev Kit
      • Mark 1
      • Picroft
      • Linux
      • Mac OS and Windows with VirtualBox
      • Docker
      • Android
    • Pairing Your Device
    • Basic Commands
    • Installing New Skills
    • Customizations
      • Configuration Manager
      • mycroft.conf
      • Languages
        • Français (French)
        • Deutsch (German)
      • Using a Custom Wake Word
      • Speech-To-Text
      • Text-To-Speech
    • Troubleshooting
      • General Troubleshooting
      • Audio Troubleshooting
      • Wake Word Troubleshooting
      • Log Files
      • Support Skill
      • Getting more support
  • Skill Development
    • Voice User Interface Design Guidelines
      • What can a Skill do?
      • Design Process
      • Voice Assistant Personas
      • Interactions
        • Intents
        • Statements and Prompts
        • Confirmations
      • Conversations
      • Error Handling
      • Example Interaction Script
      • Prototyping
      • Design to Development
    • Development Setup
      • Python Resources
      • Your First Skill
    • Skill Structure
      • Lifecycle Methods
      • Logging
      • Skill Settings
      • Dependencies
        • Manifest.yml
        • Requirements files
      • Filesystem access
      • Skill API
    • Integration Tests
      • Test Steps
      • Scenario Outlines
      • Test Runner
      • Reviewing the Report
      • Adding Custom Steps
      • Old Test System
    • User interaction
      • Intents
        • Padatious Intents
        • Adapt Intents
      • Statements
      • Prompts
      • Parsing Utterances
      • Confirmations
      • Conversational Context
      • Converse
    • Displaying information
      • GUI Framework
      • Show Simple Content
      • Mycroft-GUI on a PC
      • Mark 1 Display
    • Advanced Skill Types
      • Fallback Skill
      • Common Play Framework
      • Common Query Framework
      • Common IoT Framework
    • Mycroft Skills Manager
      • Troubleshooting
    • Marketplace Submission
      • Skills Acceptance Process
        • Information Review Template
        • Code Review Template
        • Functional Review Template
        • Combined Template
      • Skill README.md
    • FAQ
  • Mycroft Technologies
    • Technology Overview
    • Roadmap
    • Mycroft Core
      • MessageBus
      • Message Types
      • Services
        • Enclosure
        • Voice Service
        • Audio Service
        • Skills Service
      • Plugins
        • Audioservice Plugins
        • STT Plugins
        • TTS Plugins
        • Wake Word Plugins
      • Testing
      • Legacy Repo
    • Adapt
      • Adapt Examples
      • Adapt Tutorial
    • Lingua Franca
    • Mimic TTS
      • Mimic 3
      • Mimic 2
      • Mimic 1
      • Mimic Recording Studio
    • Mycroft GUI
      • Remote STT and TTS
    • Mycroft Skills Kit
    • Mycroft Skills Manager
    • Padatious
    • Precise
    • Platforms
Powered by GitBook
On this page
  • All Devices
  • I've made changes to my settings on home.mycroft.ai, but these are not reflected on my device
  • Check settings on my device
  • Find the IP address of my device
  • Mark II
  • Mark 1
  • Yellow Eyes
  • HDMI output is not displayed
  • Not connected to the internet
  • Cannot ssh into Mark 1
  • Linux
  • AttributeError: '_curses.window' object has no attribute 'get_wch' (with a custom Python installation)
  • Removing and rebuilding your virtual environment
  • Installation warns about bad interpreter
  • UnicodeDecodeError during setup
  • Skills development
  • Skill fails on first run with ERROR - Failed to load skill

Was this helpful?

  1. Using Mycroft AI
  2. Troubleshooting

General Troubleshooting

Troubleshooting tips and tricks

PreviousTroubleshootingNextAudio Troubleshooting

Last updated 3 years ago

Was this helpful?

This section is grouped by Device to help you quickly find the information you need.

All Devices

I've made changes to my settings on home.mycroft.ai, but these are not reflected on my device

Your Mycroft device will sync settings with the home.mycroft.ai server regularly. In normal circumstances any change should be reflected on the device within 1-2 minutes.

You can also instruct your device to pull down the latest configuration, by saying:

Hey Mycroft, update configuration

Mycroft will respond in one of two ways:

  • If your configuration was out of date, and has been pulled down again, Mycroft will respond:

Configuration updated

  • If your configuration was the same on your device as on home.mycroft.ai, Mycroft will respond:

Your device has been configured

Check settings on my device

To see the settings that your device is using requires access to the devices shell (terminal). You can do this by SSHing into your device, or connecting a keyboard and monitor.

The configuration values in use by the system can be obtained using the Configuration Managers get command.

Find the IP address of my device

To obtain your devices IP address you can say:

Hey Mycroft, what is your IP?

Alternatively you can get the IP address from your router, or by scanning the network using a tool like nmap. Running nmap with the no port scan flag -sn returns the IP and MAC addresses, as well as the vendor name. A Mark 1 will display as "Raspberry Pi Foundation".

Mark II

If you are experiencing any issues with your Mark II or Mark II Dev Kit, troubleshooting information is available in the Mark II documentation:

Mark 1

Yellow Eyes

It may take several "hard reboots" to clear the Yellow Eyes symptom.

HDMI output is not displayed

If you have connected Mark 1 to a HDMI output, and nothing is showing on the HDMI screen, reboot the Mark 1. The Mark 1 needs to reboot before it can output to a HDMI screen.

Not connected to the internet

If your Mark 1 has previously been connected to the internet, and loses internet connectivity, it will speak

I have lost connection to the internet

Cannot ssh into Mark 1

Press the Mark 1's top button and turn it to SSH, then press the button. Select ENABLE then press the button again to enable ssh.

ssh operates on port 22. Here is an nmap scan of a Mark 1 with ssh enabled sitting on IP address 192.168.0.2:

$ nmap -Pn 192.168.0.2

Starting Nmap 7.60 ( https://nmap.org ) at 2018-12-12 00:01 AEDT
Nmap scan report for 192.168.0.2
Host is up (0.0042s latency).
Not shown: 999 filtered ports
PORT   STATE SERVICE
22/tcp open  ssh

Nmap done: 1 IP address (1 host up) scanned in 19.56 seconds

Linux

AttributeError: '_curses.window' object has no attribute 'get_wch' (with a custom Python installation)

To resolve this issue, make sure that the following packages are installed:

sudo apt install libncursesw5 libncursesw5-dev

These packages provide "shared libraries for terminal handling (wide character support)".

After these packages are installed, recompile your Python installation. For pyenv, the command would be:

pyenv install <python-version>

It will ask for confirmation that you want to rebuild the Python version. After confirming the rebuild, your new Python installation should no longer show the above error when running the Mycroft terminal client.

Removing and rebuilding your virtual environment

If your CLI won't run, it is highly likely to be an issue with the Mycroft virtual environment. The easiest solution we've found has been to remove and reinstall the virtual environment.

First, delete the existing virtual environment:

sudo rm -r ~/mycroft-core/.venv/

Next, we run the setup script again:

mycroft-core$ ./dev_setup.sh

This will rebuild your virtual environment.

Installation warns about bad interpreter

When running dev_setup.sh, if you encounter a warning about a "bad interpreter", it is likely from having a space in the installation path:

./dev_setup.sh: /opt/test path/mycroft-core/.venv/bin/pip: "/opt/test: bad interpreter: No such file or directory
Warning: Failed to install all requirements. Continue? y/N

If you can't install to a path without spaces, you will have to manually verify the requirements.txt entries are installed to your virtual environment.

UnicodeDecodeError during setup

This most likely indicates that your unicode locale is not set.

If you are using Docker, ensure that you have a section in your Dockerfile setting up the locale such as:

RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8

Skills development

Skill fails on first run with ERROR - Failed to load skill

If you're developing a Skill, and run it for the first time, you may encounter an error similar to the below:

12:30:32.158 - mycroft.skills.core:load_skill:142 - INFO - First run of mycroft-skill-cat-facts
12:30:32.164 - mycroft.skills.core:load_skill:156 - ERROR - Failed to load skill: mycroft-skill-cat-facts
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/mycroft_core-0.9.7-py2.7.egg/mycroft/skills/core.py", line 144, in load_skill
    skill.settings.store()
  File "/usr/local/lib/python2.7/site-packages/mycroft_core-0.9.7-py2.7.egg/mycroft/skills/settings.py", line 323, in store
    with open(self._settings_path, 'w') as f:
IOError: [Errno 13] Permission denied: '/opt/mycroft/skills/mycroft-skill-cat-facts/settings.json'

The error here is that the file system permission on the Skill's directory are incorrect. The directory should have owner and group permissions of mycroft:mycroft as per the below.

4 drwxr-xr-x  4 mycroft mycroft  4096 Nov 24 14:34 .
4 drwxrwxrwx 38 mycroft mycroft  4096 Nov 27 12:50 ..
4 drwxr-xr-x  3 mycroft mycroft  4096 Nov 23 16:57 dialog
4 drwxr-xr-x  8 mycroft mycroft  4096 Nov 27 12:36 .git
4 -rw-r--r--  1 mycroft mycroft    20 Nov 23 16:57 .gitignore
8 -rw-r--r--  1 mycroft mycroft  6265 Nov 23 16:57 init.py
8 -rw-r--r--  1 mycroft mycroft  7509 Nov 24 14:34 init.pyc
12 -rw-r--r--  1 mycroft mycroft 11357 Nov 23 16:57 LICENSE
4 -rw-r--r--  1 mycroft mycroft   695 Nov 24 14:33 README.md
4 -rw-r--r--  1 mycroft mycroft    35 Nov 25 19:28 settings.json

If your permissions are different to those shown above, change them by running the following commands:

cd /opt/mycroft/skills/
sudo chown mycroft:mycroft -R your-skill-name

The settings values that have been retrieved from home.mycroft.ai can also be read directly from /var/tmp/mycroft_web_cache.json. See for more details.

Mark 1 attempts to update its software around every hour or so. Yellow Eyes, part of the , occurs when either the software for the Mark 1 or the Skills on the device did not update properly. Generally the solution for Yellow Eyes is to "hard reboot" the Mark 1 - that is, remove the power cable, wait at least 30 seconds, then plug the device back in.

If you ssh into Mark 1, (instructions ), and have recently reset the device to factory defaults, then you will need to re-enable ssh.

Some custom installations of Python (with systems such as ) may get this error when running the interactive Mycroft terminal client. This error occurs because curses wide character support hasn't been fully built into the custom Python installation.

The following explanation and instructions are specific to Ubuntu Linux (where was found) but can be used as a general guide for other distributions as needed.

It has also been that connecting to a machine using RDP was a possible work around 🤷

Configuration Manager
mycroft.conf
mycroft.conf
Mark II
Mark 1 boot sequence
here
pyenv
this issue
reported