OpenEnergyMonitor Community

EmonPi - accuracy of new install - calibration required?

Hi all,

I’ve had my emonPI a few weeks as an upgrade from an older solution that couldn’t monitor usage/solar at the same time: Accuracy of existing CT clamps since adding PV install - do I need an Emon solution? - #4 by Greebo

I had my own Pi2, so I bought the kit and put it together.

I’ve seen the voltage reading show between 227 and 233 at random times of the day, so the supplied VMRS AC-AC adaptor seems to be doing its job?

The whole emonPi seems to be working well and i’m getting clear and distinct values for usage and generation, but i’m not convinced the results are accurate for two reasons.

  1. Usage doesn’t match the months of figures and trends I had on the old system. For example, baseline usage through the night on the old monitoring system at 4:30am was always around 170w. With EmonPi that figure is around 120w. This is a common trend when monitoring usage, everything through the day seems much lower than recorded with the previous system.

  2. Generation is always lower than the Generation Meter and the Solar Edge inverter numbers. Here are daily totals from my Generation Meter, the Solar Edge app and from EmonCMS.

20th Oct, Gen Meter (8.4), Solar Edge (8.6), EmonCMS (7.9) - diff between Gen.Meter/Emon - 6.0%
21st Oct, Gen Meter (10.9), Solar Edge (11.2), EmonCMS (10.2) - diff between Gen.Meter/Emon - 6.4%
22nd Oct, Gen Meter (15.6), Solar Edge (16.1), EmonCMS (14.5) - diff between Gen.Meter/Emon -7.0%
23rd Oct, Gen Meter (11.0), Solar Edge (11.3), EmonCMS (10.2) - diff between Gen.Meter/Emon - 7.3%
24th Oct, Gen Meter (14.9), Solar Edge (15.4), EmonCMS (13.9) - diff between Gen.Meter/Emon - 6.7%

From reading various forums i’ve seen that Solar Edge can always report a little high, but even using the Generation Meter the figures to compare against the ones out of EmonCMS they consistently 6 or 7% out, and always lower.

But when I compare the old 170w baseline low to EmonCMS low of 120, that’s almost 30% difference. Appreciate there will be some variability, but that seems too much?

Even staring at the inteverter and emonCMS at the same time looking at live generation, it always shows lower readings in emonCMS compared to the inverter.

So my question, do I need to calibrate? if so, what is the best way with what I have available?

I have one of these plug in energy monitors.

I can’t vouch for its pure accuracy but maybe it could help? That webpage suggests +/- 2%?

I also have a basic mulit-meter, but having read the learn calibration article I still am no wiser what to do with it safely? Being honest, i’m not sure what setting to choose or where to place it?

I suppose I should be looking at the accuracy of generation and consumption in isolation?

  1. I’m not sure what more I can do with regard generation? The figures are already there. Could I amend the config file to up generation by 6.5%

  2. I could then attempt to calibrate the generation using a kettle/heater or something? Check the energy reported from the plug in meter I have versus the kettle/heater attached to the CT clamp on the emonPi? Like this?

Then amend the figures is required from there?

Although still not quite sure what extra or how i’d get extra data from the multi-meter?

Would it be better to calibrate voltage first? (if so, how?) Before heading into amending anything from steps 1 and 2? ie amending the voltage setting will skew both consumption and generation figures?

Any help, advice or thoughts would be very much appreciated.



As you’re not too familiar with your multimeter, and the plug-in monitor says 2%, and that’s in the same ball-park as we’d expect the majority (but alas not all) emonPI’s to be, based on the maths of a Monte-Carlo analysis, I’m not sure of what your best plan will be.

A general comment or two first: you don’t need your emonPi to be “installed” to calibrate it. So you could calibrate on the kitchen table if you wished. And the emonPi is particularly hard to calibrate fully, as that implies editing the sketch in the “emon” part, and if you’re not careful, your calibrated sketch will get overwritten when you update the emonPi.

I think I suggest you get hold of a plug and a trailing socket, and connect them together with three single wires - but make sure they are thick enough - 1.5 mm2 at least. Get a heating load - a 3 kW kettle if you have one - and plug it into the socket, put both the emonPi’s c.t’s on the line wire (or the neutral, it doesn’t matter for this), fire up the emonPi with the a.c. adapter and the plug-in monitor in the same or adjacent sockets, and plug the test lead into the monitor.
That should give you 10 or 12 A test current. If you want more (and I’d recommend this), put two turns of the wire through each c.t. so that the Pi sees 20 or 24 A.

Now for the adjustment: you can edit emonhub.conf in your web browser. You’re looking for this section:

    nodename = emonpi
        names = power1,power2,power1pluspower2,vrms,t1,t2,t3,t4,t5,t6,pulsecount
        datacodes = h, h, h, h, h, h, h, h, h, h, L
        scales = 1,1,1,0.01,0.1,0.1,0.1,0.1,0.1,0.1,1
        units = W,W,W,V,C,C,C,C,C,C,p

Change the 4th item in scales = ... so that the emonPi shows the correct voltage according to your meter. So “0.01” might end up as “0.0105”, etc
Change the 1st & 2nd items so that the emonPi shows the correct power (or twice the correct power if you have 2 turns through the c.t). So “1.0” might end up as “1.065”, etc
Change the 3rd item to give the correct sum of those powers.
When you’re done, make sure you keep each c.t with the same channel for ever after.
(N.B. There’s no interaction between the figures in emonHub. By the time the numbers get there, current and voltage have already been multiplied to get power, and the two powers have been added to get power1pluspower2.)

