cc1101


Namecc1101 JSON
Version 3.0.0 PyPI version JSON
download
home_pagehttps://github.com/fphammerle/python-cc1101
SummaryPython Library & Command Line Tool to Transmit RF Signals via C1101 Transceivers
upload_time2023-05-04 07:38:34
maintainer
docs_urlNone
authorFabian Peter Hammerle
requires_python>=3.7
licenseGPLv3+
keywords ism spi automation radio-frequency raspberry-pi transceiver transmission wireless
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # python-cc1101

[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![CI Pipeline Status](https://github.com/fphammerle/python-cc1101/workflows/tests/badge.svg)](https://github.com/fphammerle/python-cc1101/actions)
[![Coverage Status](https://coveralls.io/repos/github/fphammerle/python-cc1101/badge.svg?branch=master)](https://coveralls.io/github/fphammerle/python-cc1101?branch=master)
[![Last Release](https://img.shields.io/pypi/v/cc1101.svg)](https://pypi.org/project/cc1101/#history)
[![Compatible Python Versions](https://img.shields.io/pypi/pyversions/cc1101.svg)](https://pypi.org/project/cc1101/)
[![DOI](https://zenodo.org/badge/292333844.svg)](https://zenodo.org/badge/latestdoi/292333844)

Python Library & Command Line Tool to Transmit RF Signals via [CC1101 Transceivers](https://www.ti.com/product/CC1101)

## Setup

```sh
$ pip3 install --user --upgrade cc1101
```

On Raspbian / Raspberry Pi OS, dependencies can optionally be installed via:
```sh
$ sudo apt-get install --no-install-recommends python3-spidev
```

### Wiring Raspberry Pi

Connect the following pins directly:

|CC1101 |Raspberry Pi        |
|-------|--------------------|
|VDD    | 3.3V (Pin 1 or 17) |
|SI     | MOSI (Pin 19)      |
|SO     | MISO (Pin 21)      |
|CSn    | CE0 (Pin 24)       |
|SCLK   | SCLK (Pin 23)      |
|GDO2\* | Any GPIO pin, commonly GPIO25 (Pin 22) \[[1](https://github.com/SpaceTeddy/CC1101/blob/0d0f011d3b808e36ad57fab596ed5e1db9516856/README.md#hardware-connection),[2](https://allgeek.de/2017/07/31/cc1101-spi-raspberry-adapter-fuer-homegear-homematicmax/),[3](https://securipi.co.uk/cc1101.pdf)\] |
|GDO0\* | Any GPIO pin, GPIO24 (Pin 18) recommended |
|GND    | Ground             |

No resistors required.
Connection of pins marked with \* is optional.
GDO2 stays "high until power and crystal have stabilized" (see `CHIP_RDYn` in docs).
GDO0 is used by `.asynchronous_transmission()` for data input.

If some of these pins are already in use,
select a different SPI bus or chip select:
https://www.raspberrypi.org/documentation/hardware/raspberrypi/spi/README.md
([permalink](https://github.com/raspberrypi/documentation/blob/d41d69f8efa3667b1a8b01a669238b8bd113edc1/hardware/raspberrypi/spi/README.md#hardware))

Raspberry Pi GPIO docs: https://www.raspberrypi.org/documentation/usage/gpio/

## Usage

### Library

See [examples](https://github.com/fphammerle/python-cc1101/blob/master/examples/).

```python
import cc1101

with cc1101.CC1101() as transceiver:
    transceiver.set_base_frequency_hertz(433.92e6)
    print(transceiver)
    transceiver.transmit(b"\x01\xff\x00 message")
```

In case CC1101 is connected to a different SPI bus or chip select line
than `/dev/spidev0.0`,
use `CC1101(spi_bus=?, spi_chip_select=?)`.

### Command Line

```sh
$ printf '\x01\x02\x03' | cc1101-transmit -f 433920000 -r 1000
```

See `cc1101-transmit --help`.

### Troubleshooting

In case a `PermissionError` gets raised,
check the permissions of `/dev/spidev*`.
You'll probably need `sudo usermod -a -G spi $USER`,
followed by a re-login.

Consult CC1101's offical docs for an in-depth explanation of all options:
https://www.ti.com/lit/ds/symlink/cc1101.pdf



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/fphammerle/python-cc1101",
    "name": "cc1101",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "ISM,SPI,automation,radio-frequency,raspberry-pi,transceiver,transmission,wireless",
    "author": "Fabian Peter Hammerle",
    "author_email": "fabian+python-cc1101@hammerle.me",
    "download_url": "https://files.pythonhosted.org/packages/73/be/c566a76d14741acb76861c49141688a4200ffbb7955851c3e0c31b35321d/cc1101-3.0.0.tar.gz",
    "platform": null,
    "description": "# python-cc1101\n\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![CI Pipeline Status](https://github.com/fphammerle/python-cc1101/workflows/tests/badge.svg)](https://github.com/fphammerle/python-cc1101/actions)\n[![Coverage Status](https://coveralls.io/repos/github/fphammerle/python-cc1101/badge.svg?branch=master)](https://coveralls.io/github/fphammerle/python-cc1101?branch=master)\n[![Last Release](https://img.shields.io/pypi/v/cc1101.svg)](https://pypi.org/project/cc1101/#history)\n[![Compatible Python Versions](https://img.shields.io/pypi/pyversions/cc1101.svg)](https://pypi.org/project/cc1101/)\n[![DOI](https://zenodo.org/badge/292333844.svg)](https://zenodo.org/badge/latestdoi/292333844)\n\nPython Library & Command Line Tool to Transmit RF Signals via [CC1101 Transceivers](https://www.ti.com/product/CC1101)\n\n## Setup\n\n```sh\n$ pip3 install --user --upgrade cc1101\n```\n\nOn Raspbian / Raspberry Pi OS, dependencies can optionally be installed via:\n```sh\n$ sudo apt-get install --no-install-recommends python3-spidev\n```\n\n### Wiring Raspberry Pi\n\nConnect the following pins directly:\n\n|CC1101 |Raspberry Pi        |\n|-------|--------------------|\n|VDD    | 3.3V (Pin 1 or 17) |\n|SI     | MOSI (Pin 19)      |\n|SO     | MISO (Pin 21)      |\n|CSn    | CE0 (Pin 24)       |\n|SCLK   | SCLK (Pin 23)      |\n|GDO2\\* | Any GPIO pin, commonly GPIO25 (Pin 22) \\[[1](https://github.com/SpaceTeddy/CC1101/blob/0d0f011d3b808e36ad57fab596ed5e1db9516856/README.md#hardware-connection),[2](https://allgeek.de/2017/07/31/cc1101-spi-raspberry-adapter-fuer-homegear-homematicmax/),[3](https://securipi.co.uk/cc1101.pdf)\\] |\n|GDO0\\* | Any GPIO pin, GPIO24 (Pin 18) recommended |\n|GND    | Ground             |\n\nNo resistors required.\nConnection of pins marked with \\* is optional.\nGDO2 stays \"high until power and crystal have stabilized\" (see `CHIP_RDYn` in docs).\nGDO0 is used by `.asynchronous_transmission()` for data input.\n\nIf some of these pins are already in use,\nselect a different SPI bus or chip select:\nhttps://www.raspberrypi.org/documentation/hardware/raspberrypi/spi/README.md\n([permalink](https://github.com/raspberrypi/documentation/blob/d41d69f8efa3667b1a8b01a669238b8bd113edc1/hardware/raspberrypi/spi/README.md#hardware))\n\nRaspberry Pi GPIO docs: https://www.raspberrypi.org/documentation/usage/gpio/\n\n## Usage\n\n### Library\n\nSee [examples](https://github.com/fphammerle/python-cc1101/blob/master/examples/).\n\n```python\nimport cc1101\n\nwith cc1101.CC1101() as transceiver:\n    transceiver.set_base_frequency_hertz(433.92e6)\n    print(transceiver)\n    transceiver.transmit(b\"\\x01\\xff\\x00 message\")\n```\n\nIn case CC1101 is connected to a different SPI bus or chip select line\nthan `/dev/spidev0.0`,\nuse `CC1101(spi_bus=?, spi_chip_select=?)`.\n\n### Command Line\n\n```sh\n$ printf '\\x01\\x02\\x03' | cc1101-transmit -f 433920000 -r 1000\n```\n\nSee `cc1101-transmit --help`.\n\n### Troubleshooting\n\nIn case a `PermissionError` gets raised,\ncheck the permissions of `/dev/spidev*`.\nYou'll probably need `sudo usermod -a -G spi $USER`,\nfollowed by a re-login.\n\nConsult CC1101's offical docs for an in-depth explanation of all options:\nhttps://www.ti.com/lit/ds/symlink/cc1101.pdf\n\n\n",
    "bugtrack_url": null,
    "license": "GPLv3+",
    "summary": "Python Library & Command Line Tool to Transmit RF Signals via C1101 Transceivers",
    "version": "3.0.0",
    "project_urls": {
        "Changelog": "https://github.com/fphammerle/python-cc1101/blob/master/CHANGELOG.md",
        "Homepage": "https://github.com/fphammerle/python-cc1101"
    },
    "split_keywords": [
        "ism",
        "spi",
        "automation",
        "radio-frequency",
        "raspberry-pi",
        "transceiver",
        "transmission",
        "wireless"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f20e7b45b408eda6ce4711d14b88085896c1fb01a91c2ac82f789460adf374c8",
                "md5": "b96706d7242b86c7791c4c36adf5f620",
                "sha256": "1ccc76f4fc8d5cbac6ecc47b21bb1b184a6a32ab79d8f94ee99e81d9a10a8a39"
            },
            "downloads": -1,
            "filename": "cc1101-3.0.0-py3-none-any.whl",
            "has_sig": true,
            "md5_digest": "b96706d7242b86c7791c4c36adf5f620",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 32989,
            "upload_time": "2023-05-04T07:38:31",
            "upload_time_iso_8601": "2023-05-04T07:38:31.665813Z",
            "url": "https://files.pythonhosted.org/packages/f2/0e/7b45b408eda6ce4711d14b88085896c1fb01a91c2ac82f789460adf374c8/cc1101-3.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "73bec566a76d14741acb76861c49141688a4200ffbb7955851c3e0c31b35321d",
                "md5": "9c71c5dc675fb30236bd3440999e1ecc",
                "sha256": "75b59a837f6a26258e55be7de554e69deffc871ba19a9cda689cfb8b767a8e02"
            },
            "downloads": -1,
            "filename": "cc1101-3.0.0.tar.gz",
            "has_sig": true,
            "md5_digest": "9c71c5dc675fb30236bd3440999e1ecc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 68155,
            "upload_time": "2023-05-04T07:38:34",
            "upload_time_iso_8601": "2023-05-04T07:38:34.351483Z",
            "url": "https://files.pythonhosted.org/packages/73/be/c566a76d14741acb76861c49141688a4200ffbb7955851c3e0c31b35321d/cc1101-3.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-05-04 07:38:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "fphammerle",
    "github_project": "python-cc1101",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "cc1101"
}
        
Elapsed time: 0.05987s