Computing stuff tied to the physical world

A power supply which draws 12 mW!

In Hardware on Dec 17, 2011 at 00:01

It’s been a challenge to get all the bits of the AC current monitor ready, but the last hurdle has now been taken.

In a nutshell: the AC current monitor is a small unit based on a JeeNode Micro, which periodically broadcasts information about the current consumption of an attached appliance. It’s hooked up to 230V, so it’d be a bit silly to run it off batteries. It would be equally silly if it were to draw lots of power, and since it has to be permanently on, I wanted to get its power consumption really, really low – under 0.1 Watt. That goal has now been reached.

According to this calculator, the following setup draws only 12 mW @ 230V and will supply 0.3 mA @ 3.3V:

DSC 2821

Here is the schematic:

Screen Shot 2011 12 09 at 02 54 33

It’s a transformer-less capacitive power supply, combined with an LT1121 low-power 3.3V linear regulator. C4 can be omitted. This regulator has a shutdown pin, which is tied to the input voltage via a voltage divider. As a result, the output of this supply switches on only once the 100 µF reservoir capacitor has charged up to 6V (it’ll continue charging to 12V, at which point the zener diode kicks in). Here is the power-up behavior w/o D2, and no load:


The blue line is the voltage over the reservoir cap, and the yellow line is the regulated output. If you look very closely, you can even see the 50 Hz cycles “pumping up” the reservoir once every 20 milliseconds.

By itself, this isn’t good enough yet to drive my test JeeNode (no bootstrap, brief wakeup activity every 10s):


Very odd behavior, as the regulator and the RFM12B start pulling more current than is coming in, preventing the output from ever reaching more than 1.8 V (I used a 470 µF reservoir cap in this test).

The final trick was to add a diode from the regulator output to the shutdown pin. This positive feedback causes the regulator to very quickly snap out of shutdown mode. So once the reservoir cap reaches about 6V, the regulator switches on, at which point the shutdown pin is quickly pulled high to finish the job and keep it on:


This is running from 150 VAC using the new AC power box. At lower voltages, the trickle current becomes too weak to reliably turn on. At 230V, on the other hand, the whole startup process is even quicker and very robust.

I have not yet been able to measure the power draw of this supply. Due to its design it will always draw the same amount (predicted to be 12 mW), regardless of load. The feed capacitor (C1) is a 10 nF X2 type.

Here’s the final proof – a JeeNode, powering up in a few seconds and sending out a test packet every 10 seconds:


Many thanks to martynj – his weblog comments and great suggestions by email made this result possible.

Good – now I can sprinkle dozens of these around the house and still use no more than one Watt extra!

  1. Maybe you think about, to build a Fuse in you Final Build, between Line an C1. Only a suggestion.

    • Not shown in the schematic: R1 is a fusible resistor – that has the same effect (and it’s much more sensitive).

  2. For those not familiar with a “fusible resistor”, these are neat devices that can perform double function in a circuit. As well as acting as a known resistance, when subject to GROSS overload, the metallic coating around a ceramic rod fries and opens the circuit.

    So, isn’t that what a fuse is for? True, but when you are dealing with mains energy, fuse selection is difficult. You should not use a standard glass fuse – they can literally explode and send out plasma & powdered glass fragments. With a capacitive load, you need at least a “slow blow” fuse to cope with the initial surge. Ever plugged in an Apple Powerbook supply? Choosing a fuse rating that does not blow in long term, normal service, but retains protect becomes a compromise.

    Using a fusible can be a better solution – it’s resistance is chosen to limit the initial surge current and under severe faults (e.g. L1 to L2 short) it is guaranteed to blow without sparks or fumes. Of course, nothing is ideal – the trade off here is that a minor overload of 200 – 300% will NOT trigger the fusible – it is not useful to protect the downstream circuit. Rather it’s function is to safely disconnect the high energy mains under fault conditions.

  3. Wow, that’s a great achievement! Congratulations!

    Do you still have plans to do the same, without actually connecting it to the AC mains? Or is that simply not feasible?

    • Oh, you mean inductive or so, to avoid the direct galvanlic connection? Well, now that I’ve cleared the “power-bump” hurdle of the RFM12B, that might become feasible again. This regulator draws roughly 100 µA though, I may have to look for alternatives.

  4. JC, very good result! I have been trying with a very similar setup but could not get it to work because of the missing positive feedback from the output.

    The LT1121 is very nice (and expensive, ouch!!!) because it works with up to 30V input (much more than the TSC regulators I use). This would allow for a much higher energy in the input capacitor (e.g. with a 25V zener) and much more ‘runtime’ in case of input power loss (in this case meaningless, because if you loose the AC then measuring current makes no sense anymore :-)).

    • PS: TS5205CX533 (~€0.15) could perhaps be an alternative to the LT1121

    • Yes, a 25V zener would work (or perhaps 20V, with a 25V cap). Stay tuned – more news on this setup coming tomorrow.

      It’s quite nice to be able to send out one last packet when AC mains goes down (if the receiver is still up as well, of course), because that lets you send out a final reading. One of the things on my (huge) list, is to try detecting zero crossings – that would give an immediate signal when AC goes down – and would also be useful to trigger a TRIAC (they only need a brief pulse each cycle, i.e. very low power).

    • Zero crossing detection is not a big deal. Just connect the AC line directly with a high enough resistor value (1M, 2M2) to an INT input. Positive and negative voltages above the limits are clamped by the internal intrinsic diodes.

      In your circuit above it should be ok to connect a ~220k to the node between R1 and D1, other side to int input. A small C could help to filter spikes.

  5. Completely off topic – saw and thought it might interest you. They’re offering free samples to people who’ve done a lot of prototyping work and are prepared to write it up – I suspect this blog will give you a good chance of getting some

  6. The reservoir capacitor has 100µF, not 100µA. ;)

  7. Well done!

  8. Could be that you’ve mentioned and I’ve missed it. But what would happen if you would reverse polarity on the mains-side. And what thoughts have there been to cope with this possible danger. Bridge rectifier perhaps?

    • With “Euro-plugs”, which are non-polarized, you can essentially never tell which line is neutral and which one is live. So the best thing to do, is to always assume that both lines carry a dangerous voltage.

      A bridge rectifier is not an option in case of the AC current monitor, since it needs to be attached to a small shunt resistor in series between power source and load. Bridge rectifier diodes would generate far too much heat: say 2x 0.7V drop, with a 1000 W load that’s 4.5A x 1.4V = 6.3 W power loss. For standalone use, a bridge rectifier after C1/C4 would be an option, but it won’t increase safety.

  9. This is great, I cant wait for your next post about the AC current monitor. Would it be possible to do a low power device that is capable of receiving data and switching the AC power?

    • Would love to find a way. W.r.t. receiving, a sort-of-workaround would be to poll once a second, though that would make it a bit sluggish to respond (or perhaps listen a bit more often, briefly, and transmit occasionally to re-sync the clocks). The other challenge will be to control something with very little power: perhaps a TRIAC pulsed near the zero-crossings, or a latching relay.

Comments are closed.