{ "info": { "author": "Andy Peace", "author_email": "andrew.peace@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "License :: OSI Approved :: MIT License" ], "description": "Z-Wave to MQTT bridge\n=====================\n\nThis utility publishes to MQTT topics when sensor reports are published\nfrom multilevel-sensor devices on a Z-Wave network, and set values when\nmessages are received on relevant topics. So far it has been tested with\nthe Aeotec Z-Stick, MultiSensor 6, and SmartSwitch 6 devices.\n\nThe repository also includes a helper that republishes Z-Wave messages\non MQTT to topics that are compatible with JSON-format OpenEnergyMonitor\nmessages.\n\nUsage\n-----\n\nThe bridge is started by running the ``zwave_mqtt_bridge`` executable.\nThis takes a number of options, which are described in the help for the\ntool:\n\n::\n\n usage: zwave_mqtt_bridge [-h] [-U MQTT_USER] [-p MQTT_PASS] [-d DEVICE]\n [-u USER_PATH] [--basetopic BASETOPIC]\n mqtt_host\n\n MQTT interface to Z-Wave sensors.\n\n positional arguments:\n mqtt_host MQTT host\n\n optional arguments:\n -h, --help show this help message and exit\n -U MQTT_USER MQTT username\n -p MQTT_PASS MQTT password\n -d DEVICE, --device DEVICE\n Path to Z-Stick device\n -u USER_PATH Path to write user files (e.g. current Z-Wave\n configursation\n --basetopic BASETOPIC\n Base topic to publish/subscribe to\n\n``DEVICE`` is often ``/dev/ttyACM0`` (and this is the default value.\n``BASETOPIC`` defaults to ``zwave``.\n\nOnce running, the tool publishes updates to\n``/updates/`` as JSON objects, where each key is the\nvalue that was updated, and the value is the new value it was set to.\nFor example, ``{\"Temperature\": 20.5}``.\n\nIt also subscribes to ````. The user can publish\nmessages to subtopics named by node ID (e.g. zwave/refresh/5) with a\nlist of values that they wish to refresh (e.g. ``[\"Power\"]``) (the\nlabels are those used by OpenZWave). This should cause a message to the\ncorresponding ``update`` topic shortly after with the current value.\n\nFinally, it subscribes to ````. The user can publish\nmessages to subtopics named by node ID (e.g. zwave/set/5) with a JSON\nobject identifying values to be updated (e.g. ``{\"Switch\": true}``).\nThese will then be set: typically they will be reflected in the\n``updates`` topic.\n\nZWave to Emon republisher\n-------------------------\n\nhttps://github.com/adpeace/emonhub/tree/emon-pi contains a script\n(``emon_mqtt_logger.py``) that subscribes to messages published by\nemonhub (a tool for capturing measurements published by\nOpenEnergyMonitor devices and posting them to MQTT, amongst others) and\nposts them to EmonCMS (a data storage/graphing site).\n\nThe MQTT bridge here uses a different topic structure to allow for\nbi-directional communication, and the types of updates from Z-Wave\ndevices is much more varied that needs to be posted to EmonCMS, so I\nwrote a utility (``zwave_emon_republisher``) that captures just the\nrelevant messages from the Z-Wave network, reformats, and reposts them\nto be captured by ``emon_mqtt_logger.py``.\n\nThe usage is similar to ``zwave_mqtt_bridge``: simply provide MQTT host\ndetails, and the base topics you are using for Z-Wave messages and emon\nmessages and it takes care of the rest.\n\nInstallation\n============\n\nInstall using ``pip``, e.g. ``pip install zwave-mqtt-bridge``.\n\nTo run at startup you can use the provided example ``systemd`` files,\nwhich needs to be installed in the ``/etc/systemd/system`` directory.\nNote that the provided example assumes that there is a user called\n``zwave`` that will have access to the appropriate serial device for the\nZ-Stick (usually ``/dev/ttyACM0``), and will create working files in\nthat user's home directory. You can create this user using, for example,\nthe ``adduser`` command:\n\n::\n\n sudo adduser --system --no-create-home --ingroup dialout zwave", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/adpeace/zwave-mqtt-bridge.git", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "zwave-mqtt-bridge", "package_url": "https://pypi.org/project/zwave-mqtt-bridge/", "platform": "", "project_url": "https://pypi.org/project/zwave-mqtt-bridge/", "project_urls": { "Homepage": "https://github.com/adpeace/zwave-mqtt-bridge.git" }, "release_url": "https://pypi.org/project/zwave-mqtt-bridge/0.0.3/", "requires_dist": null, "requires_python": "", "summary": "Bridge Z-Wave to MQTT", "version": "0.0.3" }, "last_serial": 4800769, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "4500f733ddc7d8aaab469a4b0aaed855", "sha256": "d34873309800da34203044ebea697c9c6b4c0f236e250f0f5f3b67970388d2de" }, "downloads": -1, "filename": "zwave_mqtt_bridge-0.0.1.tar.gz", "has_sig": false, "md5_digest": "4500f733ddc7d8aaab469a4b0aaed855", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3772, "upload_time": "2017-12-28T22:41:01", "url": "https://files.pythonhosted.org/packages/32/a8/89fc27610170d29d60dd6ddeccb2dd279871bf359cc895d526db5ac79ae9/zwave_mqtt_bridge-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "540f578b296bdcb411bc1dbd78d034db", "sha256": "18ff25117cb5b9fdb85ea2c9214d4b3b659e61b13ec6c5de3678ac4412a428c0" }, "downloads": -1, "filename": "zwave_mqtt_bridge-0.0.2.tar.gz", "has_sig": false, "md5_digest": "540f578b296bdcb411bc1dbd78d034db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5400, "upload_time": "2017-12-31T22:33:02", "url": "https://files.pythonhosted.org/packages/ff/03/4df67bf15f399730894cf53baf72b9c78bd2733ae9af92c6e144d7847b69/zwave_mqtt_bridge-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "73dbaa92c4ba0f53ebeb09ea5f1cdf94", "sha256": "08bc9103351f547da17064142b6bdb076d75070f23bf5002213daf06f5f6304a" }, "downloads": -1, "filename": "zwave_mqtt_bridge-0.0.3.tar.gz", "has_sig": false, "md5_digest": "73dbaa92c4ba0f53ebeb09ea5f1cdf94", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5635, "upload_time": "2019-02-09T23:56:01", "url": "https://files.pythonhosted.org/packages/99/f7/2219bd42f2a51e1255d3e9c1398341ab7673703d0de84e2f31c5739cdc02/zwave_mqtt_bridge-0.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "73dbaa92c4ba0f53ebeb09ea5f1cdf94", "sha256": "08bc9103351f547da17064142b6bdb076d75070f23bf5002213daf06f5f6304a" }, "downloads": -1, "filename": "zwave_mqtt_bridge-0.0.3.tar.gz", "has_sig": false, "md5_digest": "73dbaa92c4ba0f53ebeb09ea5f1cdf94", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5635, "upload_time": "2019-02-09T23:56:01", "url": "https://files.pythonhosted.org/packages/99/f7/2219bd42f2a51e1255d3e9c1398341ab7673703d0de84e2f31c5739cdc02/zwave_mqtt_bridge-0.0.3.tar.gz" } ] }