pyrf24


Namepyrf24 JSON
Version 0.2.5 PyPI version JSON
download
home_page
SummaryA python package for the wrapping nRF24 related C++ libraries.
upload_time2023-12-05 05:22:05
maintainer
docs_urlNone
author
requires_python>=3.7
licenseGPLv2
keywords nrf24l01 nrf24l01+ raspberry pi driver radio transceiver
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: https://img.shields.io/piwheels/v/pyrf24?color=informational
    :target: https://www.piwheels.org/project/pyrf24/
    :alt: piwheels
.. image:: https://img.shields.io/readthedocs/pyrf24?label=ReadTheDocs&logo=readthedocs&logoColor=white
    :target: https://pyrf24.readthedocs.io/en/latest/?badge=latest
    :alt: Documentation Status
.. image:: https://static.pepy.tech/personalized-badge/pyrf24?period=total&units=none&left_color=grey&right_color=blue&left_text=PyPI%20Downloads
    :target: https://pepy.tech/project/pyrf24
    :alt: PyPI Downloads
.. image:: https://github.com/nRF24/pyRF24/actions/workflows/build.yml/badge.svg
    :target: https://github.com/nRF24/pyRF24/actions/workflows/build.yml
    :alt: Build CI

Introduction
============

This is the official home of the python wrappers for the RF24 stack. It is meant for Linux-based
SoC boards like the Raspberry Pi. Documentation is hosted at http://pyrf24.rtfd.io/.

Pinout
~~~~~~

.. image:: https://lastminuteengineers.com/wp-content/uploads/2018/07/Pinout-nRF24L01-Wireless-Transceiver-Module.png
    :target: https://lastminuteengineers.com/nrf24l01-arduino-wireless-communication/#nrf24l01-transceiver-module-pinout

The nRF24L01's CE and IRQ pins can be connected to other GPIO pins on the SoC. The MISO, MOSI, SCK
are limited to the corresponding counterparts on the SoC's SPI bus. The CSN pin is limited to the
chosen SPI bus's "Chip Select" options (also labeled as "CE" pins on many Raspberry Pi pinout
diagrams). The following table shows the default pins used in all the
`examples <https://pyrf24.readthedocs.io/en/latest/examples.html>`_ for this package.

.. csv-table::
    :header: nRF24L01, Raspberry Pi

    GND, GND
    VCC, 3V
    CE, GPIO22
    CSN, "GPIO8 (CE0)"
    SCK, "GPIO11 (SCK)"
    MOSI, "GPIO10 (MOSI)"
    MISO, "GPIO9 (MISO)"
    IRQ, GPIO12

The IRQ pin is not typically connected, and it is only used in the interrupt_configure example.

.. warning:: If connecting a nRF24L01+PA+LNA module to the Raspberry Pi, you MUST use a external 3V
    power supply because the Raspberry Pi (all models) do not provide enough power for the
    nRF24L01+PA+LNA modules.

.. important:: It is highly recommended that the nRF24L01's VCC and GND pins have a parallel
    capacitor to stabilize the power supply. Usually 100 microfarad is enough, but the capacitance
    ultimately depends on the nature of your power supply's stability.

