The latest big surprise hit Amazon's Alexa. Voice control seems to be the next big thing, but Amazon makes it hard to extend its reach to really new skills. An alternative is Mycroft, an open source AI with voice control. The good news is that now you can run it on a Raspberry Pi with no fuss.
Amazon's Alexa, especially in the form of the low cost $50 Dot, is revolutionizing home control systems. Users are finally getting to grips with turning lights on and off just by saying "Alexa Turn Kitchen Lights On". The big problem with Alexa is that Amazon controls it and has commercial interests that get in its way.
You can give Alexa new skills but there are missing skills that are unlikely to be added to the app store. For example, what do you think the chances are that it will support Google's Chromecast or play music from a local media device. While it is possible to implement skills that would do these things, it isn't easy and there are a lot of missing facilities that you would have to find a way of implementing - listing all the music on a NAS device for example.
A possible alternative to Alexa is Mycroft and it has the advantage of being open source and without commercial considerations to hobble it - it does work with Chromecast, for example.
Like most AI agents, most of its processing happens in the cloud and this means that Mycroft isn't entirely usable without the support of the company developing it. It is open source, but it is tied to the Mycroft cloud service, which might need to charge its users in the future.
If you want to start experimenting with the system then the latest news is that there is a Raspberry Pi image that you can download and start using at once. The Pi needs a USB microphone and a speaker and, of course an Internet connection. The ideal device is a Pi 3, it has the WiFi and the processing power but it does work on a Pi 2. The use of a single USB microphone might be more of a problem. Devices such as the Amazon Dot or Echo have a microphone array that can be used as a directional sensor making picking up the voice from the background noise much easier. You can't really expect a single mic to work as well as a directional array. Interestingly one of the lesser known features of the Kinect is a directional mic array and it works very well - perhaps there is scope for something like Mycroft on a Kinect system?
The release of a Pi image isn't a huge step as the company funded a Pi based device on KickStarter and Indiegogo in the final quarter of 2016 and netted $127,520 on KickStarter abd $186,737 on Indiegogo. The Mycroft I was offered for $164 and is basically a Pi 3 in a case with an Arduino-powered display. The Arduino can also be used for additional sensors and controls.
Downloading and getting Mycroft going on a Pi 3 is very easy and a good way to find out if it does enough to make it worth developing for it. You can also check out what skills are already available. The list isn't long, and most of them are marked as either untested or experimental. There are quite a few that will be of interest such as a kodi media interface and so on.
The state of Mycroft is that it is very early days, and this makes it a good platform if you like experimentation and excitment. You also need to be warned that the documentation isn't good and finding out how to do anything beyond the simple is a matter of reading the code.
The best products and ideas always spring out of identifying and addressing a general and widespread need. In the case of programming it's the time required when coding for searching the Internet for [ ... ]