That should get you close to the same reading as your plug-in monitor. Note that I’m not saying within 2% of being right, and it might be dangerous to think your old system was “right” too. “Right” by definition is what your supplier’s meter reads. If you believe the generation meter, then I’d put both c.t’s on that and check again - ideally energy and over a sensible period of time - and if there’s still a discrepancy you’re not happy with, I’d then tweak the calibration again to bring both powers as close as you can until you’re happy.

If it’s still badly wrong at very low currents, it’s going to be down to phase errors in the transformers giving you an apparently bad power factor, and there’s little you can do about that without a lot of trouble. (It means getting into the front-end sketch of the “emon” part.)



when I immersed myself in this metrological issue, I wrote a summary document (EmonTX oriented more than EmonPi but I think it’s the same thing)

I chose a 2-step process :

  • first a calibration, to fix Vcal, Ical and the phase coefficient,
  • then a verification with a set of resistive sources in order to recreate various power or intensity stages…

Actually everything is in the Learn section of the OEM site, except the verification step if I am correct…

Please find below the pdf document plus a calc template and a practical example…if it can help you, it’s perfect :slight_smile:
In the template, just fill the yellow fields and the spreadsheet will calculate Vcal, Ical and the phase coefficient plus a kind of measurement uncertainty…

EmonTX_calibration.pdf (440.9 KB)

emonTx_calibration_template.ods (57.9 KB)

emonTx_calibration_example.pdf (481.4 KB)




Thanks for the replies, appreciate it.

Being honest, creating test rigs from wires seems beyond what i’d consider safe for me to try as i’m no electrician. So I think that could be out of the window.

I’d be happy to try a straightforward kitchen table test with a heater/kettle plugged into the socket power meter connected to the CT. I suppose i’m looking to see if the socket power meter matches/get close to emonPi reading through the CT? Then adjust item 1?

Although i’m not sure how I can check voltage? The socket power meter thing only shows watts currently used, nothing about voltage. The only voltage figure i’d see is from the emonPi, so not sure what i’d be checking that against? Is that where the multimeter would come in?

Apologies if this all sounds a bit dim. :frowning:

Thank you.

Actually the voltcraft energy logger delivers voltage, intensity and power

You have to do :

  • voltage calibration then inject Vcal in the arduino
  • intensity calibration then inject Ical in the arduino
  • phase calibration with resistive loads so that you have a power factor close to 1 then inject phase_shift in the arduino
    when I say inject in the arduino, it means modify the src.ino

EmonTX firmware > GitHub - openenergymonitor/emontx3: EmonTx V3.4.x Hardware and older discreet firmware, see EmonTxV3CM repo for latest
EmonPI firmware > GitHub - openenergymonitor/emonpi: Raspberry Pi Based Energy Monitor. Hardware, Firmware & related software for the PI.
check firmware/src folders

For voltage calibration, there is no specific security problem from my point of view
I can understand you may feel unsafe with intensity calibration…you should consider a specific habilitation to increase your safety…
for intensity calibration here is a picture of my setup


Not really. You could “cannibalise” an existing extension lead, but that’s probably less safe as you might cut into the insulation of one of the cores while removing the outer sheath.

Most energy monitors do show the voltage if asked, check your instruction leaflet.
I assume Alexander means “current” when he writes “intensity”. That does not apply to you because you are adjusting the power calibration long after Ical (which he mentions) has been applied. Ical is not available to you as that is inside the sketch in the Atmel328 part of the emonPi, and it is easy to lose that sketch for the reasons I gave in post no.2. What he writes is mainly applicable only to the emonTx and Arduino.

You don’t need the voltage to read power accurately. It’s not normally used in the calculations inside emonhub or in emonCMS. So if you can’t get the voltage out of your power meter, forget it.

[Edit edited] I’ve looked at the instructions and indeed, there’s no mention of a voltage display, so either wait until it’s installed and use your PV instrumentation, or just forget about calibrating the voltage.
I lied. I didn’t spot this:

• ENERGY: Pressing the energy button will cause the display row to cycle through
instantaneous values of overload power » power » voltage » frequency » current »
power factor » max power » min power

Exactly. And you can do both c.t’s at the same time. The test rig is needed to get access to a single wire to put the c.t. on. You can’t put it over a 3-core mains lead, it will read zero (or very nearly), always. The only way out of that, and it’s not really practical, is to put the c.t. on the cable out of your meter, and switch off everything else in the house while you do it.

No need to apologise. We all had to learn once. For me, it was over 50 years ago. I wouldn’t have suggested the test rig if I thought it was not safe. It is no worse than making up a mains extension lead.

Finally got around to this calibration malarky.

I was only able to test 1 clamp as the other is attached where I didn’t want to disturb, but test worked out ok.

If you remember, the other clamp (Solar) was always showing around 7% down on my Generation Meter at the end of each day.

So i’m not sure if I was surprised or not, but the energy display meter instantly showed around 6/7% higher than what was being shown from the emonPi on the first test.

In a way I was happy that two independent sources show a 7% difference.

I updated the values in the config file for both power1 and power2 to 1.06

Re ran the test by putting the toaster on and the figures were there or thereabouts.

So i’m happier now. I just need to monitor the results out of emonPi against the generation meter and the electricity export meter. After all, these are the two things that money is earned and charged against. I can always tweak slightly based on future results.

Thanks everyone for the help. :slight_smile:

1 Like