Schematic of a MYO armband
Since it was our first hackathon, Hershel and I decided to poke around at the hardware. I'm the kind of person interested in mechanical design and inventing while Hershel is an electrical engineering student with a passion for tinkering around with sensors and software. It was also Josh's first hackathon though he has a wealth of experience as the robotics club president and all around competent engineer, he offered to help us, and eventually joined our team afterward. Our game plan was simple though: we wanted to build something we would have want to use. We were particularly fascinated by the sensors, and also being in the ARC for HackDavis made us think a lot about the gym. Poor technique/form in exercising with equipment is one of the most prominent causes of injury. However, the sensors in the hardware room were not sufficient enough to cover all aspects of the body we wanted to evaluate, as well as detecting muscle strain is quite difficult. Josh, who actually lifts, could confirm this.
As athletes (tennis for me, badminton for Hershel) who have dealt with physical strain, injury, and resulting therapy, we saw potential in turning the MYO armband into a versatile medical device. We took this idea further by creating Joint Effort- an application that bridges human-computer interfaces with physical therapy. The module we developed is merely a small piece of what Joint Effort can be, given more time- a powerful, open-source application filled with modules that exercise different parts of the body, and for different individuals who want to upload what works for them. However, for the sake of the 24 hour hackathon, we only got demo module done as a prototype and proof of concept that yes, the armband is receptive to our code.
What it does
Joint Effort aims to use electronic wearables to improve physical therapy, as such technology has many capabilities The modules are presented on a computer screen, where successful completion of the exercise on the screen allows you to advance to the next. The exercise will not proceed unless you do the actions sequentially that are displayed for the exercise. You will receive onscreen or physical feedback (through vibrations) if you repeat the movement correctly (we are still working on this feedback feature.) The wrist/hand exercise therapy module utilizes the MYO armband to detect muscle movement as well as hand gestures; unlike just watching and imitating videos, we hope our application can actually deliver feedback, as it detects poor form. Also for some reason, devpost does not want to link to our website. link
How we built it
After acquiring the MYO we began to search for code we could use that would program it. Many of the mods for MYO, notably Myoscript were Lua based, so we played around with the different handles and actions. Using Lua we made the framework for our code, which was done over in C++, since the language fit the mission better. Currently we are attempting to create a UI, that will be consistently improved in the future.
Challenges we ran into
Getting the MYOS to obey me as its master was physiologically difficult- I have very slender wrists. Calibration was easier for Hershel, who still experienced difficulty with it. The MYOS has a lot of room for improvement as hardware- it is sort of hard to execute fine motor maneuvers with it and sometimes gets false readings for gestures. Implementing a UI with our raw code was extremely difficult since none of us were familiar with Lua, but eventually (as I speak now) we are trying to translate the our raw code from Lua to C++, which Josh helped us do toward the final hours of the hackathon. Our rough product made for HackDavis is a Windows Command Prompt.
Accomplishments that we're proud of
As first time hackathoners, we were proud of never giving up and encouraging one another. Hershel refined his skills in C++, worked on his programming confidence, and really took initiative with this project. We aren't coders for school, just picked it up on the side along with our engineering classes (though Matlab is an engineering staple) so we didn't know exactly what to expect with HackDavis. Personally I am so glad that I got to make new friends here, as well as learn Lua/ hacking a MYOS from the ground up. Thought it was amazing we got a piece of hardware that none of us had ever seen before and could write code to interact with it.
What we learned
Well I finally learned exactly why programming is so useful- I've always been a hardware type of person and learning more about software is extremely intimidating. We learned that it's always helpful to ask questions, just ask a ton of them and Google them up, even if they sound stupid. We learned that the MYOS existed, I had no idea it did until I visited the hardware room. Also learned how humbling coding is, there's always a better way to do it than the one you're doing most of the time. Most importantly- don't give up on your project! We definitely felt like nothing could happen a few times, but ended up getting a lot farther than we ever though we would.
What's next for Joint Effort
More wearables and modules! Today we were only able to produce a demo of what this could become with some simple wrist exercises, but is so much to be done with the rest of the body. Developing sensors or using wearables that interact with computers can yield a wealth of information- if we had more time we would have developed a quantitative feedback mechanism that could send real-time information to another device such as a computer or Android. This data could test the effectiveness of Joint Effort therapy. We hope to expand on this idea and hack other sensor technology- the end goal is to even possibly develop our own sensor tech, program/application, and make it accessible and affordable.