#lora #serial-port #moteino #rfm95 #sx1276

lora_serial

将 Moteino M0 转换为 LoRa 调制解调器

6 个版本

0.3.2 2019年10月13日
0.3.1 2019年10月13日
0.2.0 2019年10月13日
0.1.1 2019年10月8日

#1830 in 硬件支持

MIT 许可证

23KB
535

LoRa Serial

通过串行端口连接调制解调器,发送和接收 LoRa 数据包的库。我想能够用我的 Raspberry Pi 发送和接收 LoRa 通信。这个库允许我通过 USB 连接 Moteino M0 并用于此目的。

我为一些客户构建了这个库用于生产,所以它应该相当可靠。尽管如此,我时间紧迫,因此优雅的 API 设计不是最高优先级。欢迎提交改进该部分的拉取请求!

使用示例

use lora_serial::{LoRaSerial};

fn main() {
    let lora = LoRaSerial.init_all().first().expect("Failed to connect to any LoRa modem.");

    // send a packet to  the device at address 2
    lora.tx(2, "Hello, World");

    // print anything we receive
    loop {
        if let Some(packet) = lora.rx().expect("Error trying to receive a packet") {
            println!("{:?}", packet);
        }
    }
}

测试

为此库编写测试需要一对程序化的 Moteino M0,程序化符合规范的固件。您可以在 modem_firmware 目录中找到我用作平台io项目的固件。测试不能并行运行,否则会争夺串行端口。

cargo test -- --test-threads=1

依赖项

~4–5.5MB
~111K SLoC