North (formerly Thalmic Labs), the creator of the Myo armband, was acquired by Google in June 2020. Myo sales ended in October 2018 and Myo software, hardware and SDKs are no longer available or supported. Learn more.
This week's #MyoCraft is a little different. We're running our own Hackathon at Thalmic Labs this weekend, and we'd love for you to join us online with #thalmichakd. We're looking for ideas from the community, but also for developers up to hacking some projects together themselves.
That could be you.
If you've ever wanted to build something for the Myo armband and make something gesture controlled that you really care about, now is the perfect time. This week on #MyoCraft, I'm going to tell you how to get started.
Is there an existing Windows or Mac app that you want to control with your hand? The Keyboard Mapper built into Myo Connect will let you control the mouse and bind hand poses to key or mouse presses. You can even export the finished product as a Myo Script, either to share or to expand on yourself with more powerful controls. Just select Keyboard Mapper from Myo Connect and you are on your way.
Want to go beyond pose-to-keypress bindings and add some real motion controls? Myo Script is for you. We have a comprehensive tutorial series teaching you exactly how to use it, and there have been a lot of #MyoCraft posts with tips and tricks. Basically, like the Keyboard Mapper, Myo Script will let you Myo-enable an existing Windows/Mac app or website as long as it has some shortcut keys you can use. It's more powerful though, giving you full access to the orientation and acceleration data coming from the Myo armband's built in IMU, letting you create arbitrary motion gestures like using your arm as a rudder.
Of special mention I think is the official Unity plugin. There is a lot of potential for Myo-enabled gaming, and Unity makes it easy even for novice developers to get started. With the built in Asset Store, you don't even need to make all the models and textures yourself. The plugin is included in the Windows/OSX SDK, and it's very easy to get started.
As you know, the Myo armband is a Bluetooth LE device you wear on your forearm. It has a 9-axis IMU for orientation and acceleration data, and 8 EMG sensor pods to read your muscles. The different SDKs have slightly different capabilities though, so this chart may help you decide which to use:
At any rate, don't forget to look at the docs!
A great place to start is by doing something simple in response to a pose. Write the name of the pose to the console. Then start building from there! Add motion and orientation from the IMU as needed! If you are looking for inspiration on what to build, follow the #thalmichackd hashtag to see what people are asking for! Or take a look a the Myo Market or Challenge Post to see the kinds of things people have been able to accomplish in the past.
My biggest recommendation though is to make something that you personally would use, that solves a problem you personally have. At least then you have a guaranteed audience (of at least one), a solid understanding of a real problem, more motivation to actually complete it and, even if no one else in the world ultimately cares for it at least you haven't wasted your time because it does something you actually wanted done anyway.
Once you've finished your app, head on over to the Developer Portal of the Myo Market. If you have a Windows or Mac application, you can submit it directly to the Market. iOS and Android applications should go to their own platform storefronts, which should then be linked to in the Myo Market. You can also submit to other storefronts like the Humble Store, Steam, or the Chrome store and then publish in the Myo Market by submitting a link to an arbitrary website.
Of special note, if you are making a Myo Script, once you have the draft of your application created, you should grab the hexidecimal in your draft URL and use it to make the appropriate
scriptDetailsUrl so it links to your page in the Myo Market. ie:
scriptDetailsUrl = "https://market.myo.com/app/<your app's hexadecimal here>"
And don't forget to set your application ID! If it's not unique, it will cause problems, so you probably want to follow the reverse domain name standard (ie,
"com.<your domain name>.<your app name>"). So for Icarus Rising it's
If you make something cool, tell us about it! Even beyond the hackathon, we're always looking for cool things to show off to our community, and if there's something interesting technically you want to talk about it could be a good #MyoCraft post.
That's it for me though, I've got to get back to my project.
Good luck everyone, and happy coding!