Independent Microcontroller MYO receiver


by JPawww

Independent Microcontroller MYO receiver

Overview:
I am attempting to connect to a MYO instruct it to send the pose and EMG data, without using any bridging to a computer. The goal being able to connect to the MYO band, process the events or emg data, and then program a response on alternative hardware(prosthetic or insert topic updates to ROS.
I am attempting to use an Nordic Labs nRF51822 which has the capability of asserting itself as a CENTRAL. Nordic has developed Softdevice in their SDK, to simplify the Queing. Up until now I have had some issues with the code because I have been (unsuccessfully attempting to run assertions based on hardcoded responses recorded from recorded observations of other interactions with the MYO). I have been successfully able to get complete listings of the services and their characteristics with this method, but unable to change a specific characteristic to start streaming the EMG data.
@MYO
Is this device built around a SIG compliant architecture? Would a S120 Soft Device be able to control it?
by PBernhardt TL

Independent Microcontroller MYO receiver

I wouldn't bother trying to reverse engineer the protocol, we've actually published it, including how to turn on the EMG streaming, here: http://developerblog.myo.com/myo-bluetooth-spec-released/

I don't have any experience with a S120 Soft Device, but as long as it's capable of talking to a BLE peripheral and you can send/receive whatever packets you want should be able to do it.
by JPawww

Independent Microcontroller MYO receiver

I read that and was trying to utilize it, however inspite of sniffing that it sent the command 3 times it never would start streaming….
The soft device is actually doing all of the l2cap packeting and most of the overhead, the problem that I have been running in to is defining a new protocol for it. Which brings me back to is the MYO built on a SIG compliant communication? If so then it is my issue…
by JPawww

Independent Microcontroller MYO receiver

Or if you could tell me which if any 3rd party chip the MYO uses…
by PBernhardt TL

Independent Microcontroller MYO receiver

I am not sure what you mean by being SIG compliant communication. It's not an official profile like the Heart Rate Profile, but it's definitely something you can communicate with using standard BLE techniques. For example, people have talked to Myo using the Android Bluetooth Low Energy APIs, and gattool on Linux.

Are you able to get any of the other Myo stuff working, like poses and IMU data? Note that the EMG characteristics use notifcations rather than indications, which means you have to subscribe to them differently.
by JPawww

Independent Microcontroller MYO receiver

I can see the command characteristic being sent, but I never recieve any data such as poses or even battery level….

I have tried it using 2 different MYO bands. I am able to get the device to give me a listing of the characteristics which for BLE stack is part of initialization in order to establish “handles” to later write to these characteristics.
TLR
I am able to get base communication but am unable to get commands to send/recieve

JPaul Carpenter
by PBernhardt TL

Independent Microcontroller MYO receiver

Ah, well we do use the standard battery service, so to me getting that working would be step one. I would avoid any of our custom services until you are able to get the battery level.

I don't want to assume, but it sounds like from your initial post this isn't the first time you've done some bluetooth stuff like this before. Is that accurate?
by JPawww

Independent Microcontroller MYO receiver

Actually it is, but I have been working on this since early June…
JPaul Carpenter
by JPawww

Independent Microcontroller MYO receiver

I am using a RBL nrf51822 development board.
It includes a secondary Arm processor, and an online development suite.

JPaul Carpenter
by PBernhardt TL

Independent Microcontroller MYO receiver

I would focus on getting the battery information then, that's a standard. You could try another BLE device (if you happen to have one around) to see if you are able to have success there.
Moderator control