Energy Monitor Bricklet


  • Enables energy monitoring of mains voltage (120V/230V AC)
  • Measures voltage (V), current (A) and energy (Wh)
  • Measures real/apparent/reactive power (W/VA/VAR)
  • Measures power factor and frequency (Hz)
  • Voltage and current waveform are provided


The Energy Monitor Bricklet is equipped with a 3.5mm jack plug for a current transformer and a 3.5mm OD/1.35mm ID barrel plug for a voltage transformer. The transformer voltages are used to calculate voltage, current, energy, real/apparent/reactive power, power factor and frequency of mains voltage of a single phase conductor. Additionally the waveform for voltage and current is provided.

The Energy Monitor Bricklet can do all of the measurements without the need for any exposed mains voltage wiring!

To use the Bricklet you have to connect a current transformer clamp around a single phase conductor and connect an AC voltage transformer to the same power line. The Energy Monitor Bricklet will use the low-level output voltages of the transformers to make the measurements. This ensures that the Bricklet is safe to handle, since no mains voltage has a direct connection to the Bricklet.

We offer a 230V voltage transformer as well as a 5A current transformer clamp or 30A current transformer clamp. The Bricklet comes factory-calibrated for these transformers.

Technical Specifications

Property Value
Current Consumption 50mW (10mA at 5V)
Input Voltage Max 12V AC from voltage transformer
Input Current Max 1V AC from current transformer
Connector Voltage 3.5mm jack plug (audio jack)
Connector Current 3.5mm OD with 1.35mm ID barrel plug
Dimensions (W x D x H) 40 x 40 x 5mm (1.57 x 1.57 x 0.2")
Weight 7g


Example: Monitor Power Usage of Heater


Never work on live mains electrical wiring. Remove the mains connection before you cut the wire or add the current transformer or similar!

As an example we want to monitor the power of a small electric heater.

To do this we have to connect the voltage transformer and the current transformer clamp to the same circuit that the electric heater runs on.

A typical european mains power cable does have three wires:

  • Phase (L)
  • Neutral conductor (N)
  • Protective earth (PE)

In case of three-phase power there are two more phases (L2 and L3). If you want to measure the power for a three-phase system you have to use three Bricklets, for each phase one. Each Bricklet has to be equipped with its own voltage and current transformer for its phase.

In our single phase example, the current transformer clamp has to be connected to L. For that the wire has to be passed through the current transformer. You can open the current transformer for that. It is absolutly important that only L is passed through the transformer. If you for example pass N and L through it, you will not be able to measure the current.

Energy Monitor Bricklet heater example

On the Bricklet side you have to connect the clamp to the AC Current input.

Put the AC/AC voltage transformer into a socket that is as near to the load that you want to monitor as possible.

Energy Monitor Bricklet heater example, photo 2

On the Bricklet side you have to connect the transformer to the AC Voltage input.

The resulting setup will look like this:

Energy Monitor Bricklet heater example, photo 3

In the Brick Viewer this setup looks as follows:

Energy Monitor Bricklet in Brick Viewer (heater)

Transformer Ratios

Both transformers (the voltage transformer and the current transformer) that are connected to the Energy Monitor Bricklet have a ratio.

The current transformers that we sell are 5A:1V and 30A:1V, while the voltage transformer delivers about 12V without load and 230V input. The voltage is higher than specified (9V) since no current is flowing while connected to the Bricklet. We measured an exact ratio of 19.23V:1V.

The Bricklet has a default current ratio of 30 and a default voltage ratio of 19.23. You can change the ratios in Brick Viewer:

Energy Monitor Bricklet ratio configuration

If you use the 5A:1V current transformer, change the current ratio to 5.

If you use your own current transformer or voltage transformer, you have to measure the ratio and change it accordingly in Brick Viewer.

Increase Current Measurement Resolution

Current Transformer measure the current in a wire by measuring its magnetic field (see Wikipedia Current Transformer). You can increase the resolution of the current measurement by passing the wire through the current transformer multiple times.

Energy Monitor Bricklet with wires passed through multiple times

The ratio changes accordingly:

  • 2-times passed through: Ratio factor 2
  • 3-times passed through: Ratio factor 3
  • etc.

If the real current becomes too high, the measurement will be cut off. The measurement is not correct anymore, but the Bricklet can not be damaged by this. The same is true if the current transformer ratio is too high

Passing the wire multiple times through the transformer will increase the noise. If available, it is the better to choose a matching transformer.


The Energy Monitor Bricklet can deliver the voltage as well as the current waveform. The voltage waveform should always look sinusoidal, while the current waveform can heavily vary depending on the measured load. Below you can see waveforms for four different loads.

Waveform 1: 1.7kW electric heater.

Energy Monitor Bricklet in Brick Viewer (heater)

Waveform 2: 125W fan.

Energy Monitor Bricklet in Brick Viewer (fan)

Waveform 3: 10W LED lamp. The conductor is threaded through the current transformer clamp eight times to increase the resolution. This looks like a typical AC/DC power supply.

Energy Monitor Bricklet in Brick Viewer (LED lamp)

Waveform 4: 12W energy saving light bulb. The conductor is threaded through the current transformer clamp eight times to increase the resolution. You can see that the energy saving light bulb only uses about 1/4 of the waveform.

Energy Monitor Bricklet in Brick Viewer (energy saving light bulb)

Test your Energy Monitor Bricklet

To test a Energy Monitor Bricklet you need to have Brick Daemon and Brick Viewer installed. Brick Daemon acts as a proxy between the USB interface of the Bricks and the API bindings. Brick Viewer connects to Brick Daemon. It helps to figure out basic information about the connected Bricks and Bricklets and allows to test them.

Connect the Energy Monitor Bricklet to a Brick with a Bricklet Cable.

If you connect the Brick to the PC over USB, you should see a new tab named "Energy Monitor Bricklet" in the Brick Viewer after a moment. Select this tab. Connect the voltage and current transformer clamp.

You can now see the voltage/current waveforms as well as the voltage, current, power factor, frequency, energy and real/apparent/Reactive power.

Energy Monitor Bricklet in Brick Viewer

The current waveform heavily depends on the measured load (see Waveforms).

After this test you can go on with writing your own application. See the Programming Interface section for the API of the Energy Monitor Bricklet and examples in different programming languages.


A laser-cut case for the Energy Monitor Bricklet is available.

Case for Energy Monitor Bricklet

The assembly is easiest if you follow the following steps:

  • Screw spacers to the Bricklet,
  • screw bottom plate to bottom spacers,
  • build up side plates,
  • plug side plates into bottom plate and
  • screw top plate to top spacers.

Below you can see an exploded assembly drawing of the Energy Monitor Bricklet case:

Exploded assembly drawing for Energy Monitor Bricklet

Hint: There is a protective film on both sides of the plates, you have to remove it before assembly.

Programming Interface

See Programming Interface for a detailed description.

Language API Examples Installation
C/C++ API Examples Installation
C# API Examples Installation
Delphi/Lazarus API Examples Installation
Go API Examples Installation
Java API Examples Installation
JavaScript API Examples Installation
LabVIEW API   Installation
Mathematica API Examples Installation
MATLAB/Octave API Examples Installation
MQTT API Examples Installation
openHAB API Examples Installation
Perl API Examples Installation
PHP API Examples Installation
Python API Examples Installation
Ruby API Examples Installation
Rust API Examples Installation
Shell API Examples Installation
Visual Basic .NET API Examples Installation
Modbus API