Skip to main content

Python Library & Command Line Tool to Transmit RF Signals via C1101 Transceivers

Project description

python-cc1101

Code style: black CI Pipeline Status Last Release Compatible Python Versions DOI

Python Library & Command Line Tool to Transmit RF Signals via CC1101 Transceivers

Setup

$ pip3 install --user --upgrade cc1101

On Raspbian / Raspberry Pi OS, dependencies can optionally be installed via:

$ sudo apt-get install --no-install-recommends python3-spidev

Wiring Raspberry Pi

Connect the following pins directly:

C1101 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)
GND Ground

If 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)

No resistors required. GDO0 & GDO2 are currently unused.

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

Usage

Library

See examples.

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

$ 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cc1101-2.5.0a0.tar.gz (47.0 kB view details)

Uploaded Source

Built Distribution

cc1101-2.5.0a0-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

Details for the file cc1101-2.5.0a0.tar.gz.

File metadata

  • Download URL: cc1101-2.5.0a0.tar.gz
  • Upload date:
  • Size: 47.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for cc1101-2.5.0a0.tar.gz
Algorithm Hash digest
SHA256 1f9524ff0964a1549b66efdb48abd547ea02da16b5520772027006ef20e632a6
MD5 39475de8d2d63e0bdbdcba1f7d3ee17b
BLAKE2b-256 9f3cc44c2ddbef338becb3b78b3b7e4f0ad0f650a1c818795ef476e13562d1d7

See more details on using hashes here.

File details

Details for the file cc1101-2.5.0a0-py3-none-any.whl.

File metadata

  • Download URL: cc1101-2.5.0a0-py3-none-any.whl
  • Upload date:
  • Size: 27.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for cc1101-2.5.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 eacfc2d1a2681da3d8ef2b9005321db00f545ae83775dca3f1fe1e87f4a32961
MD5 3606cf013fe60ff4be5c34a8972fe039
BLAKE2b-256 8cd77afae69524db6a1f4d461a2a51355be5d3c4f42133fa6e6988ef804f4181

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page