•        131

OpenPMU is a platform for the research, development and education of Synchrophasor technology.



Related Projects

Open Source SynchroPhasor PMU


The GridTrak Open Source SynchroPhasor PMU Project provides resources that enable you to build your own SynchroPhasor sensor for use with the openPDC project, research, development, or electric grid observation.

The Open Source Phasor Data Concentrator


The openPDC is a complete Phasor Data Concentrator designed to sort, process and archive streaming time-series data in real-time.

iPDC - Free Phasor Data Concentrator

  •    C

iPDC is a free Phasor Data Concentrator based on IEEEC37.118 synchrophasor standard. It also has Database Server for iPDC and PMU Simulator modules.

PMU Connection Tester


Verifies that the data stream from a synchrophasor measurement device is being received. Supports most all streaming synchrophasor data protocols.

vive-diy-position-sensor - Code & schematics for position tracking sensor using HTC Vive's Lighthouse system and a Teensy board

  •    C++

Lighthouse position tracking system consists of:   – two stationary infrared-emitting base stations (we'll use existing HTC Vive setup),   – IR receiving sensor and processing module (this is what we'll create).The base stations are usually placed high in the room corners and "overlook" the room. Each station has an IR LED array and two rotating laser planes, horizontal and vertical. Each cycle, after LED array flash (sync pulse), laser planes sweep the room horizontally/vertically with constant rotation speed. This means that the time between the sync pulse and the laser plane "touching" sensor is proportional to horizontal/vertical angle from base station's center direction. Using this timing information, we can calculate 3d lines from each base station to sensor, the crossing of which yields 3d coordinates of our sensor (see calculation details). Great thing about this approach is that it doesn't depend on light intensity and can be made very precise with cheap hardware.

oscc - Open Source Car Control 💻🚗🙌

  •    C++

Open Source Car Control (OSCC) is an assemblage of software and hardware designs that enable computer control of modern cars in order to facilitate the development of autonomous vehicle technology. It is a modular and stable way of using software to interface with a vehicle’s communications network and control systems. OSCC enables developers to send control commands to the vehicle, read control messages from the vehicle’s OBD-II CAN network, and forward reports for current vehicle control state. Such as steering angle & wheel speeds. Control commands are issued to the vehicle component ECUs via the steering wheel torque sensor, throttle position sensor, and brake position sensor. (Because the gas-powered Kia Soul isn’t brake by-wire capable, an auxiliary actuator is added to enable braking.) This low-level interface means that OSCC offers full-range control of the vehicle without altering the factory safety-case, spoofing CAN messages, or hacking ADAS features.

libPhasor: Phasor library for engineering


Library that exposes a phasor class. It overloads the basic operators so computations could be done on the phasor objects. Useful to students and engineers. Based off my Matlab class and ported to C#. I hope it will be found useful by others in the engineering community.

pmu-tools - Intel PMU profiling tools

  •    Python

pmu tools is a collection of tools for profile collection and performance analysis on Intel CPUs on top of Linux perf. This uses performance counters in the CPU. Check out the repository. Run the tools from the directory you checked out (but it does not need to be the current directory) They automatically search for other modules and data files in the same directory the script was located in.

Synchrophasor Analytics


Synchrophasor Analytics is a front end data processing and conditioning for downstream phasor based applications and an extension for development and analysis.


  •    VB

Prayer times, Qibla and Lunar phase for your location


  •    C

This is a c-library that provides tools for advanced analysis of electrophysiological data. It features denoising, unsupervised classification, time-frequency analysis, phase-space analysis, neural networks, time-warping and more.


  •    C++

This project will try to develop an audio analyser which displays several informations as phase in 2 ways (1 dimensional and 2 dimensional), waves shapes, spectrogram in full range and by 1/3 octavia with the value of the current peak frequency, and meter

Sculptor: the Sound-warping tool

  •    C

