Problems with Energy Monitor Shield R2.1

By lboucher at 2018-06-22 • 0 collector • 2118 pageviews

Hi All

I must be missing something simple.

I bought 2 EMS R2.1 and 2 Arduiono Uno boards for a project i have.

I also bought several of the 100A, 50maSCT013 clamp on current sensors.

I soldered pins onto the shield, stuck it on the uno and am trying to run the demo code below.

I am using Arduino 1.8.5

I clamped the sensor onto 1 wire feed AC voltage to a heater that draws many amps.

The current indicated on the serial line barely moves, hovering around .3 amps.

I tried all the port on the shield for the current sensor, and they all act the same.

I tried with and without a dedicated 9VDC power supply to the Uno.

Using a voltmeter i see 2.53 on the A0 - A2 pins, regardless of the sensor.

What am i missing? Why doesn't this work?

Any help is much appreciated.


// EmonLibrary examples, Licence GNU GPL V3

#include "EmonLib.h"                   // Include Emon Library

EnergyMonitor emon1;                   // Create an instance

void setup()




  emon1.current(1, 111.1);             // Current: input pin, calibration.


void loop()


  double Irms = emon1.calcIrms(1480);  // Calculate Irms only


  Serial.print(Irms*230.0);         // Apparent power

  Serial.print(" ");

  Serial.println(Irms);          // Irms


6 Replies | Last update 2018-06-25
2018-06-22   #1

Also, i tried 2 completely different sets of hardware with the exact same results, so i must be missing something. Also, i don't have anything else hooked up. No screens or ethernet shield or SD card or anything. Just the EMS shield, Uno, Sensor, and VDC supply to the Uno power input, and USB to the computer.

2018-06-22   #2


The 100A sensor has too large range normally used for big devices or buiding, if the input is a few amps it won't change a lot, maybe you can try the 30A version. 

Also make sure all the settings in the sketch is correct, make sure the setup is for 100a not 30a, you can use analogread the input directly,  we have some demo sketch here:

2018-06-23   #3

I went back and measured the heater i was using. Its pulling 7-8 amps...

To be double sure, i wrapped the AC line around the sensor 4X, so thats ~32 amps.

The IRMS value changed from ~.2 to .8 ish when I tried A1, but there is soo much noise the signal is totally useless. Also, when i tried A0 or A2, i saw nothing.

The noise is like 0.15 - 0.3 when nothing is on. I just don't get it, shouldn't this shield be mostly plug and play, isn't that the purpose of the shield.

I did try soldering a cap between the analog input and ground, and that helped the noise a bit.

2018-06-23   #4

After much testing, i finally realized that the issue is powering the Uno from my laptop USB.

I was relying on the Serial print to display the current.

I used an arduino shield to spit out UDP and wireshark to read the data.

Disconnected USB line and powered from a seperate supply.

Now it looks great with no noise.

2018-06-25   #5

Good to know getting better, you can try the LCD 5110 or SPI LCD onto the shield, and use external power supply. It is much more easy to monitor. 

We tested this with a hair dryer, about 2-10A, but the output ranging is not a lot, probably need more code work. If you have any suggestions to improve please let me now.

Thank you!

2018-06-25   #6

Should only clamp one wire of the AC power wires, not two, please notice, otherwise will be no output. You can google some images to get a clear understanding.

Requires Login

Log in
Information Bar
Hello World! Reclamation land, waiting for the mining of tags.