• Stars
    star
    161
  • Rank 233,470 (Top 5 %)
  • Language
    C#
  • License
    MIT License
  • Created over 9 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Grid Solutions Framework

NEW: The GSF libraries are being migrated to .NET Core as the Gemstone Libraries


GSF

The Grid Solutions Framework (GSF) is an extensive open source collection of .NET code used by electric power utilities and various open source projects. GSF contains a large variety of code useful for any .NET project consisting of hundreds of class libraries that extend or expand the functionality included in the .NET Framework with a focus on tools and protocol parsers that are useful for the electric power industry.

NOTE: GSF now targets .NET 4.8, any dependent application will need to migrate to .NET 4.8 in order to keep using GSF assemblies.

Build status CodeQL

Library Latest Version
GSF.Core NuGet Pre-release
GSF.Communication NuGet Pre-release
GSF.Security NuGet Pre-release
GSF.ServiceProcess NuGet Pre-release
GSF.TimeSeries NuGet Pre-release
GSF.Web NuGet Pre-release
GSF.Windows NuGet Pre-release
GSF.Net NuGet Pre-release
GSF.Media NuGet Pre-release
GSF.Historian NuGet Pre-release
GSF.PhasorProtocols NuGet Pre-release
GSF.COMRADE NuGet Pre-release
GSF.PQDIF NuGet Pre-release
GSF.SELEventParser NuGet Pre-release
GSF.EMAX NuGet Pre-release
GSF.ServiceModel NuGet Pre-release
GSF.ServiceBus NuGet Pre-release

Time-series Application Components

Example Components:

Components

  • Adapter based time-series processing and data exchange library with WPF UI configuration screens for managing real-time data
  • Various utility protocol libraries, e.g., PQDIF, COMTRADE, IEEE C37.118, IEEE 1344, IEC 61850-90-5, UTK F-NET, SEL Fast Message, BPA PDCstream, Macrodyne, MMS
  • Configuration API for easy and secure access to application settings
  • High-speed binary parsing framework for implementing protocol parsing
  • Well vetted abstract asynchronous communications framework (IServer / IClient) for socket (TCP, UDP including Multicast all over IPv6 or IPv4), serial and file based communications
  • Security framework for implementing role-based security in ASP.NET, WCF, WPF, Windows Forms and Windows Services
  • Windows Service Template for quickly developing windows services with remoting capability
  • Base WCF service for creating WCF services that can be self-hosted in Windows Service, Console, WPF or Windows Forms application
  • WCF-based Message Bus that can be hosted inside ASP.NET, Windows Service, Console, WPF or Windows Forms application

Poster

Click for full size image

The Grid Solutions Framework, administered by the Grid Protection Alliance (GPA), is a combination of the existing Time Series Framework and TVA Code Library projects that were hosted on CodePlex. In creating the GSF, new code components have been added and the libraries have been refactored to make this integrated framework more secure and significantly better performing.

The open Phasor Data Concentrator (openPDC), Secure Information Exchange Gateway (SIEGate) and open Historian are examples of projects that use the Grid Solutions Framework.

Documentation and Support

NuGet Packages

Deployment

  • Make sure your system meets all the requirements below.
  • Open the project you want to leverage the GSF on in Visual Studio.
  • In the solution explorer, right-click on the project or solution.
  • Click on manage Nuget packages.
  • Search for GSF.
  • Install the library you want to use.
  • Enjoy.

Requirements

  • 64-bit Windows 10 or newer or POSIX OS, e.g. Linux or Mac.
  • .NET 4.8 or newer.
  • Visual Studio 2022 or higher.
  • NuGet (usually included in Visual Studio).

Contributing

If you would like to contribute please:

  • Read our styleguide.
  • Fork the repository.
  • Code like a boss.
  • Create a pull request.

License

The Grid Solutions Framework is licensed under the MIT license.

GSF

More Repositories

1

go2cs