.. note::
    Notice that RPi.GPIO (for python) is used to manage the GPIO pins on the Raspberry Pi
    (exclusively during the
    `interrupt_configure.py <https://pyrf24.readthedocs.io/en/latest/examples.html#interrupt-configure>`_
    example).

    RPi.GPIO is not required for normal usage (when not using the radio's IRQ pin).

    .. code-block:: bash

        sudo apt install python3-rpi.gpio

Installing from PyPI
~~~~~~~~~~~~~~~~~~~~

Simply use:

.. code-block:: python

    python -m pip install pyrf24

We have distributed binary wheels to pypi.org for easy installation and automated dependency.
These wheels specifically target any Linux platform on ``aarch64`` architecture.
If you're using Raspberry Pi OS (32 bit), then the above command will fetch ``armv7l`` binary
wheels from the piwheels index (which is already configured for use in the Raspberry Pi OS).

.. note::
    If you're installing from a Linux machine that is not using an architecture ``aarch64``
    or ``armv7l``, then pip may try to build the package from source code.
    In this case, you'll likely need to install some extra build dependencies:

    .. code-block:: bash

        sudo apt install python3-dev cmake

Installing from Github
~~~~~~~~~~~~~~~~~~~~~~

Installing from source will require CMake and CPython headers:

.. code-block:: bash

    sudo apt install python3-dev cmake

To build this python package locally, you need to have cloned this library's repository with its submodules.

.. code-block:: bash

    git clone --recurse-submodules https://github.com/nRF24/pyRF24.git
    cd pyRF24
    python -m pip install . -v

.. hint::
    For consecutive build attempts, it is recommended to delete any previous build artifacts
    before attempting to build again.

    .. code-block:: bash

        rm -r build/ dist/

.. note::
    The ``-v`` is optional. Here, we use it to show that pip isn't frozen during the
    build process.

    Installing the package can take a long time, and you might think that pip is frozen
    on the step labeled "Building wheel for pyrf24 (pyproject.toml)". Just wait for about
    5 minutes (maybe longer on older/slower variants of Raspberry Pi).

Building a wheel
-----------------

Building a somewhat portable binary distribution for python packages involves building a
.whl file known as a wheel. This wheel can be used to install the pyrf24 package on systems using the
same version of CPython, CPU architecture, and C standard lib.

1. Because building wheels is not done in an isolated build environment, it is advised that
   some build-time dependencies be installed manually to ensure up-to-date stable releases are used.
   Execute the following from the root directory of this repo:

   .. code-block:: bash

       python -m pip install -r requirements.txt

   .. note::
       This step only needs to be done once.

2. Using the same directory that you cloned the pyrf24 library into:

   .. code-block:: bash

       python -m pip wheel -w dist .


   .. important::
       It is recommended to purge any previous build artifacts before re-building the package.

       .. code-block:: bash

           rm -r build/ dist/

3. To install a built wheel, simply pass the wheel's path and file name to ``pip install``:

   .. code-block:: bash

       python -m pip install dist/pyrf24-MAJOR.MINOR.PATCH-cp3X-cp3X-linux_ARCH.whl

   Where the following would be replaced accordingly:

   - ``MAJOR.MINOR.PATCH`` is the current version of the pyrf24 package.

     - If not building a tagged commit, then the version will describe the commit relative to
       the number of commits since the latest tag. For example, ``0.1.1.post1.dev3`` is
       the third commit (``dev3``) since the first "post release" (``post1``) after the
       tagged version ``0.1.1``. This adhere's to `PEP440 <https://peps.python.org/pep-0440>`_.
   - ``cp3X`` is the version of python used to build the wheel (ie ``cp39`` for CPython 3.9)
     The second occurrence of ``cp3X`` describes the CPython ABI compatibility.
   - ``ARCH`` is the architecture type of the CPU. This corresponds to the compiler used.
     On Raspberry Pi OS (32 bit), this will be ``armv7l``.

Using a specific RF24 driver
----------------------------

By default, this package is built using the RF24 driver SPIDEV. If you want to build the
package using a different RF24 driver (like ``RPi``, ``MRAA``, ``wiringPi``, etc), then
it is necessary to use an environment variable containing additional arguments for CMake:

.. code-block:: bash

    export CMAKE_ARGS="-DRF24_DRIVER=RPi"

.. hint::
    You can also use this environment variable to enable debug output from different
    layers of the RF24 stack. For a list of supported options, look at the script in
    `this repository's cmake/using_flags.cmake <https://github.com/nRF24/pyRF24/blob/main/cmake/using_flags.cmake>`_.

    The following value will turn on debug output for the RF24Mesh and RF24Network
    classes (respectively).

    .. code-block:: bash

        export CMAKE_ARGS="-DMESH_DEBUG=ON -DSERIAL_DEBUG=ON"

Then just build and install the package from source as usual.

.. code-block:: bash

    python -m pip install . -v

Differences in API
~~~~~~~~~~~~~~~~~~

This package intentionally adheres to `PEP8 <https://pep8.org/>`_ standards as much as possible.
This means that class members' names use snake casing  (eg. ``get_dynamic_payload_size()``)
instead of using the C++ conventional camel casing (eg. ``getDynamicPayloadSize()``). However,
the older python wrappers provided with each C++ library (RF24, RF24Network, & RF24Mesh) had used
camel casing. So, the API provided by this package exposes both snake cased and camel cased
versions of the API. The camel cased API is not documented to avoid duplicate and
complicated documentation.

.. code-block:: py

    radio.print_details()  # documented
    # can also be invoked as
    radio.printDetails()  # not documented

Some of the C++ functions that do not accept arguments are wrapped as a class property. But, the C++
style functions are still exposed. For example:

.. code-block:: py

    radio.listen = False
    # is equivalent to
    radio.stopListening()  # not documented

    radio.listen = True
    # is equivalent to
    radio.startListening()  # not documented

Migrating to pyrf24
-------------------

If you have a project that uses code from the older individually installed wrappers,
then you can use this package as a drop-in replacement. You only need to change the
import statements in your project's source. Everything from the old individual wrappers
is exposed through the ``pyrf24`` package.

.. list-table::
    :header-rows: 1

    * - Using the old individual wrappers
      - Using the pyrf24 package
    * - .. code-block:: python

            from RF24 import RF24, RF24_PA_LOW
      - .. code-block:: python

            from pyrf24 import RF24, RF24_PA_LOW
    * - .. code-block:: python

            from RF24 import RF24
            from RF24Network import RF24Network, RF24NetworkHeader
      - .. code-block:: python

            from pyrf24 import RF24, RF24Network, RF24NetworkHeader
    * - .. code-block:: python

            from RF24 import RF24
            from RF24Network import RF24Network
            from RF24Mesh import RF24Mesh
      - .. code-block:: python

            from pyrf24 import RF24, RF24Network, RF24Mesh

Python Type Hints
-----------------

This package is designed to only function on Linux devices. But, it is possible to install this
package on non-Linux devices to get the stub files which help auto-completion and type checking
in various development environments.

Documentation
~~~~~~~~~~~~~

Each release has corresponding documentation hosted at http://pyrf24.rtfd.io/.

Before submitting contributions, you should make sure that any documentation changes build
successfully. This can be done locally but **on Linux only**. The documentation of API requires
this package (& all its latest changes) be installed.

This package's documentation is built with the python package Sphinx and the sphinx-immaterial theme.
It also uses the dot tool provided by the graphviz software to generate graphs.

1. Install Graphviz

   .. code-block:: shell

       sudo apt-get install graphviz

2. Installing Sphinx necessities

   .. note::
       If you installed sphinx using ``apt``, then it is likely out-of-date and will override any virtual
       python environments installation of Sphinx. Simply uninstall sphinx (using ``apt``) will remedy
       this problem.

   .. code-block:: bash

       python -m pip install -r docs/requirements.txt

   .. important::
       If pip outputs a warning about your ``path/to/Python/Python3x/Scripts`` folder not
       added to your OS environment variable ``PATH``, then you will likely get an error message like
       ``sphinx-build command not found`` when building the documentation. For more information on
       installing sphinx, see the
       `official Sphinx install instructions
       <https://www.sphinx-doc.org/en/master/usage/installation.html>`_.

       .. warning::
           This documentation's theme requires Sphinx v4.0+. So, it is not recommended to install
           sphinx from ``apt`` on Linux because the version distributed with the OS's PPA repository
           may not be the most recent version of Sphinx.

3. Building the Documentation

   To build the documentation locally, the pyrf24 package needs to be installed first. Then run:

   .. code-block:: bash

       cd docs
       sphinx-build -E -W . _build

   The ``docs/_build`` folder should now contain the html files that would be hosted on deployment.
   Direct your internet browser to the html files in this folder to make sure your changes have been
   rendered correctly.

   .. note::
       The flags ``-E`` and ``-W`` will ensure the docs fail to build on any error or warning
       (just like it does when deploying the docs online).

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "pyrf24",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "nrf24l01,nRF24L01+,raspberry,pi,driver,radio,transceiver",
    "author": "",
    "author_email": "Brendan Doherty <2bndy5@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/77/18/78664d5283cdb7b63daa28e323c334c7d891a99fa7b7044b44f99dfc4d26/pyrf24-0.2.5.tar.gz",
    "platform": null,
    "description": ".. image:: https://img.shields.io/piwheels/v/pyrf24?color=informational\n    :target: https://www.piwheels.org/project/pyrf24/\n    :alt: piwheels\n.. image:: https://img.shields.io/readthedocs/pyrf24?label=ReadTheDocs&logo=readthedocs&logoColor=white\n    :target: https://pyrf24.readthedocs.io/en/latest/?badge=latest\n    :alt: Documentation Status\n.. image:: https://static.pepy.tech/personalized-badge/pyrf24?period=total&units=none&left_color=grey&right_color=blue&left_text=PyPI%20Downloads\n    :target: https://pepy.tech/project/pyrf24\n    :alt: PyPI Downloads\n.. image:: https://github.com/nRF24/pyRF24/actions/workflows/build.yml/badge.svg\n    :target: https://github.com/nRF24/pyRF24/actions/workflows/build.yml\n    :alt: Build CI\n\nIntroduction\n============\n\nThis is the official home of the python wrappers for the RF24 stack. It is meant for Linux-based\nSoC boards like the Raspberry Pi. Documentation is hosted at http://pyrf24.rtfd.io/.\n\nPinout\n~~~~~~\n\n.. image:: https://lastminuteengineers.com/wp-content/uploads/2018/07/Pinout-nRF24L01-Wireless-Transceiver-Module.png\n    :target: https://lastminuteengineers.com/nrf24l01-arduino-wireless-communication/#nrf24l01-transceiver-module-pinout\n\nThe nRF24L01's CE and IRQ pins can be connected to other GPIO pins on the SoC. The MISO, MOSI, SCK\nare limited to the corresponding counterparts on the SoC's SPI bus. The CSN pin is limited to the\nchosen SPI bus's \"Chip Select\" options (also labeled as \"CE\" pins on many Raspberry Pi pinout\ndiagrams). The following table shows the default pins used in all the\n`examples <https://pyrf24.readthedocs.io/en/latest/examples.html>`_ for this package.\n\n.. csv-table::\n    :header: nRF24L01, Raspberry Pi\n\n    GND, GND\n    VCC, 3V\n    CE, GPIO22\n    CSN, \"GPIO8 (CE0)\"\n    SCK, \"GPIO11 (SCK)\"\n    MOSI, \"GPIO10 (MOSI)\"\n    MISO, \"GPIO9 (MISO)\"\n    IRQ, GPIO12\n\nThe IRQ pin is not typically connected, and it is only used in the interrupt_configure example.\n\n.. warning:: If connecting a nRF24L01+PA+LNA module to the Raspberry Pi, you MUST use a external 3V\n    power supply because the Raspberry Pi (all models) do not provide enough power for the\n    nRF24L01+PA+LNA modules.\n\n.. important:: It is highly recommended that the nRF24L01's VCC and GND pins have a parallel\n    capacitor to stabilize the power supply. Usually 100 microfarad is enough, but the capacitance\n    ultimately depends on the nature of your power supply's stability.\n\n.. note::\n    Notice that RPi.GPIO (for python) is used to manage the GPIO pins on the Raspberry Pi\n    (exclusively during the\n    `interrupt_configure.py <https://pyrf24.readthedocs.io/en/latest/examples.html#interrupt-configure>`_\n    example).\n\n    RPi.GPIO is not required for normal usage (when not using the radio's IRQ pin).\n\n    .. code-block:: bash\n\n        sudo apt install python3-rpi.gpio\n\nInstalling from PyPI\n~~~~~~~~~~~~~~~~~~~~\n\nSimply use:\n\n.. code-block:: python\n\n    python -m pip install pyrf24\n\nWe have distributed binary wheels to pypi.org for easy installation and automated dependency.\nThese wheels specifically target any Linux platform on ``aarch64`` architecture.\nIf you're using Raspberry Pi OS (32 bit), then the above command will fetch ``armv7l`` binary\nwheels from the piwheels index (which is already configured for use in the Raspberry Pi OS).\n\n.. note::\n    If you're installing from a Linux machine that is not using an architecture ``aarch64``\n    or ``armv7l``, then pip may try to build the package from source code.\n    In this case, you'll likely need to install some extra build dependencies:\n\n    .. code-block:: bash\n\n        sudo apt install python3-dev cmake\n\nInstalling from Github\n~~~~~~~~~~~~~~~~~~~~~~\n\nInstalling from source will require CMake and CPython headers:\n\n.. code-block:: bash\n\n    sudo apt install python3-dev cmake\n\nTo build this python package locally, you need to have cloned this library's repository with its submodules.\n\n.. code-block:: bash\n\n    git clone --recurse-submodules https://github.com/nRF24/pyRF24.git\n    cd pyRF24\n    python -m pip install . -v\n\n.. hint::\n    For consecutive build attempts, it is recommended to delete any previous build artifacts\n    before attempting to build again.\n\n    .. code-block:: bash\n\n        rm -r build/ dist/\n\n.. note::\n    The ``-v`` is optional. Here, we use it to show that pip isn't frozen during the\n    build process.\n\n    Installing the package can take a long time, and you might think that pip is frozen\n    on the step labeled \"Building wheel for pyrf24 (pyproject.toml)\". Just wait for about\n    5 minutes (maybe longer on older/slower variants of Raspberry Pi).\n\nBuilding a wheel\n-----------------\n\nBuilding a somewhat portable binary distribution for python packages involves building a\n.whl file known as a wheel. This wheel can be used to install the pyrf24 package on systems using the\nsame version of CPython, CPU architecture, and C standard lib.\n\n1. Because building wheels is not done in an isolated build environment, it is advised that\n   some build-time dependencies be installed manually to ensure up-to-date stable releases are used.\n   Execute the following from the root directory of this repo:\n\n   .. code-block:: bash\n\n       python -m pip install -r requirements.txt\n\n   .. note::\n       This step only needs to be done once.\n\n2. Using the same directory that you cloned the pyrf24 library into:\n\n   .. code-block:: bash\n\n       python -m pip wheel -w dist .\n\n\n   .. important::\n       It is recommended to purge any previous build artifacts before re-building the package.\n\n       .. code-block:: bash\n\n           rm -r build/ dist/\n\n3. To install a built wheel, simply pass the wheel's path and file name to ``pip install``:\n\n   .. code-block:: bash\n\n       python -m pip install dist/pyrf24-MAJOR.MINOR.PATCH-cp3X-cp3X-linux_ARCH.whl\n\n   Where the following would be replaced accordingly:\n\n   - ``MAJOR.MINOR.PATCH`` is the current version of the pyrf24 package.\n\n     - If not building a tagged commit, then the version will describe the commit relative to\n       the number of commits since the latest tag. For example, ``0.1.1.post1.dev3`` is\n       the third commit (``dev3``) since the first \"post release\" (``post1``) after the\n       tagged version ``0.1.1``. This adhere's to `PEP440 <https://peps.python.org/pep-0440>`_.\n   - ``cp3X`` is the version of python used to build the wheel (ie ``cp39`` for CPython 3.9)\n     The second occurrence of ``cp3X`` describes the CPython ABI compatibility.\n   - ``ARCH`` is the architecture type of the CPU. This corresponds to the compiler used.\n     On Raspberry Pi OS (32 bit), this will be ``armv7l``.\n\nUsing a specific RF24 driver\n----------------------------\n\nBy default, this package is built using the RF24 driver SPIDEV. If you want to build the\npackage using a different RF24 driver (like ``RPi``, ``MRAA``, ``wiringPi``, etc), then\nit is necessary to use an environment variable containing additional arguments for CMake:\n\n.. code-block:: bash\n\n    export CMAKE_ARGS=\"-DRF24_DRIVER=RPi\"\n\n.. hint::\n    You can also use this environment variable to enable debug output from different\n    layers of the RF24 stack. For a list of supported options, look at the script in\n    `this repository's cmake/using_flags.cmake <https://github.com/nRF24/pyRF24/blob/main/cmake/using_flags.cmake>`_.\n\n    The following value will turn on debug output for the RF24Mesh and RF24Network\n    classes (respectively).\n\n    .. code-block:: bash\n\n        export CMAKE_ARGS=\"-DMESH_DEBUG=ON -DSERIAL_DEBUG=ON\"\n\nThen just build and install the package from source as usual.\n\n.. code-block:: bash\n\n    python -m pip install . -v\n\nDifferences in API\n~~~~~~~~~~~~~~~~~~\n\nThis package intentionally adheres to `PEP8 <https://pep8.org/>`_ standards as much as possible.\nThis means that class members' names use snake casing  (eg. ``get_dynamic_payload_size()``)\ninstead of using the C++ conventional camel casing (eg. ``getDynamicPayloadSize()``). However,\nthe older python wrappers provided with each C++ library (RF24, RF24Network, & RF24Mesh) had used\ncamel casing. So, the API provided by this package exposes both snake cased and camel cased\nversions of the API. The camel cased API is not documented to avoid duplicate and\ncomplicated documentation.\n\n.. code-block:: py\n\n    radio.print_details()  # documented\n    # can also be invoked as\n    radio.printDetails()  # not documented\n\nSome of the C++ functions that do not accept arguments are wrapped as a class property. But, the C++\nstyle functions are still exposed. For example:\n\n.. code-block:: py\n\n    radio.listen = False\n    # is equivalent to\n    radio.stopListening()  # not documented\n\n    radio.listen = True\n    # is equivalent to\n    radio.startListening()  # not documented\n\nMigrating to pyrf24\n-------------------\n\nIf you have a project that uses code from the older individually installed wrappers,\nthen you can use this package as a drop-in replacement. You only need to change the\nimport statements in your project's source. Everything from the old individual wrappers\nis exposed through the ``pyrf24`` package.\n\n.. list-table::\n    :header-rows: 1\n\n    * - Using the old individual wrappers\n      - Using the pyrf24 package\n    * - .. code-block:: python\n\n            from RF24 import RF24, RF24_PA_LOW\n      - .. code-block:: python\n\n            from pyrf24 import RF24, RF24_PA_LOW\n    * - .. code-block:: python\n\n            from RF24 import RF24\n            from RF24Network import RF24Network, RF24NetworkHeader\n      - .. code-block:: python\n\n            from pyrf24 import RF24, RF24Network, RF24NetworkHeader\n    * - .. code-block:: python\n\n            from RF24 import RF24\n            from RF24Network import RF24Network\n            from RF24Mesh import RF24Mesh\n      - .. code-block:: python\n\n            from pyrf24 import RF24, RF24Network, RF24Mesh\n\nPython Type Hints\n-----------------\n\nThis package is designed to only function on Linux devices. But, it is possible to install this\npackage on non-Linux devices to get the stub files which help auto-completion and type checking\nin various development environments.\n\nDocumentation\n~~~~~~~~~~~~~\n\nEach release has corresponding documentation hosted at http://pyrf24.rtfd.io/.\n\nBefore submitting contributions, you should make sure that any documentation changes build\nsuccessfully. This can be done locally but **on Linux only**. The documentation of API requires\nthis package (& all its latest changes) be installed.\n\nThis package's documentation is built with the python package Sphinx and the sphinx-immaterial theme.\nIt also uses the dot tool provided by the graphviz software to generate graphs.\n\n1. Install Graphviz\n\n   .. code-block:: shell\n\n       sudo apt-get install graphviz\n\n2. Installing Sphinx necessities\n\n   .. note::\n       If you installed sphinx using ``apt``, then it is likely out-of-date and will override any virtual\n       python environments installation of Sphinx. Simply uninstall sphinx (using ``apt``) will remedy\n       this problem.\n\n   .. code-block:: bash\n\n       python -m pip install -r docs/requirements.txt\n\n   .. important::\n       If pip outputs a warning about your ``path/to/Python/Python3x/Scripts`` folder not\n       added to your OS environment variable ``PATH``, then you will likely get an error message like\n       ``sphinx-build command not found`` when building the documentation. For more information on\n       installing sphinx, see the\n       `official Sphinx install instructions\n       <https://www.sphinx-doc.org/en/master/usage/installation.html>`_.\n\n       .. warning::\n           This documentation's theme requires Sphinx v4.0+. So, it is not recommended to install\n           sphinx from ``apt`` on Linux because the version distributed with the OS's PPA repository\n           may not be the most recent version of Sphinx.\n\n3. Building the Documentation\n\n   To build the documentation locally, the pyrf24 package needs to be installed first. Then run:\n\n   .. code-block:: bash\n\n       cd docs\n       sphinx-build -E -W . _build\n\n   The ``docs/_build`` folder should now contain the html files that would be hosted on deployment.\n   Direct your internet browser to the html files in this folder to make sure your changes have been\n   rendered correctly.\n\n   .. note::\n       The flags ``-E`` and ``-W`` will ensure the docs fail to build on any error or warning\n       (just like it does when deploying the docs online).\n",
    "bugtrack_url": null,
    "license": "GPLv2",
    "summary": "A python package for the wrapping nRF24 related C++ libraries.",
    "version": "0.2.5",
    "project_urls": {
        "Documentation": "http://nRF24.github.io/pyRF24",
        "Source": "https://github.com/nRF24/pyRF24",
        "Tracker": "https://github.com/nRF24/pyRF24/issues"
    },
    "split_keywords": [
        "nrf24l01",
        "nrf24l01+",
        "raspberry",
        "pi",
        "driver",
        "radio",
        "transceiver"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4a81b1f1bbec2eefe328bc034b5681a905483ce752ad91521f8fee2442a6eb5a",
                "md5": "b7e72dae2e310e87becc6a5ae780ca07",
                "sha256": "b825fbaaa79f4d133ea8c1ab1b11d7431db5cb53853fdfb71ff6bc1e275f628b"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "b7e72dae2e310e87becc6a5ae780ca07",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 552518,
            "upload_time": "2023-12-05T05:21:40",
            "upload_time_iso_8601": "2023-12-05T05:21:40.800475Z",
            "url": "https://files.pythonhosted.org/packages/4a/81/b1f1bbec2eefe328bc034b5681a905483ce752ad91521f8fee2442a6eb5a/pyrf24-0.2.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f98e8359acb6fa0866b7d56b62b2a73357de4bdc9a2c070e816c44a7f13293e5",
                "md5": "f2bc075c0d452c7aa24b229a52e46fda",
                "sha256": "5db0e86ba32655cd54e06405d80a08ed04fe3f0f15963b1e45008c2bd266402d"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "f2bc075c0d452c7aa24b229a52e46fda",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 612477,
            "upload_time": "2023-12-05T05:21:43",
            "upload_time_iso_8601": "2023-12-05T05:21:43.270028Z",
            "url": "https://files.pythonhosted.org/packages/f9/8e/8359acb6fa0866b7d56b62b2a73357de4bdc9a2c070e816c44a7f13293e5/pyrf24-0.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6f86aff2472e5c646724983921b9cc1ded387892669f70eac9f6723109af2594",
                "md5": "6d0a4f5bf3a1bf292632a06a649209f2",
                "sha256": "768837e47b540040ed44ccfae91d8c2e5f3f2894896a7d069a01ebe6bb02d837"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "6d0a4f5bf3a1bf292632a06a649209f2",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 552597,
            "upload_time": "2023-12-05T05:21:45",
            "upload_time_iso_8601": "2023-12-05T05:21:45.416034Z",
            "url": "https://files.pythonhosted.org/packages/6f/86/aff2472e5c646724983921b9cc1ded387892669f70eac9f6723109af2594/pyrf24-0.2.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ef14a65b67cbdccf36fecb7e4748d2948392a92c58c8ee200fe33320ec4143d6",
                "md5": "6708307fa8746249066fc045702bbf1d",
                "sha256": "72b2039db7ef5f10e7a677117bc166b90df2215b78ad3551decd0acb03d69223"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "6708307fa8746249066fc045702bbf1d",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 612784,
            "upload_time": "2023-12-05T05:21:47",
            "upload_time_iso_8601": "2023-12-05T05:21:47.690258Z",
            "url": "https://files.pythonhosted.org/packages/ef/14/a65b67cbdccf36fecb7e4748d2948392a92c58c8ee200fe33320ec4143d6/pyrf24-0.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d8b87b895b1cbbf32fffacabf7b33b900be602e05f226318bf9d1831ee0d00a6",
                "md5": "6c74484bf855046baaead8a0d54f34b5",
                "sha256": "d4097cfddf19d9586654c756e59ae372cd675e10892d2741b72c3a740bb18612"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "6c74484bf855046baaead8a0d54f34b5",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 547289,
            "upload_time": "2023-12-05T05:21:49",
            "upload_time_iso_8601": "2023-12-05T05:21:49.151557Z",
            "url": "https://files.pythonhosted.org/packages/d8/b8/7b895b1cbbf32fffacabf7b33b900be602e05f226318bf9d1831ee0d00a6/pyrf24-0.2.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e18c8dbe85f94936fdad122b59094835f1269a61eded3b69f99f1ab0daf4da0f",
                "md5": "ee63b12274ada09a1df598783638626c",
                "sha256": "70c5d3d0be2ed6a8c2f903421a008b605497d9858769e4ae856d562a081b2dc0"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ee63b12274ada09a1df598783638626c",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 609796,
            "upload_time": "2023-12-05T05:21:51",
            "upload_time_iso_8601": "2023-12-05T05:21:51.345133Z",
            "url": "https://files.pythonhosted.org/packages/e1/8c/8dbe85f94936fdad122b59094835f1269a61eded3b69f99f1ab0daf4da0f/pyrf24-0.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "82b4d5f8eb70fd717b96550217bb505d72fc2166968df55278683993948e7abb",
                "md5": "f7064cefa49817996e890ea55798f0cf",
                "sha256": "c77afee1ea4436cca4aff616f79cbb1d63335a77305600115e80ae650be4c005"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "f7064cefa49817996e890ea55798f0cf",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": ">=3.7",
            "size": 578858,
            "upload_time": "2023-12-05T05:21:53",
            "upload_time_iso_8601": "2023-12-05T05:21:53.878305Z",
            "url": "https://files.pythonhosted.org/packages/82/b4/d5f8eb70fd717b96550217bb505d72fc2166968df55278683993948e7abb/pyrf24-0.2.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "838a5b8d0ede58ff1aaf43995e02cbd1dcc6f02b60242f9e2e530db624fd250c",
                "md5": "2d4c35e49c24ba1cb581bf699c3b40b2",
                "sha256": "96e848c486243261c04f4cc7de1aaab84df74754ed71fd3f409dfa702e1b8eb3"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2d4c35e49c24ba1cb581bf699c3b40b2",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": ">=3.7",
            "size": 641353,
            "upload_time": "2023-12-05T05:21:56",
            "upload_time_iso_8601": "2023-12-05T05:21:56.087357Z",
            "url": "https://files.pythonhosted.org/packages/83/8a/5b8d0ede58ff1aaf43995e02cbd1dcc6f02b60242f9e2e530db624fd250c/pyrf24-0.2.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f26b96fb3bac6a21dbf272b89a0c78f2efb7ed0b80ad7c68ac28c5667f44152c",
                "md5": "b03d8ff3ca17d6b5718ce6581e86a671",
                "sha256": "8b235bf61497460573da34de15e9b7c1c8ca55a1335c37cdbd557c161584732f"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "b03d8ff3ca17d6b5718ce6581e86a671",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 550855,
            "upload_time": "2023-12-05T05:21:58",
            "upload_time_iso_8601": "2023-12-05T05:21:58.211929Z",
            "url": "https://files.pythonhosted.org/packages/f2/6b/96fb3bac6a21dbf272b89a0c78f2efb7ed0b80ad7c68ac28c5667f44152c/pyrf24-0.2.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "52b4a802652c632d4f557c726f9872aa6788d6efd09d5318169bd8cfd3817877",
                "md5": "593dc43f11f2cbfb6408f542920b6270",
                "sha256": "10d06f1d322cd13349a8860282a0bf5f396c1e908514572cf4dadc4fe5629620"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "593dc43f11f2cbfb6408f542920b6270",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 612142,
            "upload_time": "2023-12-05T05:22:00",
            "upload_time_iso_8601": "2023-12-05T05:22:00.502366Z",
            "url": "https://files.pythonhosted.org/packages/52/b4/a802652c632d4f557c726f9872aa6788d6efd09d5318169bd8cfd3817877/pyrf24-0.2.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "953845936465d4765aaadb8284586c35e2b2ecfea48aefe0aa62313b163650a4",
                "md5": "15c88669189d004407c734166b93ed92",
                "sha256": "9c6780315b4c7a01930a9f531b66ef0f101415c59933c5c147ca973b3ba51077"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "15c88669189d004407c734166b93ed92",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 552630,
            "upload_time": "2023-12-05T05:22:02",
            "upload_time_iso_8601": "2023-12-05T05:22:02.028762Z",
            "url": "https://files.pythonhosted.org/packages/95/38/45936465d4765aaadb8284586c35e2b2ecfea48aefe0aa62313b163650a4/pyrf24-0.2.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b9f13231dbafc3ef65657d7a92a38ae36348bf073d0a7c9a943011907d341101",
                "md5": "970684d12603e5c0283ec3fcaf15a6ad",
                "sha256": "72ad1f812b955fd28c3bfadb9f0616998adf3e179186633f16727fcfcb80d769"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "970684d12603e5c0283ec3fcaf15a6ad",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 613991,
            "upload_time": "2023-12-05T05:22:04",
            "upload_time_iso_8601": "2023-12-05T05:22:04.355038Z",
            "url": "https://files.pythonhosted.org/packages/b9/f1/3231dbafc3ef65657d7a92a38ae36348bf073d0a7c9a943011907d341101/pyrf24-0.2.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "771878664d5283cdb7b63daa28e323c334c7d891a99fa7b7044b44f99dfc4d26",
                "md5": "fc4fe39d597a751a19f26bda378e3e26",
                "sha256": "2b9cca9b214c40bfa1746378200523c81d32ed978ee43675dd1e51419a09f604"
            },
            "downloads": -1,
            "filename": "pyrf24-0.2.5.tar.gz",
            "has_sig": false,
            "md5_digest": "fc4fe39d597a751a19f26bda378e3e26",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 428364,
            "upload_time": "2023-12-05T05:22:05",
            "upload_time_iso_8601": "2023-12-05T05:22:05.793715Z",
            "url": "https://files.pythonhosted.org/packages/77/18/78664d5283cdb7b63daa28e323c334c7d891a99fa7b7044b44f99dfc4d26/pyrf24-0.2.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-05 05:22:05",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "nRF24",
    "github_project": "pyRF24",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "pyrf24"
}
        
Elapsed time: 0.14800s