Sculptor is a phase-vocoder-based package with real-time capabilites. You can use it to fiddle with soundfiles in the frequency domain, changing pitch and duration independently.

angle - ANGLE: OpenGL ES to DirectX translation for Windows Store, Windows Phone and Desktop

  •    C++

ANGLE allows Windows users to seamlessly run OpenGL ES content by efficiently translating OpenGL ES API into DirectX 11 API calls.The ms-master branch and ms-win8.1 branch contain the source code used to build the ANGLE binaries that we publish on NuGet. The NuGet package with Windows 10 (UWP) binaries is available here. The NuGet package with Win8.1/Phone8.1 binaries is available here.

angle - A conformant OpenGL ES implementation for Windows, Mac and Linux.

  •    C++

The goal of ANGLE is to allow users of multiple operating systems to seamlessly run WebGL and other OpenGL ES content by translating OpenGL ES API calls to one of the hardware-supported APIs available for that platform. ANGLE currently provides translation from OpenGL ES 2.0 and 3.0 to desktop OpenGL, OpenGL ES, Direct3D 9, and Direct3D 11. Support for translation from OpenGL ES to Vulkan is underway, and future plans include compute shader support (ES 3.1) and MacOS support.ANGLE v1.0.772 was certified compliant by passing the ES 2.0.3 conformance tests in October 2011. ANGLE also provides an implementation of the EGL 1.4 specification.

tgy - tgy -- Open Source Firmware for ATmega-based Brushless ESCs

  •    Assembly

This tree contains Atmel AVR assembly code for ATmega-based 3-phase sensor-less motor electronic speed control (ESC) boards, originally for Turnigy and similar models. This work is based on Bernhard Konze's "tp-18a" software, which was a port from his earlier personal work to the TowerPro 18A and original (not current!) Turnigy Plush boards. Please see tgy.asm for Bernhard's license. AVRA 1.3.0 or newer or avrasm2, part of the AVR Tools, should assemble this source. AVRA should also build on a Mac. "make all" will emit a .hex file for every build target; "make binary_zip" will make a release .zip file. There are some other make targets for programming.



Defines a type for a geometric angle that allows various ways of setting and converting the values from and to different modes. Angle inherently is a double and

angle-grinder - Slice and dice log files on the command line

  •    Rust

Slice and dice log files on the command line. Angle-grinder allows you to parse, aggregate, sum, average, percentile, and sort your data. You can see it, live-updating, in your terminal. Angle grinder is designed for when, for whatever reason, you don't have your data in graphite/honeycomb/kibana/sumologic/splunk/etc. but still want to be able to do sophisticated analytics.

upm - UPM is a high level repository that provides software drivers for a wide variety of commonly used sensors and actuators

  •    C++

The UPM repository provides software drivers for a wide variety of commonly used sensors and actuators. These software drivers interact with the underlying hardware platform (or microcontroller), as well as with the attached sensors, through calls to MRAA APIs. Programmers can access the interfaces for each sensor by including the sensor’s corresponding header file and instantiating the associated sensor class. In the typical use case, a constructor initializes the sensor based on parameters that identify the sensor, the I/O protocol used and the pin location of the sensor.

YmsCoreBluetooth - A block-based framework for building Bluetooth 4

  •    Objective-C

A block-based framework for building Bluetooth 4.0 Low Energy (aka Smart or LE) iOS 7 or OS X 10.9 applications using the CoreBluetooth API. Includes Deanna and DeannaMac, applications to communicate with a TI SensorTag for iOS and OS X respectively. Transactions in Bluetooth LE (BLE) are two-phase (request-response) in nature: CoreBluetooth abstracts this protocol so that request behavior is separated from response behavior. The two phases are reconciled using a delegation pattern: the object initiating the request phase has a delegate object with a delegate method to handle the corresponding response phase. While functional, the delegation pattern can be cumbersome to use because the behavior for a two-phase transaction is split into two different locations in code.