Skip to main content

Python bindings for libiec61850 - IEC 61850 protocol implementation

Project description

pyiec61850-ng

Next Generation Python bindings for libiec61850, packaged as a Python wheel.

Build and Test PyPI version Python Versions

This repository provides Python bindings for the libiec61850 library, which is an open-source implementation of the IEC 61850 standard for communication networks and systems in substations.

Installation

Install from PyPI (Recommended)

pip install pyiec61850-ng

Install from GitHub Release

pip install pyiec61850-ng --find-links https://github.com/f0rw4rd/pyiec61850-ng/releases/latest/download/

Install directly from GitHub

pip install git+https://github.com/f0rw4rd/pyiec61850-ng.git

Install from local wheel

pip install pyiec61850-ng-*.whl

Usage

Quick Start

import pyiec61850.pyiec61850 as pyiec61850

# Create and connect to an IEC 61850 server
connection = pyiec61850.IedConnection_create()
error = pyiec61850.IedConnection_connect(connection, "192.168.1.100", 102)

if error == pyiec61850.IED_ERROR_OK:
    print("Connected successfully!")
    # Perform operations...
    pyiec61850.IedConnection_close(connection)

pyiec61850.IedConnection_destroy(connection)

Examples

For comprehensive examples, see the examples directory:

Run examples:

python examples/01_basic_connection.py 192.168.1.100
python examples/02_device_discovery.py 192.168.1.100

Building from Source

The wheel package is built using Docker:

docker build -t pyiec61850-builder --build-arg LIBIEC61850_VERSION=v1.6 .

To extract the wheel file:

mkdir -p ./dist
docker create --name wheel-container pyiec61850-builder
docker cp wheel-container:/wheels/. ./dist/
docker rm wheel-container

Versioning

This package uses the format: LIBIEC61850_VERSION.REVISION

  • Example: 1.6.0.1 = libiec61850 v1.6.0, first package revision
  • 1.6.0: The exact libiec61850 version included (static)
  • .1: Package revision for bug fixes, rebuilds, binding improvements

This clearly shows which libiec61850 version you're getting and our package iteration.

Check current version:

python version.py        # Package version: 1.6.0.1
python version.py --libiec61850  # libiec61850 version: v1.6.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyiec61850_ng-1.6.0.4-cp313-cp313-manylinux1_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.13

pyiec61850_ng-1.6.0.4-cp312-cp312-manylinux1_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.12

pyiec61850_ng-1.6.0.4-cp311-cp311-manylinux1_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.11

pyiec61850_ng-1.6.0.4-cp310-cp310-manylinux1_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.10

pyiec61850_ng-1.6.0.4-cp39-cp39-manylinux1_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.9

pyiec61850_ng-1.6.0.4-cp38-cp38-manylinux1_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.8

File details

Details for the file pyiec61850_ng-1.6.0.4-cp313-cp313-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyiec61850_ng-1.6.0.4-cp313-cp313-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 1504152f08b52902558ada1398e9fb65e8a5cdd559300aa44f5a8e8fa18833b0
MD5 4bba60a8e89d4431fb055b417ff56b84
BLAKE2b-256 90aafa5d9f00e57cc0659ead54faaf8af73fa9b41d26d0bba7e074589fa47c75

See more details on using hashes here.

File details

Details for the file pyiec61850_ng-1.6.0.4-cp312-cp312-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyiec61850_ng-1.6.0.4-cp312-cp312-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 eb1799bbbd6f90301629ec2a26452fe3989e01ca80252293fd95cda6c4a392c2
MD5 91391ae5fa96d11a557714d11ef07c9b
BLAKE2b-256 10e4aaf165e1546f0397bdceb2216e4e5333504c1303304aed4f93e78c3d20fa

See more details on using hashes here.

File details

Details for the file pyiec61850_ng-1.6.0.4-cp311-cp311-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyiec61850_ng-1.6.0.4-cp311-cp311-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 ebc2b5a8d108b2a386767ac397479f6647db5d8c1bfed7e74c20547e4e4f2083
MD5 4e41b2adcfc9b1896c231bed7142b84b
BLAKE2b-256 375508a7007b0ab0fd0854180e5fca92298ea1967c28c315dee0314eed354146

See more details on using hashes here.

File details

Details for the file pyiec61850_ng-1.6.0.4-cp310-cp310-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyiec61850_ng-1.6.0.4-cp310-cp310-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 a0b776a0bde15e0f0b9a1a7e4286ac9399f7e0fe9f7b443c0a82e043a8a5ea32
MD5 f5ee50117e5f780611a8d07a185bbc04
BLAKE2b-256 4d7285a634f16c8cc1cdf52adb7c5b7696b7aadeef438bdbf792571ef0af7f45

See more details on using hashes here.

File details

Details for the file pyiec61850_ng-1.6.0.4-cp39-cp39-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyiec61850_ng-1.6.0.4-cp39-cp39-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 c69c2060542270eda1175ea03bfd1a01ec3662d70013e5b823289d114514f28c
MD5 93c57483bcdd6f0ff9c0763bd8665927
BLAKE2b-256 0b3a8d87422a181afe9ef56b102feed3632d861f26dd951e7e2dd7ad069ab69e

See more details on using hashes here.

File details

Details for the file pyiec61850_ng-1.6.0.4-cp38-cp38-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pyiec61850_ng-1.6.0.4-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 2aaaeaaf8a55c369d8295cd96d78bcde58b2dea3cd520933d196a34811d78ed2
MD5 ba3dd7a879a1e9c509c8961a464b784e
BLAKE2b-256 6ae12297ea0fb1e5b06b156c6adf929bfdb312178c9125ef03c6a5d02f124b1d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page