Introducing the OpenPMU Project

The OpenPMU project delivers a fully open source Phasor Measurement Unit for power system analysis and research. This website hosts information on the project, devices and technologies produced, and publications.

We welcome contributions and engagement with the project, so please get in touch with us via email or message us on Facebook.

The OpenPMU sub-projects

Software Description:

The OpenPMU project is a suite of tools to help researchers create new power system technologies.  The project was originally founded at Queen’s University Belfast, UK, and subsequently joined by the SmarTS Lab at KTH Stockholm, Sweden.
Phasor Measurement Unit (PMU) technology has become a mainstream tool of the power systems engineer.  PMUs allow all manner of interesting phenomena to be analysed, from transmission system faults to power oscillations induced by wind farms.
Many PMUs on the market are more difficult to use than they should be, and commercial vendors are reluctant to tell you what’s inside the box.  For research and analysis, it’s important to understand in depth how the instruments that produce your data operate.
The OpenPMU project is concerned with the advancement of Phasor Measurement Unit technology for the purposes of academic research.  It does not compete with commercial vendors. The project was created because PMU technology is difficult and complex to use.  It shouldn’t be this way.  Our devices and protocols are simple and intuitive to use, and we take all criticism as constructive feedback.

OpenPMU Device:

The OpenPMU V2.0 is a radical departure from the design of earlier OpenPMU devices.  The main difference is that the main elements of the PMU device have been modularised, and data exchange occurs between them using an open and easy to understand format.

The three key modules are shown in the diagram above.  These are Data Acquisition (or Measurement), Phase Estimation, and the Telecommunications stage.
The Data Acquisition Module is responsible for acquiring the raw sample data representing the voltage or current waveforms under test.  In hardware, this consists of an analog-to-digital converter, strictly disciplined to an external time source.  In software, this can be a simulated sampling process in a numerical environment such as Matlab, PSSE/Python or Labview.
The Phase Estimation Module is responsible for operating the phase estimation algorithm employed.  This can be the users choice.  At present, a reference module is available in Python using a least-squares method which obtains excellent results under IEEE C37.118.1 compliance requirements.  The phase estimation stage is agnostic to how the sample data is derived and is essentially ‘hot-swappable’.
The Telecommunications Module is tasked with providing the external communication functions of the device.  At the time of writing, a reference implementation of IEEE C37.118.2 data comms is under test, but the OpenPMU project prefers a more open communication module with security built into its design.  More details on this will be published during 2015.
Other modules can be inserted into the OpenPMU system as required, such as advanced transient detection and fault recording algorithms, and local storage of synchrophasors.
Inter-module communication is achieved using a method based on XML.  For example, sending from the data acquisition stage to the phase estimation stage, raw sample data is first encoded in Base64, then encapsulated in XML along with relevant waveform metadata, and transmitted via UDP.  Multicast UDP can be employed for add-in modules.  This yields an communication solution that can be rapidly implemented in many environments.  Reference implementations are provided for Labview and Python.

Download Instructions:

Please download the latest version of OpenPMU from here:

License Term:

We want you to use and distribute these materials, but operating a project such as this is expensive in terms of time and money.  So please give credit to the project and the authors, especially by citing our papers in your work.  Find out why we use Open Source.
Licensing open source hardware is a difficult task.  For the avoidance of doubt, materials and drawings relating to OpenPMU hardware designs remain the copyright of their authors unless explicitedly stated otherwise.  You are free to use and modify these materials and drawings, but you must acknowledge the source and require users of your work to do likewise (forthe avoidance of doubt, they should also acknowledge the OpenPMU project).
Software elements are licensed according to the license file provided with the code.  Any of the authors’ OpenPMU software provided on this site, absent of a license file, should be considered to carry the BSD license.
If you’re still unsure, drop us a line.  🙂