It’s one of the simplest acts most people can perform, but just wiggling your finger is a vastly complex process under the hood. Once you consciously decide to move your digit, a cascade of electrochemical reactions courses from the brain down the spinal cord and along nerves to reach the muscles fibers of the forearm, where still more reactions occur to stimulate the muscle fibers and cause them to contract, setting that finger to wiggling.
The electrical activity going on inside you while you’re moving your muscles is actually strong enough to make it to the skin, and is detectable using electromyography, or EMG. But just because a signal exists doesn’t mean it’s trivial to make use of. Teasing a usable signal from one muscle group amidst the noise from everything else going on in a human body can be a chore, but not an insurmountable one, even for the home gamer.
To make EMG a little easier, our host for this Hack Chat, hut, has been hard at work on PsyLink, a line of prototype EMG interfaces that can be used to detect muscle movements and use them to control whatever you want. In this Hack Chat, we’ll dive into EMG in general and PsyLink in particular, and find out how to put our muscles to work for something other than wiggling our fingers.
We don’t see many EMG (electromyography) projects, despite how cool the applications can be. This may be because of technical difficulties with seeing the tiny muscular electrical signals amongst the noise, it could be the difficulty of interpreting any signal you do find. Regardless, [hut] has been striving forwards with a stream of prototypes, culminating in the aptly named ‘Prototype 8’
The current prototype uses a main power board hosting an Arduino Nano 33 BLE Sense, as well as a boost converter to pump up the AAA battery to provide 5 volts for the Arduino and a selection of connected EMG amplifier units. The EMG sensor is based around the INA128 instrumentation amplifier, in a pretty straightforward configuration. The EMG samples along with data from the IMU on the Nano 33 BLE Sense, are passed along to a connected PC via Bluetooth, running the PsyLink software stack. This is based on Python, using the BLE-GATT library for BT comms, PynPut handing the PC input devices (to emit keyboard and mouse events) and tensorflow for the machine learning side of things. The idea is to use machine learning from the EMG data to associate with a specific user interface event (such as a keypress) and with a little training, be able to play games on the PC with just hand/arm gestures. IMU data are used to augment this, but in this demo, that’s not totally clear.
All hardware and software can be found on the project codeberg page, which did make us double-take as to why GnuRadio was being used, but thinking about it, it’s really good for signal processing and visualization. What a good idea!
Obviously there are many other use cases for such a EMG controlled input device, but who doesn’t want to play Mario Kart, you know, for science?
Today, prostheses and exoskeletons are controlled using electromyography. In other words, by recording the electrical activity in muscles as they contract. It’s neither intuitive nor human-like, and it really only shows the brain’s intent, not the reality of what the muscle is doing.
After embedding pairs of 3mm diameter ball magnets into the calves of turkeys, the researchers were able to detect muscle movement in three milliseconds, and to the precision of thirty-seven microns, which is about the width of a human hair. They hope to try MM on humans within the next couple of years. It would be a great solution overall if it works out, because compared with the electromyography method, MM is cheaper, less invasive, and potentially permanent. Couple MM with a new type of amputation surgery called AMI that provides a fuller range of motion, less pain overall, and finer control of prosthetics, and the future of prostheses and rehabilitation looks really exciting. Be sure to check out the video after the break.
Ever felt like what your MCU of choice misses is a way to read the electrical signals from your muscles? In that case [Deepak Khatri] over at Upside Down Labs has got your back with the BioAmp EMG Pill. Described as an affordable, open source electromyography (EMG) module, based around a TL074 quad low-noise JFET-input opamp. At just over 32×10 millimeters, it’s pretty compact as well.
The onboard opamp ensures that the weak electrical signals captured from the muscles when they move are amplified sufficiently that the ADC of any microcontroller or similar can capture the signal for further processing. Some knowledge of how to set up an EMG is required to use the module, of course, and the TL074 opamp prefers an input voltage between 7-30 V. Even so, it has all the basics onboard, and the KiCad project is freely available via the above linked GitHub project.
In addition, [Deepak] also tweeted about working on an affordable, open source active prosthetics controller (and human augmentation device), which has us very much interested in what other projects may come out of Upside Down Labs before long. After, all we’re no strangers to hacking with biosignals.
As amazing as prosthetic limbs have become, and as life-changing as they can be for the wearer, they’re still far from perfect. Prosthetic hands, for instance, often lack the precise control needed for fine tasks. That’s a problem for [Bertolt Meyer], an electronic musician with a passion for synthesizers with tiny knobs, a problem he solved by hacking his prosthetic arm to control synthesizers with his mind. (Video, embedded below.)
If that sounds overwrought, it’s not; [Bertolt]’s lower arm prosthesis is electromyographically (EMG) controlled through electrodes placed on the skin of his residual limb. In normal use, he can control the servos inside the hand simply by thinking about moving muscles. After experimenting a bit with an old hand, he discovered that the amplifiers in the prosthesis could produce a proportional control signal based on his inputs, and with a little help from synthesizer manufacturer KOMA Electronik, he came up with a circuit that can replace his hand and generate multiple control voltage channels. Plugged into any of the CV jacks on his Eurorack modular synths, he now has direct mind control of his music.
[John Miller] has the perfect response next time he complains about an ache or pain and one of his friends says, “You should listen to your body!” As you can see in the video below, he already does. Using two 9V batteries and some instrumentation amplifiers, [John] built an electromyography (EMG) rig.
If you haven’t heard of EMG, think of EEG or EKG, but for muscles instead of your brain or your heart. The LT1167 amplifier is well-suited for this application and even has a data sheet showing how to create an EMG circuit. [John] also used some more garden-variety op amps and the ubiquitous LM386N chip for audio amplification.
Bodo Hoenen and his family had an incredible scare. His daughter, Lorelei, suddenly became ill and quickly went from a happy and healthy girl to one fighting just to breathe and unable to move her own body. The culprit was elevated brain and spinal pressure due to a condition called AFM. This is a rare polio-like condition which is very serious, often fatal. Fortunately, Lorelei is doing much better. But this health crisis resulted in nearly complete paralysis of her left upper arm.
Taking an active role in the health of your child is instinctual with parents. Bodo’s family worked with health professionals to develop therapies to help rehabilitate Lorelei’s arm. But researching the problem showed that success in this area is very rare. So like any good hacker he set out to see if they could go beyond the traditional to build something to increase Lorelei’s odds.
What resulted is a wearable prosthesis which assists elbow movement by detecting the weak signals from her bicep and tricep to control an actuator which moves her arm. Help came in from all over the world during the prototyping process and the project, which was the topic of Bodo Hoenen’s talk at the Hackaday SuperConference, is still ongoing. Check that out below and the join us after the break for more details.