I'm new to this whole arduino development things, so please dont punch me for my questions smiley But arduino looks really great, so I want to increase my knowledge and start with a projekt:

I want to create an ecg (electro cardiogram) device, running with battery and sending data via gprs to a webserver:

My basis would be an arduino ( i dont know which, but i think smalles possible (tip which would work? smiley )) with 2 shields:

As battery i would like to use some high capacity mignon/aa rechargeable batteries (4x1,2 Volt with 2700mAh each) .

Do you think this would work? Im not very good in electronic calculations, and I would like to ensure that i dont waste much money for components which wont work together. I also read that some shields cant work together, because the use the same software/hardware serial ports.. But I dont understand the manuals and which ports are when used or how..

Can you maybe help me? :) Thanks a lot!


1 Answer 1


I don't see any unresolvable pin conflicts, so it should be safe to try.

  • The GPRS shield uses the UART and some digital pins, but none of the A-marked analog pins.
  • The ECG shield uses some of the power pins for power and ADC reference voltages, and A1 thru A6 (selectable with a jumper) for the analog ECG signal back to the Arduino. Either pin D4 or D9 is used for a calibration signal, this is selectable by a jumper. Make sure you select D4, because D9 is used by the GRPS board!

Of course, other factors (such as software conflicts between the Arduino libraries for both shields) could ruin your day. I can't promise it'll work as you intend it to.

Your real challenge will probably be in processing the analog ECG data into something meaningful that can be transmitted over GPRS (determining heart rate, detecting complex events like arrhythmias etc.). You probably shouldn't send the raw ECG waveform over GPRS, as continuous transmission takes a lot of power and will likely yield a large bandwidth bill. Depending on your situation, it would probably be much more efficient to send a digest of interpreted cardiac parameters periodically (and only sending raw waveform data upon request for example).

Hopefully needless to say: do not use this for any health-critical purpose. Neither the Arduino nor the shields and other hardware you're using have been specifically designed or certified for healthcare purposes. Experimenting with ECG equipment is great fun for education and perhaps some sports performance tracking, but you should never consider your project as replacement for seeing a physician and following his/her advice.

  • \$\begingroup\$ Hmm.. Thanks for your informative answer. But do you really think that gprs bandwidth is not enough for sending ecg data? f.e. if i limit to send 10 decimal numbers per second (f.e. 0.32, 0.31, 0.34) via tcp? As far as i understood, it wont be so much bandwidth necessary? Please tell me if i think wrong..! :) \$\endgroup\$ Commented Oct 10, 2013 at 9:46
  • \$\begingroup\$ And do you think it will work with this battery capacity? Thanks!!! \$\endgroup\$ Commented Oct 10, 2013 at 9:58
  • \$\begingroup\$ Edited my answer to explain why I wouldn't recommend sending the raw waveform, even though the GPRS data rate might be enough. \$\endgroup\$
    – Mels
    Commented Oct 10, 2013 at 12:54
  • \$\begingroup\$ As for the battery capacity question: determine your complete circuit's average current draw (either by measurement or by calculation from component datasheets) and see this page. \$\endgroup\$
    – Mels
    Commented Oct 10, 2013 at 12:58
  • 1
    \$\begingroup\$ You're welcome :) I added a short disclaimer, probably not needed but I still wanted to mention it! \$\endgroup\$
    – Mels
    Commented Oct 11, 2013 at 7:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.