RFM69 Radio interface for the Raspberry Pi (lgpio/rpi-lgpio compatible, supports Pi 1 through Pi 5)
Project description
RFM69 Radio interface for the Raspberry Pi (lgpio compatible)
Fork of jgillula/rpi-rfm69 — adapted to use
rpi-lgpioinstead of the deprecatedRPi.GPIO, with automatic support for old-style revision codes (Pi 1 / early Pi 2).
This package provides a Python wrapper of the LowPowerLabs RFM69 library and is largely based on the work of Eric Trombly who ported the library from C.
What's different from the original?
-
rpi-lgpioreplacesRPi.GPIO— works on Raspberry Pi OS Bookworm, Trixie, and Pi 5 -
Automatic old-style revision workaround — Pi 1 Model B+, early Pi 2, and other boards with 4-digit revision codes work without manual
export RPI_LGPIO_REVISION=... -
Supports Pi 1 through Pi 5 — tested across all generations
Installation
pip install rpi-rfm69-lgpio
Or from a fresh venv (recommended):
python3 -m venv ~/venv/rfm69
source ~/venv/rfm69/bin/activate
pip install rpi-rfm69-lgpio
If you previously had RPi.GPIO installed, remove it first:
pip uninstall RPi.GPIO -y
pip install rpi-rfm69-lgpio
Quick Start
from RFM69 import Radio, FREQ_433MHZ
with Radio(FREQ_433MHZ, node_id=1, network_id=100, isHighPower=True) as radio:
radio.send(2, "Hello!", attempts=3)
packet = radio.get_packet(timeout=5)
if packet:
print(packet)
Wiring & Documentation
For details on how to connect an RFM69 module and the full API, check out the documentation.
Original Project
This is a fork of jgillula/rpi-rfm69. All credit for the original library goes to Jeremy Gillula and contributors.
License
GPL v3# Changelog
0.7.1
-
Replaced RPi.GPIO dependency with rpi-lgpio for Raspberry Pi OS Bookworm/Trixie and Pi 5 compatibility
-
Added automatic old-style revision code workaround for Pi 1 / early Pi 2 boards
-
Forked from jgillula/rpi-rfm69
0.7.0
- RFM69HW and HCW specific functions and power level setting added by @Makodan
0.6.0
-
Added support for ATC mode (thanks @MxMarx)
-
Reduced some hang (thanks @MxMarx)
-
Extended registers retrieved to include High Power PA settings (thanks @tomtastic)
0.5.1
- Added support for radios without reset pins
0.5.0
- Added set_frequency_in_Hz and get_frequency_in_Hz
0.4.0
-
Made the Radio class threadsafe, and added threadsafe methods for accessing packets
-
Added testing for the threadsafe methods
-
Added pylinting and made some cosmetic changes to get a good pylint score
-
Added coverage testing via coveralls.io, and instructions for doing so
0.3.0
-
Added support for sendListenModeBurst
-
Made tests more configurable
-
Removed Python 2 from tests since it's EOL
-
Added instructions on how to build for PyPi
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rpi_rfm69_lgpio-0.7.1.tar.gz.
File metadata
- Download URL: rpi_rfm69_lgpio-0.7.1.tar.gz
- Upload date:
- Size: 40.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
01efab966f59a0b1abbdfd2f8d7c55e8b9240e7548fd690f2cbe3eed6d220b78
|
|
| MD5 |
007e3a78f60b9baa58d9612f6ab4ba38
|
|
| BLAKE2b-256 |
4b2db9396694f0309fcfc39e266edfcce7e25a281a9054a3c72168b480502199
|
File details
Details for the file rpi_rfm69_lgpio-0.7.1-py3-none-any.whl.
File metadata
- Download URL: rpi_rfm69_lgpio-0.7.1-py3-none-any.whl
- Upload date:
- Size: 33.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d6fc9ab362aa1b267f28a54eee316c8763d79fa93f858e6c4eb4ab5696789709
|
|
| MD5 |
b86db7ddd50113d8a4e7dd75dc1625bc
|
|
| BLAKE2b-256 |
7c250cddc2ff8e7065c64ccfd0d008abfec3a1afcbe9bea9f59cf532335fd2c4
|