No Description

Fabian Peter Hammerle 72317b5221 pipeline env: downgrade isort to restore python3.5 support 3 years ago
.github 2bc397185f setup ci pipeline 3 years ago
cc1101 ea787234b9 fix __exit__ return type hint 3 years ago
examples ffdea3cbd0 transmit: expect payload as bytes instead of List[int] to avoid "bytes" > 0xff 3 years ago
tests 2bc397185f setup ci pipeline 3 years ago
.gitignore 2bc397185f setup ci pipeline 3 years ago
.pylintrc 2bc397185f setup ci pipeline 3 years ago
CHANGELOG.md 44fa830349 changelog: fix version tag 3 years ago
COPYING 994a9a5ede added GPLv3+ 3 years ago
Pipfile 72317b5221 pipeline env: downgrade isort to restore python3.5 support 3 years ago
Pipfile.lock 72317b5221 pipeline env: downgrade isort to restore python3.5 support 3 years ago
README.md 500f2d6d68 release v0.1.0 3 years ago
mypy.ini 991cc935f0 mypy: ignore missing imports 3 years ago
setup.py 994a9a5ede added GPLv3+ 3 years ago

README.md

python-cc1101

Last Release Compatible Python Versions

Python Library 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

Directly connect the following pins:

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

No resistors required. GDO0 & GDO2 are currently unused.

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

Usage

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 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.

CC1101's docs: https://www.ti.com/lit/ds/symlink/cc1101.pdf