{ "info": { "author": "Nahuel Defoss\u00e9", "author_email": "ndefosse@tw.unp.edu.ar", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "=======\nMaraNet\n=======\n\n\n.. image:: https://img.shields.io/pypi/v/maranet.svg\n :target: https://pypi.python.org/pypi/maranet\n\n.. image:: https://img.shields.io/travis/D3f0/maranet.svg\n :target: https://travis-ci.org/D3f0/maranet\n\n.. image:: https://readthedocs.org/projects/maranet/badge/?version=latest\n :target: https://maranet.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\n.. image:: https://pyup.io/repos/github/D3f0/maranet/shield.svg\n :target: https://pyup.io/repos/github/D3f0/maranet/\n :alt: Updates\n\n\nA Python client library for MARA protocol. Includes server emulator, although MARA servers are tipically microcontrollers.\n\n\n* Free software: MIT license\n* Documentation: https://maranet.readthedocs.io.\n\n\nMara Network Protocol\n=====================\n\n\nMara is a protocol designed for interaction with a network of embedded devices.\nThese devices collect state and events from a process (implementations include\ntraffic light systems and power station monitoring).\n\nMara 1.0 is source code is implemented on top of Microchip PIC devices and code\ncan be requested at ricadoalopez at gmail.\n\nMara 1.6, designed with 16 bit in mind, is implemented on top of Arduino libraries and\nshould be available soon.\n\n\nMara 1.0\n--------\n\nMara packages structure::\n\n \u250c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2510\u250c\u2500\u2500\u2500\u2500\u2500\u2510\u250c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2510\n \u2502 SOF \u2502 SEQ \u2502 QTY \u2502 SRC \u2502 DST \u2502 CMD \u2502 PLD \u2502\u2502 ... \u2502\u2502 BCL \u2502 BCH \u2502\n \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\u2502 \u2502\u2502 \u2502 \u2502\n \u2514\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2518\u2514\u2500\u2500\u2500\u2500\u2500\u2518\u2514\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2518\n \u250c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n \u2502 QSV \u2502 SV0 \u2502 SV1 \u2502 QDI \u2502 DI0 \u2502 DI1 \u2502\n \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n \u2514\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n \u250c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n \u2502 QAI \u2502 AI0 \u2502 AI1 \u2502 QEV \u2502 EV.. .\n \u2502 \u2502 \u2502 \u2502 \u2502 \u2502\n \u2514\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n\nWhere:\n\n * **SOF** Start of frame\n * **SEQ** Sequence number\n * **QTY** Frame length or byte *quantity*\n * **SRC** Source address\n * **DST** Destination address\n * **CMD** Command\n * **PLD** Payload\n - Payload consists of arrays of values\n\n\n\nHistory\n=======\n\n\n1.0.6 (2017-07-10)\n------------------\n\n* Simplified the mara.protocols pacakge.\n\n1.0.2 - 1.0.5 (2017-07-10)\n--------------------------\n\n* Added maranet.__version__\n* Renamed maranet.mara to maranet.protocols\n* CLI entrypoints working\n - maranet client\n - maranet direct_poll\n\n1.0.1 (2017-07-09)\n------------------\n\n* Move code to cookiecutter python pacakge.\n\n1.0 (2017-07-09)\n------------------\n\n* First release on PyPI. The sourcecode is extracted from https://github.com/d3f0/txscada and placed in an independet package.\n\n\n<1.0 (2009-08-06-)\n------------------\n\n* Mara is part of txscada project, involved in a Traffic Light system based on PyQt4 and MySQL.\n* Mara is extended to a 16 bit version to be used on a Power Substation Monitoring Software.\n\n.. image:: docs/img/mara_in_use.jpg\n :width: 50%\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/D3f0/maranet", "keywords": "maranet", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "maranet", "package_url": "https://pypi.org/project/maranet/", "platform": "", "project_url": "https://pypi.org/project/maranet/", "project_urls": { "Homepage": "https://github.com/D3f0/maranet" }, "release_url": "https://pypi.org/project/maranet/1.0.6/", "requires_dist": null, "requires_python": "", "summary": "A Python client library for MARA protocol. Includes server emulator, although MARA servers are tipically microcontrollers.", "version": "1.0.6" }, "last_serial": 3013255, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "ae47c36990501a60282394bfdbe25ef7", "sha256": "67a4403e824739a1682fb26024d7bd227a71c466f28c468d237ff03cb9500930" }, "downloads": -1, "filename": "maranet-1.0.tar.gz", "has_sig": false, "md5_digest": "ae47c36990501a60282394bfdbe25ef7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19002, "upload_time": "2017-07-09T04:35:44", "url": "https://files.pythonhosted.org/packages/26/68/07e7f53b23b550ad7a8247637aa3e5f54706e1be1cd95dd8e91e3690e5d1/maranet-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "34ef450b976fee2ae589a53d155a620a", "sha256": "d1d8e3fc501082f5c3a74b6535d9fc737bc938038247a0275875c1d194710be7" }, "downloads": -1, "filename": "maranet-1.0.1.tar.gz", "has_sig": false, "md5_digest": "34ef450b976fee2ae589a53d155a620a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14379, "upload_time": "2017-07-10T02:53:05", "url": "https://files.pythonhosted.org/packages/34/66/45dc586f0c385a4a7666db4da1a688c7443bb58d49d4f7f4e440b3ef9027/maranet-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "b83271d0a6830e6f6a1021f8279b2366", "sha256": "82d28e8891f0b01fe6d1fc3a830ce7b39caf5b7689d69a1249d7f85b0d5b9667" }, "downloads": -1, "filename": "maranet-1.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b83271d0a6830e6f6a1021f8279b2366", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 5380, "upload_time": "2017-07-10T02:54:27", "url": "https://files.pythonhosted.org/packages/2b/59/6dd6ecdef21a318d809b4624be466b414d8145c5c15128862d8eb7a83130/maranet-1.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2a5c9034572f271350b3ebb2ea3a1235", "sha256": "0147e4cb7faf446b1200356c6aa0404a2f769e3f707513bc8d4e6c1742b20099" }, "downloads": -1, "filename": "maranet-1.0.2.tar.gz", "has_sig": false, "md5_digest": "2a5c9034572f271350b3ebb2ea3a1235", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14376, "upload_time": "2017-07-10T02:54:24", "url": "https://files.pythonhosted.org/packages/6b/c0/14447d603e5b7769122ea790f102bdb7b2c5c587741f8d6eb11b08897c93/maranet-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "f10862a0361ece7415c56962fc00dcfc", "sha256": "f5b6940612e51f8e2a9cea43b52c684b7032dba6874c1594c1d452bbbea1f3f0" }, "downloads": -1, "filename": "maranet-1.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f10862a0361ece7415c56962fc00dcfc", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5379, "upload_time": "2017-07-10T21:55:49", "url": "https://files.pythonhosted.org/packages/0f/99/c0afa99e0d2ef05d97b43e757342cf3e3cfba40dfe2be2b92fddcc2096c5/maranet-1.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8de0ede29384632933cb3a9cc768aaa7", "sha256": "901037142db74f16a6f69976c25aa5ac04a92c2ff6cdb215950c7953fb0aab26" }, "downloads": -1, "filename": "maranet-1.0.3.tar.gz", "has_sig": false, "md5_digest": "8de0ede29384632933cb3a9cc768aaa7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14898, "upload_time": "2017-07-10T21:55:45", "url": "https://files.pythonhosted.org/packages/ed/11/6712d44c1ae1bb96414662b7834f892d88a96830a3aeb25e05dcb2fc509a/maranet-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "af1c2c4843a2b1bb948dcdab3d248045", "sha256": "fadf472888136d964d96493f2028b37fc88ba8dee4f1a05e2bb22f602653ec54" }, "downloads": -1, "filename": "maranet-1.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "af1c2c4843a2b1bb948dcdab3d248045", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5380, "upload_time": "2017-07-10T22:04:22", "url": "https://files.pythonhosted.org/packages/7a/91/6e57e7802dc6a61ed3b25ddc13091b4d77815da9d5d79b307528b07975db/maranet-1.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d2d45c792b9a28dc7c237584d112007c", "sha256": "aeadc8e7f3858c6f19fe55d2cd82ac47e3904cbbbe2794fab1dfb0d097179883" }, "downloads": -1, "filename": "maranet-1.0.4.tar.gz", "has_sig": false, "md5_digest": "d2d45c792b9a28dc7c237584d112007c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14901, "upload_time": "2017-07-10T22:04:18", "url": "https://files.pythonhosted.org/packages/7e/58/a1eed05c4db5a1be7cf09092c051e1cc383fd590806caa252d2224a5d81b/maranet-1.0.4.tar.gz" } ], "1.0.4a0": [ { "comment_text": "", "digests": { "md5": "4f7dc898c7553f2a82844f148fc75979", "sha256": "9123b8e7efaf1f182a96df77633c9e816065425e59608c7972f3cdc1252bb52b" }, "downloads": -1, "filename": "maranet-1.0.4a0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4f7dc898c7553f2a82844f148fc75979", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5409, "upload_time": "2017-07-10T22:07:11", "url": "https://files.pythonhosted.org/packages/ff/b5/484990233aee8c3e41c6557a255ca53c6c7128b9dc231bc667d355ee964a/maranet-1.0.4a0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f36001c097737c219cc86adfc4a6bc96", "sha256": "3fa9108a031bdd2a15918a59ed3fa83b493563464862b2c7b12f44d49b7e3672" }, "downloads": -1, "filename": "maranet-1.0.4a0.tar.gz", "has_sig": false, "md5_digest": "f36001c097737c219cc86adfc4a6bc96", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14892, "upload_time": "2017-07-10T22:07:08", "url": "https://files.pythonhosted.org/packages/99/12/d3d8f3690b4d919368a942ecb9516143f727567a830652f1d9a816f8dc21/maranet-1.0.4a0.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "cdaacc6b620770410891509a78d644f9", "sha256": "fa9d9e7cc1d347763b4633ab487910ec4b37279d5b1e999dfb7085c51d3f975c" }, "downloads": -1, "filename": "maranet-1.0.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cdaacc6b620770410891509a78d644f9", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5376, "upload_time": "2017-07-10T22:08:03", "url": "https://files.pythonhosted.org/packages/7e/b2/1fd7d547c24cb44b1b99ced74eb16b2df0e39beb719c1b01ce4ab6a50a6d/maranet-1.0.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "be19313fe02d0f2457feb43142e5f53d", "sha256": "fc5c7431643c55c10972de5d60a89830c4e775cf387409a8eff9a5c4b2595f23" }, "downloads": -1, "filename": "maranet-1.0.5.tar.gz", "has_sig": false, "md5_digest": "be19313fe02d0f2457feb43142e5f53d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14885, "upload_time": "2017-07-10T22:07:58", "url": "https://files.pythonhosted.org/packages/96/a3/849799bb56efbbd45048e3c10ec11b61583b2dfe851254d8e4bb755d1cc5/maranet-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "0bf044bf2eb19db711ee4f15dd06e809", "sha256": "569951abed2164ce670cd349c860418b4156420a46cd09f21f1342a921be0fa8" }, "downloads": -1, "filename": "maranet-1.0.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0bf044bf2eb19db711ee4f15dd06e809", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5838, "upload_time": "2017-07-10T22:25:35", "url": "https://files.pythonhosted.org/packages/ec/55/4514c05d7878c2f50eb7f22b9284903682171d445298e052df9fb64e6858/maranet-1.0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "953dca072c14cc25cdcceb3919b27485", "sha256": "ba051b61c58a76fa2e5d259176ea2b1a6e86cb0e4bf3993be310e7c8da17cc1b" }, "downloads": -1, "filename": "maranet-1.0.6.tar.gz", "has_sig": false, "md5_digest": "953dca072c14cc25cdcceb3919b27485", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 278360, "upload_time": "2017-07-10T22:25:29", "url": "https://files.pythonhosted.org/packages/ff/cc/18e7c603bd37f41c8c97b08dc5c88343c8d083ce91a67f609b19d9ed288c/maranet-1.0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0bf044bf2eb19db711ee4f15dd06e809", "sha256": "569951abed2164ce670cd349c860418b4156420a46cd09f21f1342a921be0fa8" }, "downloads": -1, "filename": "maranet-1.0.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0bf044bf2eb19db711ee4f15dd06e809", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5838, "upload_time": "2017-07-10T22:25:35", "url": "https://files.pythonhosted.org/packages/ec/55/4514c05d7878c2f50eb7f22b9284903682171d445298e052df9fb64e6858/maranet-1.0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "953dca072c14cc25cdcceb3919b27485", "sha256": "ba051b61c58a76fa2e5d259176ea2b1a6e86cb0e4bf3993be310e7c8da17cc1b" }, "downloads": -1, "filename": "maranet-1.0.6.tar.gz", "has_sig": false, "md5_digest": "953dca072c14cc25cdcceb3919b27485", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 278360, "upload_time": "2017-07-10T22:25:29", "url": "https://files.pythonhosted.org/packages/ff/cc/18e7c603bd37f41c8c97b08dc5c88343c8d083ce91a67f609b19d9ed288c/maranet-1.0.6.tar.gz" } ] }