Source for a 20:1 transformer (220/240AC to 11/12 AC adapter)

I am having a heck of time trying to find sorce for a simple 20:1 transformer. That is: 240VAC primary and a 12VAC secondary. This would be used for the voltage sensor. Something like this. but it’s not currently available.

I have yet to start search for a current transformer, so any sources for those would be appreciated.

Thanks for your help


Do you mean locally to you in the USA? 240 V primaries are common here on the UK, so are 12 V secondaries, so you can get one here with absolutely no problem. Your difficulty will be shipping charges.

Bear in mind, it doesn’t have to be a 12 V secondary winding, anything 3 V and above will be OK, just change the resistor divider chain to suit.

Here’s one I found - Triad Magnetics - FD4-12 - Transformer, Power, Bobbin, 1, Freq 50/60Hz, Pri 115/230VAC, Sec 12.6 (CT)VAC - RS

There’s only one warning sign: "The TRIAD quick pack small power transformer series from TRIAD Magnetics offers a significant reduction in size and weight for a given VA rating. ". I think this means they push the magnetics harder so phase and waveform distortion might be high.

Alternative thought: do what we do with the emonVs (circuit diagram on Github I believe, via ‘Docs’)

Again, ‘Docs’ and Learn has a list of (expensive) large c.t’s suitable for your fat aluminium incomers.

Hi Gregg,

This ought to fill the bill:

Available at amazon for $20.95:

Also available at Amazon for a few bucks less ($17.14) is a Supco SXT111:

Thanks for the input! After reading the various articles I better understand the challenge of measuring power and energy. I did find a transformer by searching “isolation transformer”. I have no illusions that I will be getting accurate results using it because it probably has a large phase shift and distortion.

Therefore the first part of my project will be proof-of-concept with later designs that are with components that will result in more accurate readings.

I have a subpanel that feeds a heat-pump and “eats” the output of a solar array. The latter has a built-in power/energy meter. Thus I only need one channel.

We’ll see how it goes.


A person with one watch knows the time; a person with two does not. :wink:

I was looking at the EmonTx4 Technical Guide Voltage Sensing and the circuit shows that the primary and secondary are connected of the ZMPT101B on one side (which is connected to ground).

Since this transformer provides high isolation (4000V), would removing the connection between the primary and secondary provide the necessary isolation I seek? This would obviate the need for the isolation transformer I mention previously in this discussion. (Ground would be connect to earh ground)

I must admit that connecting mains to the box which houses my Arduino seems pretty intense, but the math and specs say it works.

Your thoughts?


That’s not the production circuit diagram, it’s the LTSpice simulation. The real circuit diagram is here:

There is NO connection between the live mains side (L1, L2, L3 & N) terminals and the low voltage side.

Thank you, @Robert.Wall, for connecting me with the appropriate schematic. From this I conclude that an isolation transformer is not required.

The next step was to determine the Watt spec for the 10k resistors. Granted, we can use the RMS voltage. 220V/60k = 3.6mA. 10kΩ * (3.6mA *3.36mA) = 0.129W which means 1/4W resisters will be just fine.

To better understand, I do further calculations. This current will be on the sececondary and with a 75Ω resistor, The secondary voltage will be 0.275V. From the emon schematic we see that the offset is 3.3V*33kΩ/(33kΩ+180kΩ) = 0.511V which is more than lowest negative voltage.

The offset plus the secondary voltage (0.786V) needs to be less than Vref. This come from the MCP1501-10E/SN which, if I read the specs right, has an output of 1.0240V, The schematic shows that the output is voltage divided by two 10kΩ resistors for an output of 0.512V because AGND is tied to GND. The voltage divider doesn’t seem right?

But then I thought about VRMS. 220VAC RMS is 622Vp-p. Plugging in 622 to the above equations gives us 10.5mA and a secondary voltage of 0.778V which is greater than the offset. That means, for a short period of time, ADC has a negative current. Not good on the positive peak, either, because 0.778V + 0.511V = 1.289V which is more than Vref.

Obviously this all works. But why?

I am uncertain, but I believe that the Arduino has a diode that would be forward biased on the negative swing and will disapate this energy which might explain why the Arduino doesn’t blow up. I don’t know what happens when Aref is exceeded.

Wouldn’t overvoltage affect the energy calcualtion because the wavefore is clipped on the positive and negative swings? (I haven’t looked at the software but I assume that it alternates sampling the voltage and current waveforms over one cycle (~80 samples each) and then calculates the power after all of the samples are taken.)

I am hoping with your guidance I can better understand what is going on here. I sincerely appreciate your thoughts. Thank you.


ANOTHER isolation transformer is not required. You already have one in the form of the ZMPT101B
(and whatever you do, don’t buy the ZMPT101B module, with an op.amp etc on a small p.c.b. - it’s totally useless for power measurement).

The point of using the ZMPT101B is it’s got a documented and small phase shift, which your standard power supply isolation transformer won’t have. It will surely have a phase shift, which will probably be large and uncontrolled, so anybody’s guess what it will be. And there’s likely to be a cartload of harmonics on the output too, due to core saturation.

You maths is wrong regarding the offset. You’ve used peak-peak instead of peak value - you used 2√2 instead of √2 to get the 0.786V in "The offset plus the secondary voltage (0.786V). You’re adding the full peak-peak value on top of the offset.

