1 个不稳定版本
使用旧的 Rust 2015
0.1.0 | 2018年8月31日 |
---|
#108 in #controller
80KB
1.5K SLoC
Rusty Z-Wave
rzw
包提供通过 USB Z-Wave 模块控制 Z-Wave 网络的本地功能。它完全用 Rust 编写,以确保安全和性能。
兼容性
rzw
包依赖于 serial create,与 Windows 以及实现 termios API 的任何 Unix 操作系统兼容。以下平台已被确认兼容
- Linux (x86_64, armv6l)
- OS X (x86_64)
- FreeBSD (amd64)
- OpenBSD (amd64)
- Windows (x86_64) 编译
rzw
包需要 Rust 1.9 或更高版本。
使用方法
在 Cargo.toml
中将 rzw
添加为依赖项
[dependencies]
rzw = { git = "https://github.com/Roba1993/rzw" }
使用 rzw::Controller
作为与 Z-Wave 网络通信的起点。
extern crate rzw;
fn main() {
// Access the zwave network
let zwave = rzw::open("/dev/tty.usbmodem1411").unwrap();
// get all node ids
let nodes = zwave.nodes();
// loop over the nodes
for node in nodes {
// print the available command classes for each node
println!("{:?}" zwave.node(node).map(|n| n.get_commands()));
// set the basic value on all nodes
// for binary switch this means, turn them on
zwave.node(node_id).map(|n| n.basic_set(0xFF)).unwrap();
}
}
资源
- zwave 信息编译
- zwave 官方规范
- https://clemovernet.wordpress.com/2015/08/26/z-wave-definition-des-trames-partie-1/
感谢
- 感谢 serial-rs 团队 - 使此包成为可能。
许可证
版权所有 © 2016 Robert Schütte
在 MIT 许可证 下分发。
依赖项
~200–320KB