mycroft

mycroft ai skills

creative

technology

I like the idea of voice assistants but not the price that I would pay with my privacy if I used one from any of the major players.

When I heard about an open source privacy aware voice assistant I was ready to jump on the bandwagon. Mycroft AI is a startup with a software stack that anyone can download and use.

I wanted to contribute to the project and decided to try my hand at developing a skill.  I had some experience using the National Park Service API and decided that a skill giving information on National Parks would be a great addition to the Mycroft skills marketplace.   The skill I developed will tell you which state a National Park is in, recited a description of any National Park and even quiz you on where parks are located.

My second skill is used for tracking the arrival of MBTA buses. Tell the device you want bus arrival times and you are prompted for a route, direction and stop. Mycroft will announce the predicted times.  You can also track the next few buses heading toward your stop, getting updates every 30 seconds until the buses have arrived.

The team at Mycroft AI goes to pains to validate submitted skills.  First they must pass automated tests written by the author then the code and functionally are reviewed by a human to certify that the skill works and the code is well written and fully documented.

Play the file below to Hear a sample dialog

Skills for Mycroft are written in Python in Linux.  The software will run on a desktop computer as well as a Raspberry Pi with an enclosure called Picroft.

Developing for an early stage product requires a certain mindset.   The software stack is evolving and documentation rapidly becomes obsolete.  In addition, developing voice applications is different and requires a lot of trial and error.  Take some time to think about the number of ways one ask the same question and you’ll see the challenge of programming for a dialog.  Did the Red Sox win last night?  How’d the Sox do?   What happened over at Fenway?

Mycroft  AI has a hardware product they sell but anyone is is free to download the software and install it on their own hardware.  I opted to set up the Picroft enclosure on Raspberry Pis.  I have two devices, one is built with the Google Voice Kit, which includes a microphone, speaker, arcade button and a voice HAT board. The other uses a Seeed Studio ReSpeaker and a small speaker.  In the time I’ve been using Picroft, getting the software to work with different hardware setups has gone from difficult and time consuming to smooth sailing.

Mycroft code code is completely open source and the same goes for all skills accepted into their official repository, so code for my National Parks skill and MBTA bus tracking skill is available on GitHub.