Thanks for catching my 2x misunderstanding, @Robert.Wall!

One last thing is the voltage divider (R30 & R31) on the output of the voltage reference. It would appear to me that AREF is 1/2 the output of the voltage reference and that wouldn’t work.

Thanks for all your help!


It does work, so when I’ve got the time, I’ll try to explain it to you.

Thanks for your consideration, @Robert.Wall!


Here goes…

What is your assumption here - that the precision reference of 1.024 V from the MCP1501 is the ADC reference voltage? Have you looked where it’s going and the function of the pin on the AVR-DB? Have a look and I suspect your confusion will go up a notch or two.

The problem is, an external precision reference fed directly into the AVR is limited at the bottom end to 1.8 V - it’s in the data sheet - so at this rate you’re losing close to half of the input range of the ADC. In fact, when you look at how the ADC is set up and driven, it uses its internal 1.024 V reference, which is ideally and completely satisfactory for 0.333 V rms inputs. However, this is quoted at ±4% accuracy. What’s not mentioned, and it’s quite important, is whether this is uncertainty in the initial voltage, or instability of this voltage. Reading up about bandgap references in general and some other Atmel devices in particular suggests that the voltage stability is good, it’s knowledge of the absolute value that carries the greater uncertainty.

This is where the MCP1501 and its voltage divider comes in. The intention, not in a published version yet, is to use the internal reference to measure the divided voltage (you can’t measure 1.024 V with a 1.024 V ADC, if the wrong one is out of spec in the wrong direction), and use the result of this to infer the actual voltage of the internal reference, and so trim the calibration of the input currents and voltages. And that’s why the voltage divider is connected to an analogue input pin, PD7 or AIN7 to be precise, and not the external reference input.

After that explanation, carefully studying the schematic and carefully reading the spec (pg 216), three or four times. I see what great lengths to which people have gone to achieve the most accurate results. This is impressive!

To me, this implies that there is a bit of self calibration software happening in the initialization, and perhaps during the data acquisition.

I have a decent AC ammeter and the ability to read the the current from the utility’s meter on the house. There must be something wrong with my meter though, because it consistently reads about 2% less than the utility’s meter. If I make the assumption that my meter is correct, then I’m being overcharged by 2%. The company’s revenue was about $1B. Would one think that all the meters are reading 2% too high? Why that’d be $20,000,000 a year. No this is not possible. I’m sure the engineers at the utility are much more conscientious that you and you’re really good! :wink:

Here in the USA we have what’s called “NIST traceable” which means that the calibration of a device can be traced to the reference at the National Institute of Standards and Technology. It’s a very rigorous process. Where I worked, many of the important devices were calibrated to be considered NIST traceable. This becomes very important when one is measuring picoliters.

Again, I appreciate you taking the time to explain this to me. And it also gives me greater appreciation for the work that is done by the folks at OpenEnergyMonitor.



How did you hook your ammeter up to your supply? I’m pretty sure you need two ammeters to measure a US split-phase supply.


But, if the desired measurement is Line to Line, or one of the Lines to Neutral, then one ammeter would suffice.

Where do you put the ammeter in those 2 cases? Haven’t you got 3 wires coming into the property, each of them carrying some current? (I’m a bit rusty on US split-phase).

The position is much the same as a conventional 3-phase supply: the neutral current is the vector sum of the line currents - but in this case there are two 180° apart rather than 3 at 120° apart (and they come from one centre-tapped winding rather than 3 separate windings on the final distribution transformer). So in my book although there are similarities, they are not two phases, which to me implies 90° between them.

But OSD had 240 V in mind throughout, that implies his heat pump (and maybe his solar array) is connected line-line and so exactly the same (ignoring the neutral as there’s no connection) as your and my 240 V supply – one voltmeter and one ammeter or one wattmeter suffices.

As soon as you use the third wire, then it’s essentially three of everything: one set for leg A to neutral, a second for leg B to neutral, and the third for leg A to B (if you want to separate those loads out).

In the USA we have L1, L2, and earth ground coming to the panel (mains). The voltage between L1 and L2 is 240V. Which would make the voltage between either L and earth ground 120V. At the panel a neutral is connected to the earth ground bus bar. Each 120V circuit has a Line, Neutral and ground. (black, white, and green/copper, respectively) I don’t understand the physics for this, but I have been told it makes it more safe.

Be that as it may, if one leg is more heavily loaded than another, the currents will be different, let’s say the microwave, electric kettle and dishwasher were on the same Line and only a light on the other Line. In general, the loads on the 120V lines is pretty light, actually, most of the time parasitic (wall warts, LEDs of the various appliances, network equipment, home automation computer, energy monitoring equipment, etc) With the refrigerator, it’s about 800W! (Yeah, I need to clean up my act on this.)

I put my meter on one of the Lines coming into the panel, making the assumption that my loads were balanced.


It’s actually L1, L2 and Neutral that run from the transformer to the service entrance.

The Neutral leg is connected to ground at the pole as well as at the service entrance.

It’s the other way around. The ground is connected to the Neutral bus bar.

As such, a ground bus doesn’t exist. There should be only one connection point in the load center where ground is connected to the Neutral bus bar.