Go Down

Topic: quick question- is this even possible? (Read 584 times) previous topic - next topic


I just wanted some quick input about a project that I am working on with the Arduino UNO. The idea is to take EMG signals from 4 different muscle groups, and correlate their respective signals to muscle activation through the use of LEDs. I have modified the example sketch for the LED bar graph and basically what it does is reads in the EMG signal voltage through one of the analog input pins, and maps it to 3 different output pins which are connected to LEDs. Based on the input voltage, a certain number of LEDs will be turned on to represent muscle activation level (no activation=0 LEDS, low activation=1 LED, medium activation= 2 LEDs and high activation=3 LEDs)

My main question/concern is regarding whether or not it is possible to read in 4 separate analog inputs from 4 analog pins and have them correspond to different sets of output pins. For example, the Ao pin would control output pins 1-3, A1 would control output 4-6, A2 would control output 7-9 and A3 would control output 10-12.

Thanks for any help/advice. I can post the sketch I have come up with if that will help too!

Nick Gammon

Yes but not at exactly the same time. It takes 104 uS to read an analog pin. Still, you can do a few readings in a second at that rate (like, 10000).
Please post technical questions on the forum, not by personal message. Thanks!

More info:


If you can get the right reading then that's definetly possible, maybe even easy
I think the hardest part will be getting a good quality signal for the arduino to read


Also there are some ics that can do this like the lm3916 which can give you 10leds as a bar graph plotted accross whichever range you select, in bar or dot mode and has current limiting so 1 set resistor will do all 10 leds
there are in that same ic  family linear and logarithmic ranges for uses in audio,
all you would need is one ic per muscle group and you will get nice led graphs that don't need any programming although then you can do signal conditioning in software

Go Up