#driver #positioning #transceiver #ultra #band #module #dw3000

无 std dw3000-ng

Decawave DW3000 超宽带模块的现代化驱动程序

14 个版本 (5 个重大变更)

新增 0.8.3 2024年8月25日
0.8.1 2024年5月26日
0.5.1 2024年3月13日
0.4.0 2023年12月2日
0.3.1 2023年11月17日

#101硬件支持

Download history 192/week @ 2024-04-29 8/week @ 2024-05-06 311/week @ 2024-05-20 54/week @ 2024-05-27 11/week @ 2024-06-03 1/week @ 2024-06-10 47/week @ 2024-07-29 129/week @ 2024-08-12

每月176 次下载

BSD-3-Clause

195KB
2.5K SLoC

Rust DW3000 驱动 crates.io Documentation

简介

Decawave DW3000 UWB 收发器的现代化驱动程序,使用 Rust 编程语言编写。我们使用了为 DW1000 模块开发的 crate dw1000,并更改了寄存器访问和 spi 函数,添加了快速命令并实现了某些高级功能。

状态

RTT 方法(单边和双边)都工作良好,并能提供良好的定位值。PDoA 和 TDoA 可以可选启用(请参阅文档,因为它们需要某些配置!)。

与旧的 dw3000 crate 相比,我们修复了 GPIO 和 LED,还去掉了旧的未维护的 ieee802154 crate,并用 smoltcp 替换。

我们主要在 ESP32 平台上使用 embassy 异步框架进行测试。

使用方法

通过在 Cargo.toml 中添加以下内容将此 crate 包含到您的 Cargo 项目中:

[dependencies]
dw3000-ng = "0.8"

文档

请参阅 API 参考

请参阅 DW3000 用户手册

引用

如果您在学术工作中使用此代码,请按以下方式引用:

@inproceedings{Jiang24hotmobile,
    author = {Jiang, Fan and Dhekne, Ashutosh},
    title = {Demo: uFiμ: An open-source integrated UWB-WiFi-IMU platform for localization research and beyond},
    year = {2024},
    isbn = {9798400704970},
    publisher = {Association for Computing Machinery},
    address = {New York, NY, USA},
    url = {https://doi.org/10.1145/3638550.3643628},
    doi = {10.1145/3638550.3643628},
    booktitle = {Proceedings of the 25th International Workshop on Mobile Computing Systems and Applications},
    pages = {156},
    location = {San Diego, CA, USA},
    series = {HOTMOBILE '24}
}

变更日志

0.8.3

  • 修复了 SPI 设备未准备好或未连接时的无限循环问题 init()

0.8.2

  • 添加参数 recv_time 以允许延迟接收,由 @trembel 实现
  • 修复了 pll_cc 寄存器,由 @JohannesProgrammiert 实现

0.8.1

  • 修复了在启用STS时调用config函数时的STS寄存器设置

0.8.0

  • num-traits特性重命名为rssi,以更好地表明其功能
  • 增加了PDoA和TDoA支持

0.7.0

  • 添加字段rx_quality到结构体Message中,由(@elrafoon)存储第一条路径信号功率
  • 修复了由(@elrafoon)修复的STS配置值

0.6.1

  • 修复了读取RX_RAWST寄存器的问题

0.6.0

  • 添加了载波恢复积分器寄存器

0.5.1

  • 修复了DTUNE寄存器的值

0.5.0

  • 迁移到embedded-hal 1.0版本
  • 移除了对SPI CS引脚的显式操作

许可证

BSD-3-Clause

依赖项

约6.5MB
约131K SLoC