Golang to C# Converter
C#
360
star
2

openHistorian

The Open Source Time-Series Data Historian
TypeScript
172
star
3

openPDC

Open Source Phasor Data Concentrator
C#
128
star
4

PTPSync

Precision Time Protocol Synchronization Service for Windows
C#
68
star
5

osisoftpi-grafana

Grafana Data Source Plugin for the OSIsoft PI System
TypeScript
57
star
6

PQDashboard

Dashboard for system-wide visualization of power quality data
JavaScript
21
star
7

PMUConnectionTester

Verifies data streams from synchrophasor measurement devices
C#
19
star
8

openXDA

eXtensible Disturbance Analytics
JavaScript
18
star
9

openMIC

Meter Information Collection System
C#
15
star
10

openECA

Open Source Extensible Control & Analytics
C#
13
star
11

udp2serial

UDP to Serial Forwarder
C#
10
star
12

ARMORE

Applied Resiliency for More Trustworthy Grid Operation
JavaScript
10
star
13

substationSBG

Substation Secure Buffered Gateway
C#
9
star
14

openHistorian-grafana

Grafana Data Source Plugin for the openHistorian
TypeScript
8
star
15

projectalpha

Visual Studio solution that provides a jump start to developing new products from the Grid Solutions Framework - Time-Series Library.
C#
8
star
16

SIEGate

Secure Information Exchange Gateway
C#
6
star
17

pdqtracker

Phasor Data Quality Tracker
C#
6
star
18

BroccoliSharp

BroccoliSharp: A .NET implementation of the Bro Client Communications Library.
C#
5
star
19

openSEE

Open Source System Event Explorer
JavaScript
4
star
20

openhistorian-python

openHistorian Python API
Python
4
star
21

GPA-PhasorMap

Extension of the Worldmap panel plugin for Grafana 3.0 to use openHistorian Features
JavaScript
3
star
22

PQDIFExplorer

Visualization of data stored in the Power Quality Data Interchange Format
C#
3
star
23

phasorsplitter

Creates multiple streams from a single synchrophasor stream source.
C#
3
star
24

openSPM

Open Security Patch Manager
JavaScript
2
star
25

SIMProx

SNMP Proxy Service for Agent Forwarding and Database Operation Targets
C#
2
star
26

HistorianDataWalker

Example application that scans and operates on data read from the openHistorian 2.0
C#
1
star
27

openHistorianGrafanaAlarmPanel

Grafana openHistorian Alarm Panel for Device Status
TypeScript
1
star
28

gpa-gemstone

gpa-gemstone @org npm repository
TypeScript
1
star
29

PhasorClockPlugin-grafana

JavaScript
1
star
30

Grafana-oh-datadownload

This Grafana widget lets the user download data from the OH as a .csv file
TypeScript
1
star
31

PhasorDatasource-grafana

initial commit
JavaScript
1
star
32

SOETools

Sequence of Events Tools
JavaScript
1
star
33

TrenDAP

Trending Data Analytics Platform
TypeScript
1
star
34

MiPlan

General Plan Development Tool with Action Item Tracking and Alarming System
JavaScript
1
star
35

SEBrowser

System Event Browser
TypeScript
1
star
36

SOEEngine

Provides analysis routines for Sequence of Events
JavaScript
1
star
37

OPCAdapters

OPC-UA Adapters for the Grid Solutions Framework Time-series Library
C#
1
star
38

HistorianDataCompletenessReporter

Example application that scans and operates on data read from the openHistorian 2.0
C#
1
star
39

MiMD

Meter diagnostic monitoring service.
JavaScript
1
star
40

phasorMap-grafana

A grafana panel that will allow for plotting phasors on a map.
JavaScript
1
star
41

SystemCenter

Manager tool for managing configuration and metadata for OpenXDA, PQDashboard, OpenMIC, any future disturbance product, and other external processes (ie: Maximo, PQView, etc ).
TypeScript
1
star