A Rusty interface for the RN2903 LoRa module's serial protocol
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
Leonora Tindall aa6d70b3a2
Add example for packet sending support
vor 3 Wochen
docu Add documentation PDFs vor 8 Monaten
examples Add example for packet sending support vor 3 Wochen
src add packet sending support vor 4 Monaten
.gitignore Basic SerialPort wrapper vor 8 Monaten
CHANGELOG.md This is 0.2 🎉 vor 8 Monaten
CONTRIBUTING.md Formalize release process vor 8 Monaten
Cargo.lock add packet sending support vor 4 Monaten
Cargo.toml add packet sending support vor 4 Monaten
LICENSE.html Add GNU GPL v3 license, and package metadata vor 8 Monaten
README.md Add LoRa and FSK packet reception vor 8 Monaten

README.md

RN2903

A Rusty interface for the RN2903 LoRa module's serial protocol

The RN2903 is a LoRa and FSK transciever for the 915MHz ISM band, commonly used in USB devices like the LoStik.

This crate provides a safe, idiomatic interface using cross-platform native serial functionality via serialport. This supports, for instance, a LoStik connected to a USB TTY or virtual COM port, or a RN2903 connected via a TTL serial interface.

This crate is available under the GNU General Public License, version 3.0 only, and does not directly depend on unstable crates.

Example

For instance, here is a simple program which dumps all LoRa packets received.

use rn2903::{Rn2903, ModulationMode};

fn main() {
    let mut txvr = Rn2903::new_at("/dev/ttyUSB0")
        .expect("Could not open device. Error");
    txvr.mac_pause().unwrap();
    txvr.radio_set_modulation_mode(ModulationMode::LoRa).unwrap();
    loop {
        if let Some(packet) = txvr.radio_rx(65535).unwrap() {
            println!("{:?}", packet);
        }
    }
}

Module Documentation

This repository reproduces the relevant documents for the RN2903 module at command_reference-40001811B.pdf and datasheet-DS5000239H.pdf.