python-artnet


Namepython-artnet JSON
Version 1.0.0 PyPI version JSON
download
home_page
SummaryEasy-to-use and simple python receiver for Art-Net (that also implements device polling).
upload_time2023-12-17 12:15:32
maintainersciencegey
docs_urlNone
authorsciencegey
requires_python>=3.8
licenseMIT License Copyright (c) 2023 Sam Knowles Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords art-net artnet dmx lighting lighting control
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # python_artnet
Easy-to-use and simple python receiver for Art-Net (that also implements device polling).

## Installaton
All you need to do is clone the repository and start using it!
``` bash
$ git clone https://github.com/sciencegey/python_artnet.git
$ cd python_artnet
$ python3 exampleReceiver.py
```

## Usage
All you need to do to start receiving data is import the module, start the listener, then check for received data whenever you want!
```python
import python_artnet as Artnet

# By default it will listen on 0.0.0.0 (all interfaces)
artNet = Artnet.Artnet()

# Fetch the latest packet we received.
artNetPacket = artNet.readPacket()
# And extract the DMX data from that packet.
dmxPacket = artNetPacket.data
# You'll also want to check that there *is* data in the packet;
# if there isn't then it returns None
# See the example for more information

# Close the listener nicely :)
artNet.close()
```

There are also plenty of arguments you can pass when you start the listner:

- **BINDIP** - Which IP address you want to *listen* on (usually a broadcast address). This is the only one you really ever need to change. *(Defaults to "" AKA 0.0.0.0 AKA all interfaces)*
- **PORT** - Which UDP port you want to listen on. Shouldn't need to ever 
change this. *(Defaults to 6454)*

<details>
<summary>The following are used for purely management purposes:</summary>

- **SYSIP** - What the IP address of your system is. Purely cosmetic and only used to identify the system to ArtNet controllers. *(Defaults to "10.10.10.1")*
- **MAC** - What the MAC address of your system is. Same as above. *(Defaults to ["AA","BB","CC","DD","EE","FF"])*
- **SWVER** - What version of Art-Net we're using. In this case, V1.4 *(Defaults to "14")*
- **SHORTNAME** and **LONGAME** - Used to see what devices are what on a controller. *(Shortname is truncated to 17 bytes long, longname is truncated to 63)*
- **OEMCODE** - What the Art-Net OEM code your device has. Only needs to be set if you have one. *(In hex)*
- **ESTACODE** - What the ESTA Manafacturer Code your device has. Only needs to be set if you have one. *(In hex)*
- **PORTTYPE** - Used to tell the controller what type of physical ports your device has. *(Defaults to [0x80,0x00,0x00,0x00])* *See the Art-Net documentation for more information*
- **REFRESH** - What the refresh rate (in Hz) of your device. *(Defaults to 44 (the max for DMX))*
- **DEBUG** - Used to turn on debug output. *(Defaults to False)*
</details>

