RYLR is a Python library for RYLR LoRa transceivers to simplifies communication with RYLR modules using Python. It provides an interface to send and receive LoRa messages, configure module parameters (e.g., frequency, spreading factor, and power settings), and manage network communication. The library abstracts the AT command interactions, making it easier to integrate LoRa connectivity into Python projects without dealing with low-level serial communication details.
Support for RYLR896 and RYLR406.
Installation
pip install rylr
Features
- Set and get device configuration (address, network ID, baudrate, etc.)
- Send and receive LoRa messages
- Built-in support for AES password hashing
- Simple AT command interface wrapper
Usage
from rylr import RYLR
# Initialize the module
modem = RYLR(port="/dev/ttyUSB0", addr="101", network="10")
# Set properties
modem.baudrate = 9600
modem.band = "915000000" # 915 MHz
modem.password = "mypassword"
# Send data to address 102
modem.send("Hello", address=102)
# Receive data
print(modem.recv())
# Close the port when done
modem.close()
Constructor
RYLR(port="/dev/ttyUSB0", baudrate=115200, addr="100", network="10", wait_time=0.1, band="", mode="", parameter="", password="", power=15)
Properties
| Property | Getter Method | Setter Method | Description |
|---|---|---|---|
address |
AT+ADDRESS? |
AT+ADDRESS=<addr> |
Device address (0–65535) |
network |
AT+NETWORKID? |
AT+NETWORKID=<id> |
Network ID (0–16) |
baudrate |
AT+IPR? |
AT+IPR=<rate> |
Baudrate (300–115200) |
mode |
AT+MODE? |
AT+MODE=<mode> |
0: Tx/Rx, 1: Sleep |
band |
AT+BAND? |
AT+BAND=<freq> |
Frequency in Hz |
parameter |
AT+PARAMETER? |
AT+PARAMETER=<param> |
LoRa parameters |
password |
AT+CPIN |
AT+CPIN=<AES_MD5> |
AES password (MD5 hashed) |
power |
AT+CRFOP? |
AT+CRFOP=<0–15> |
Transmission power (0–15 dBm) |
|
Methods
-
send(data, address=0): Send data to a specific LoRa address.
-
recv(): Read incoming message (blocking).
-
AT_command(command: str, wait_time: float=0.1): Send a raw AT command to the modem.
-
close(): Closes the serial connection.
Notes
Make sure the correct serial port (/dev/ttyUSB0, COMx, etc.) is specified.
This library assumes you're familiar with AT command configuration for the RYLR896/406 modules.
Metadata
Release files for rylr 1.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rylr-1.0.3.tar.gz | 4.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rylr-1.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.2 kB
Release files / rylr-1.0.3.tar.gz
| Download URL | rylr-1.0.3.tar.gz |
|---|---|
| Size | 4.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e36f31f35e1053fea1903fb10ad1bb0507946900d2a987657dcb705d55fdb300
|
|
BLAKE2b-256 checksum How to use checksums |
eab9d6d0bcb56d6dc1079ec1e96d76109ab69425e7d27051b9e0093385b2b01e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.12
|
Release files / rylr-1.0.3-py3-none-any.whl
| Download URL | rylr-1.0.3-py3-none-any.whl |
|---|---|
| Size | 4.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
62717943c76d053684d74ec5897b335b767b1b92a45af443a0f7a41788414425
|
|
BLAKE2b-256 checksum How to use checksums |
24a83bc03792a02ab40b7b2bd8d0ab2390f47ff543420f7aab06587edb6e8e32
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.12
|