Build an open future with us.

Invest in Mycroft and become a community partner.

*Experimental* Mycroft on WSL with Pulseaudio


#1

Experimental Mycroft on WSL (Windows) with Pulseaudio

Please Note:

  • This is really experimental stuff and don’t plan to provide any support for this. Use at your own risk
  • All the skills that require some OS level dependencies will/might not work “Audio-control… desktop-control” etc
  • Audio delay should be expected as WSL doesn’t officially support audio and audio is routed through a pulseaudio server running on Windows

Demo:

Installation:

  • Enable WSL feature on Windows

  • Install “Ubuntu 18.04” from Windows Store

  • Download and Install Mycroft-Core
    sudo apt install git
    git clone https://github.com/MycroftAI/mycroft-core
    cd mycroft-core
    ./dev_setup.sh

  • Installing and enabling audio pass through with pulseaudio on WSL
    In ubuntu terminal: sudo apt-get install pulseaudio
    In ubuntu terminal: export PULSE_SERVER=tcp:127.0.0.1

  • Installing and configuring pulseaudio server on Windows
    – Download Pulseaudio 1.1 windows binary from http://bosmans.ch/pulseaudio/pulseaudio-1.1.zip
    – Unzip pulseaudio to any location
    – Locate pulseaudio \etc\pulse\ folder in your extracted files
    – Open default.pa in \etc\pulse\ with wordpad and locate line
    #load-module module-native-protocol-tcp
    replace the above line with:
    load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
    – Open daemon.conf in \etc\pulse\ with wordpad and locate line
    ; exit-idle-time = 20
    replace the above line with:
    exit-idle-time = -1

  • Starting Pulseaudio Server on Windows
    – Open Windows Powershell
    – cd into your pulseaudio/bin extracted folder
    – run command .\pulseaudio.exe
    Windows should now ask you for firewall permissions for pulseaudio, make sure to grant "public" and "private" both network perms
    – Running:

  • Start mycroft:
    – In ubuntu terminal ./start-mycroft.sh debug