Further information on how it all works can be found in the [Art-Net documentation](https://www.artisticlicence.com/WebSiteMaster/User%20Guides/art-net.pdf).
## License
This project is licensed under an MIT License (see the [LICENSE](LICENSE) file).

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "python-artnet",
    "maintainer": "sciencegey",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "Art-Net,ArtNet,DMX,Lighting,Lighting Control",
    "author": "sciencegey",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/bb/7c/6b69a96038afe8428c2328d4fbafe13af135acd0c296f05dd867f10efaa6/python_artnet-1.0.0.tar.gz",
    "platform": null,
    "description": "# python_artnet\nEasy-to-use and simple python receiver for Art-Net (that also implements device polling).\n\n## Installaton\nAll you need to do is clone the repository and start using it!\n``` bash\n$ git clone https://github.com/sciencegey/python_artnet.git\n$ cd python_artnet\n$ python3 exampleReceiver.py\n```\n\n## Usage\nAll you need to do to start receiving data is import the module, start the listener, then check for received data whenever you want!\n```python\nimport python_artnet as Artnet\n\n# By default it will listen on 0.0.0.0 (all interfaces)\nartNet = Artnet.Artnet()\n\n# Fetch the latest packet we received.\nartNetPacket = artNet.readPacket()\n# And extract the DMX data from that packet.\ndmxPacket = artNetPacket.data\n# You'll also want to check that there *is* data in the packet;\n# if there isn't then it returns None\n# See the example for more information\n\n# Close the listener nicely :)\nartNet.close()\n```\n\nThere are also plenty of arguments you can pass when you start the listner:\n\n- **BINDIP** - Which IP address you want to *listen* on (usually a broadcast address). This is the only one you really ever need to change. *(Defaults to \"\" AKA 0.0.0.0 AKA all interfaces)*\n- **PORT** - Which UDP port you want to listen on. Shouldn't need to ever \nchange this. *(Defaults to 6454)*\n\n<details>\n<summary>The following are used for purely management purposes:</summary>\n\n- **SYSIP** - What the IP address of your system is. Purely cosmetic and only used to identify the system to ArtNet controllers. *(Defaults to \"10.10.10.1\")*\n- **MAC** - What the MAC address of your system is. Same as above. *(Defaults to [\"AA\",\"BB\",\"CC\",\"DD\",\"EE\",\"FF\"])*\n- **SWVER** - What version of Art-Net we're using. In this case, V1.4 *(Defaults to \"14\")*\n- **SHORTNAME** and **LONGAME** - Used to see what devices are what on a controller. *(Shortname is truncated to 17 bytes long, longname is truncated to 63)*\n- **OEMCODE** - What the Art-Net OEM code your device has. Only needs to be set if you have one. *(In hex)*\n- **ESTACODE** - What the ESTA Manafacturer Code your device has. Only needs to be set if you have one. *(In hex)*\n- **PORTTYPE** - Used to tell the controller what type of physical ports your device has. *(Defaults to [0x80,0x00,0x00,0x00])* *See the Art-Net documentation for more information*\n- **REFRESH** - What the refresh rate (in Hz) of your device. *(Defaults to 44 (the max for DMX))*\n- **DEBUG** - Used to turn on debug output. *(Defaults to False)*\n</details>\n\nFurther information on how it all works can be found in the [Art-Net documentation](https://www.artisticlicence.com/WebSiteMaster/User%20Guides/art-net.pdf).\n## License\nThis project is licensed under an MIT License (see the [LICENSE](LICENSE) file).\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2023 Sam Knowles  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "Easy-to-use and simple python receiver for Art-Net (that also implements device polling).",
    "version": "1.0.0",
    "project_urls": {
        "Homepage": "https://github.com/sciencegey/python_artnet",
        "Issues": "https://github.com/sciencegey/python_artnet/issues",
        "Repository": "https://github.com/sciencegey/python_artnet.git"
    },
    "split_keywords": [
        "art-net",
        "artnet",
        "dmx",
        "lighting",
        "lighting control"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "293018a6030f81156880a952a9b2695475639718fd99ebf04da20f59176c70b8",
                "md5": "405b079712c531fd3f0a9ee3d16a3521",
                "sha256": "1be4fc91b79c366eba41099abeb2d02dc4aa24752eed568b6cf5ffdca5150edd"
            },
            "downloads": -1,
            "filename": "python_artnet-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "405b079712c531fd3f0a9ee3d16a3521",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 8444,
            "upload_time": "2023-12-17T12:15:31",
            "upload_time_iso_8601": "2023-12-17T12:15:31.173637Z",
            "url": "https://files.pythonhosted.org/packages/29/30/18a6030f81156880a952a9b2695475639718fd99ebf04da20f59176c70b8/python_artnet-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bb7c6b69a96038afe8428c2328d4fbafe13af135acd0c296f05dd867f10efaa6",
                "md5": "721488d48f198c9b7cd7f0b105ba53ee",
                "sha256": "08a5fc0873cbbde60febb37854f3effda4cc6d6fb2051eb6a89c3ece0bed372e"
            },
            "downloads": -1,
            "filename": "python_artnet-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "721488d48f198c9b7cd7f0b105ba53ee",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 11123,
            "upload_time": "2023-12-17T12:15:32",
            "upload_time_iso_8601": "2023-12-17T12:15:32.835509Z",
            "url": "https://files.pythonhosted.org/packages/bb/7c/6b69a96038afe8428c2328d4fbafe13af135acd0c296f05dd867f10efaa6/python_artnet-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-17 12:15:32",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sciencegey",
    "github_project": "python_artnet",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "python-artnet"
}
        
Elapsed time: 0.15352s