Skip to content
Python bindings of the opendnp3 library. This is a fork of pydnp3 with the goal of ensuring up-to-date multi-platform PyPI packages that can be installed with pip
Python Other
  1. Python 99.6%
  2. Other 0.4%
Branch: master
Clone or download
Pull request Compare This branch is 1 commit ahead of ChargePoint:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
deps
examples
src
tests
wheel
.gitattributes
.gitignore
.gitmodules
.travis.yml
CMakeLists.txt
LICENSE
MANIFEST.in
README.md
__init__.py
appveyor.yml
imasteroperations.patch
requirements.txt
reset_dnp3_submodule.sh
reset_pybind11_submodule.sh
settings.cmake
setup.cfg
setup.py
tox.ini

README.md

pyopendnp3

This project is a minor fork of the great pydnp3 library, which provides Python bindings for OpenDNP3.

Why fork? Because pydnp3 only provides pip-friendly wheels for Python 2 and Python 2.7 has reached end of life. This fork aims to provide pip-friendly wheels for Python 3 available on PyPI.

While the name of the project is pyopendnp3, module names are unchanged and thus code that worked with pydnp3 should work with no changes.

This project currently produces wheels for the following platforms:

  • Windows
    • Python 3.5 x86-64
    • Python 3.6 x86-64
    • Python 3.7 x86-64
    • Python 3.8 x86-64

The remainder of this README is reproduced verbatim from pydnp3.

Python bindings for the opendnp3 library, an open source implementation of the DNP3 protocol stack written in C++14.

Note: This is a work in progress. See Issues for things we know about and feel free to add your own.

Supported Platforms: Linux, MacOS

Dependencies

To build the library from source, you must have:

This repository includes two repositories as submodules (under deps/):

Build & Install

At the moment, this library must be built from source:

    $ clone --recursive http://github.com/Kisensum/pydnp3
    $ cd pydnp3
    $ python setup.py install

Documentation

pydnp3 is a thin wrapper around most all of the opendnp3 classes. Documentation for the opendnp3 classes is available at automatak.

Use python's help to discover the available wrapper classes and functions. For example,

> import pydnp3
> help (pydnp3.opendnp3)
Help on module pydnp3.opendnp3 in pydnp3:

NAME
    pydnp3.opendnp3 - Bindings for opendnp3 namespace

FILE
    (built-in)

CLASSES
    pybind11_builtins.pybind11_object(__builtin__.object)
        AnalogCommandEvent
        AnalogInfo
            AnalogSpec
...
You can’t perform that action at this time.