sx1262

Crates.iosx1262
lib.rssx1262
version
sourcesrc
created_at2024-12-09 07:10:14.015652
updated_at2024-12-13 01:16:59.16617
descriptionA embedded-hal driver for the Semtech SX1261/2 sub-GHz radio transceiver
homepage
repositoryhttps://github.com/BroderickCarlin/SX1261
max_upload_size
id1477053
Cargo.toml error:TOML parse error at line 18, column 1 | 18 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
Broderick Carlin (BroderickCarlin)

documentation

README

SX1262 Radio Driver

A type-safe embedded-hal driver for the Semtech SX1261/2 sub-GHz radio transceivers. This crate provides a robust interface for controlling these highly integrated, long range, low power radio transceivers designed for ISM band applications.

Features

  • Frequency Range: 150-960 MHz
  • Modulation Support:
    • LoRa: SF5-12, BW 7.8-500kHz
    • (G)FSK: BR 0.6-300kbps
  • Output Power:
    • SX1261: -17 to +15 dBm
    • SX1262: -9 to +22 dBm
  • High Sensitivity: Down to -148 dBm
  • Power Management: Integrated voltage regulation (DC-DC or LDO)
  • Flexible I/O: Programmable DIO pins for interrupts and control
  • no_std Compatible: Suitable for embedded systems
  • Type-safe Interface: Built on regiface for reliable register access

Installation

Add this to your Cargo.toml:

[dependencies]
sx1262 = "0.1.0"

Usage

The driver is organized into modules for registers and commands:

use sx1262::{commands, registers};

// Configure radio in STDBY_RC mode
// Set packet type (LoRa/FSK)
// Configure RF frequency and modulation
// Set up packet format
// Configure DIO pins
// Enter RX/TX mode

Example Configuration

use sx1262::commands::*;
use embedded_hal::spi::SpiDevice;

fn configure_radio<SPI>(spi: &mut SPI) -> Result<(), SPI::Error> 
where 
    SPI: SpiDevice,
{
    // Basic setup would go here
    // This is a placeholder for actual implementation
    Ok(())
}

Architecture

  • registers: Hardware register definitions

    • rf: Frequency, power, etc.
    • packet: Packet handling
    • dio: Digital I/O configuration
    • system: System configuration
  • commands: Control interface

    • rf: RF/modulation configuration
    • dio: Interrupt control
    • operational: Mode control
    • status: Monitoring and statistics

License

Licensed under either of:

at your option.

Commit count: 14

cargo fmt