Metadata-Version: 2.0
Name: maranet
Version: 1.0.2
Summary: A Python client library for MARA protocol. Includes server emulator, although MARA servers are tipically microcontrollers.
Home-page: https://github.com/D3f0/maranet
Author: Nahuel Defossé
Author-email: ndefosse@tw.unp.edu.ar
License: MIT license
Keywords: maranet
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Requires-Dist: twisted
Requires-Dist: construct (<=2.5.0)
Requires-Dist: jinja2
Requires-Dist: Click (>=6.0)

=======
MaraNet
=======


.. image:: https://img.shields.io/pypi/v/maranet.svg
        :target: https://pypi.python.org/pypi/maranet

.. image:: https://img.shields.io/travis/D3f0/maranet.svg
        :target: https://travis-ci.org/D3f0/maranet

.. image:: https://readthedocs.org/projects/maranet/badge/?version=latest
        :target: https://maranet.readthedocs.io/en/latest/?badge=latest
        :alt: Documentation Status

.. image:: https://pyup.io/repos/github/D3f0/maranet/shield.svg
     :target: https://pyup.io/repos/github/D3f0/maranet/
     :alt: Updates


A Python client library for MARA protocol. Includes server emulator, although MARA servers are tipically microcontrollers.


* Free software: MIT license
* Documentation: https://maranet.readthedocs.io.


Mara Network Protocol
=====================


Mara is a protocol designed for interaction with a network of embedded devices.
These devices collect state and events from a process (implementations include
traffic light systems and power station monitoring).

Mara 1.0 is source code is implemented on top of Microchip PIC devices and code
can be requested at ricadoalopez at gmail.

Mara 1.6, designed with 16 bit in mind, is implemented on top of Arduino libraries and
should be available soon.


Mara 1.0
--------

Mara packages structure::

    ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┐┌─────┐┌─────┬─────┐
    │ SOF │ SEQ │ QTY │ SRC │ DST │ CMD │ PLD ││ ... ││ BCL │ BCH │
    │     │     │     │     │     │     │     ││     ││     │     │
    └─────┴─────┴─────┴─────┴─────┴─────┴─────┘└─────┘└─────┴─────┘
    ┌─────┬───────────┬───────────┬─────┬───────────┬───────────┐
    │ QSV │ SV0       │ SV1       │ QDI │ DI0       │ DI1       │
    │     │           │           │     │           │           │
    └─────┴───────────┴───────────┴─────┴───────────┴───────────┘
    ┌─────┬───────────┬───────────┬─────┬─────────────────────────┐
    │ QAI │ AI0       │ AI1       │ QEV │ EV..                    .
    │     │           │           │     │                         │
    └─────┴───────────┴───────────┴─────┴─────────────────────────┘

Where:

    * **SOF** Start of frame
    * **SEQ** Sequence number
    * **QTY** Frame length or byte *quantity*
    * **SRC** Source address
    * **DST** Destination address
    * **CMD** Command
    * **PLD** Payload
        - Payload consists of arrays of values



=======
History
=======


1.0 (2017-07-09)
------------------

* First release on PyPI. The sourcecode is extracted from https://github.com/d3f0/txscada and placed in an independet package.

1.0.1 (2017-07-09)
------------------

* Move code to cookiecutter python pacakge.


