cancel
Showing results for 
Search instead for 
Did you mean: 

X-NUCLEO-IKA01A1 Electromyogram problem

Alan Santos
Associate II
Posted on April 19, 2017 at 16:54

Heys everyone,

I'm new to the ST Community, so hi ^^. Anyways, I'm working on with the 

X-NUCLEO-IKA01A1, and I'm trying to use the Instrumentation Amplifier that the X-NUCLEO Board has; therefore I went and looked for some examples to get me involved with programming with this board. 

I found out the STM32CubeExpansion_ANALOG1_FIR (STSW-OPAMP002) that had an example that has to do with Electromyography; opened, read it, and compiled it. No errors, but as I've read on the instruction manual for this demo, you have to calibrate, and whenever a movement is detected an LED will turn on. The thing is the LED is always on, and I think I'm not getting the correct data even though I'm connected, and everything is connected as should. 

(I'm thinking this because whenever I'm moving my arm that is connected to this, I'm not getting a lot of fluctuation in numbers as it should happen.)

Any ideas or suggestions to troubleshoot this?

Thanks,

Alan.

6 REPLIES 6
S.Ma
Principal
Posted on April 19, 2017 at 18:19

Not a specialist, my uneducated guess is the electrodes must be resistive type with good skin conductivity, and their position around the arm is prime success factor. Then i guess a calibration is needed. With sweat, conductivity will improve...

AvaTar
Lead
Posted on April 19, 2017 at 20:13

I suggest to start with something else as test input signal for your myography app, perhaps a function generator.

The required high input impedance for an actual sensor makes it very suceptible for noise.

I guess the signal input is just overwhelmed.

And, you can check your setup (hardware with software) in the debugger.

A good exercise to get started ...

For EMG itself, there are tutorials/documentations available, like this:

http://www.bortec.ca/Images/pdf/EMG%20measurement%20and%20recording.pdf

 

http://www.myweb.wwu.edu/~chalmers/EMGfundamentals.pdf

 
Posted on April 20, 2017 at 13:24

Thanks for answering both of you, I'll take em into consideration.

AvaTar, one question. What do you mean that I can check my hardware setup with software?

I'm using Keil uVision 5.

Thank you,

Alan.

Posted on April 20, 2017 at 14:16

What do you mean that I can check my hardware setup with software?

Applying a test (reference) signal, and verify the sampling (DMA?), processing, evaluation and output (LED?).

I guess 'new to the STM32 community' does not mean new to embedded software development.

Exercising those steps as evaluation of a (more or less) known-to-work application is a good start to learn the 'STM32-way'.

Having too much unknowns in the mix (like sensitive analog hardware with random stimulus) would complicate things ...

I tend to put the components of a project into operation one by one, with known input, instead of all at once.

Just experiences I made.

Posted on April 20, 2017 at 14:47

AvaTar,

Ohhh thought you meant like a hidden application on uVision or something... I've tried all of what you said; started with different waveforms from DC to square to sine, and I can see some fluctuation on the sine and square ones with the output of the values obtained in the input. Even though I can this fluctuation I'm not getting constant results to verify that it's truly working. 

I'm gonna start a completly new application oriented to data adquisition through the instrumentation device without using the STM EMG Project. Documentation for troubleshooting this project is useless lol.

Thanks anyways.

Posted on April 20, 2017 at 15:03

Documentation for troubleshooting this project is useless lol.

Coincidentally, I commented about another demo program, on another thread in this forum.

They are just made to show one thing or 'proof one point', and are not commercially-ready code.

Small changes and deviations can break the code totally.

Just study and use the concept, the initialisation and inter-work of peripherals, and perhaps re-use some code.

That's it - at least for me. Don't expect too much from free examples.

Getting a grip on the peripherals is (usually) the hardest and most time-consuming thing.

I have plenty of experience writing the application code myself, I don't need CubeMX for that.