Myo is an armband that measures fine movements of your hand, making for sensitive, accurate gesture-based wireless control of computer, phone, and other favorite digital technologies. Thalmic Labs, the company that stands behind Myo, was co-founded by three graduated of the University of Waterloo. The company raised $14.5M in 2013 and is considered as one of the most promising hardware projects together with Google Glass and Leap Motion. There are already 3 different versions of Myo:
- Myo Alpha Unit – This version was available only for select developers and partner. These units are the very earliest version of the Myo armband following the prototypes.
- Myo Developer Kit – This version have the same hardware as the final Myo, but will be shipping at an earlier date with only access to the API and no consumer applications readily available. These units are intended for developers who wish to get their hands on the development tools at an earlier stage.
- Final Myo Armband – This is the consumer friendly version of the Myo armband. These units will have the most up to date software out of the box and consumer applications will be readily available.
This week I got my Myo Developer Kit and would like to share with you a couple of insights and pictures.
What can Myo do?
Myo includes 4 different types of sensors:
- Proprietary EMG muscle activity sensors that measure electrical activity in your muscles and are able to identify hand poses
- Motion data from Inertial Measurement Unit (IMU)
At the time of writing this artile, Myo can recognize 5 different hand poses:
|Unlock||Spread||Fist||Wave Left||Wave Right|
These hand poses can be combined with motion data. For example, an user can do a fist gesture and lower his arm. This could be used to trigger an event in your applications. Here are two examples of such applications: here and here.
Serious discussion is being held about whether Myo should provide raw data from EMG sensors or not. Right now Myo SDK doesn’t have access to raw EMG sensor data and it only provides us with the detection of hand poses mentioned before together with raw data from motion sensors. Raw data from EMG sensors could be helpful for developers who would like to write their own machine learning algorithms for gesture recognition. Unfortunately, it doesn’t seem like raw EMG data is going to be available soon, if ever.
Myo can also provide feedback to the wearer in the form of vibration.
Right now Myo offers SDKs for Windows, Mac, iOS, and Android. The SKD together with Myo Connect software for Windows and Mac can be downloaded here. Additional platform support will likely be added by the community in the future.
Programming Languages Bindings
The main programming language used to develop for Myo is C++ (check out the Myo SDK). However, there is a long list of official and unofficial tools and programming languages bindings that allows you to develop your Myo application in your favorite programming language. For example, there is a support for: