| Crates.io | sensehat-stick |
| lib.rs | sensehat-stick |
| version | 0.1.0 |
| created_at | 2018-04-23 01:46:43.188215+00 |
| updated_at | 2018-04-23 01:46:43.188215+00 |
| description | A Rust library for the Raspberry Pi Sense HAT Joystick. |
| homepage | https://github.com/saibatizoku/sensehat-stick-rs |
| repository | https://github.com/saibatizoku/sensehat-stick-rs |
| max_upload_size | |
| id | 61879 |
| size | 11,797 |
The joystick integrated on the Raspberry Pi Sense HAT, is well integrated to Linux systems. The Sense HAT hardware provides a driver for evdev, or event device interface in the Linux kernel.
As such, the evdev file-descriptor for the joystick, can be read for events issued by someone pushing the joystick.
This library provides a thread-safe, strong-typed, high-level API for the joystick, treating it as you would any other input device using evdev.
To use this crate with the default features, add this to your Cargo.toml:
[dependencies]
sensehat-stick = "0.1"
or, to manually specify the features::
[dependencies]
sensehat-stick = { version = "0.1", default-features = false, features = ["poll"] }
defaultBy default, the linux-evdev, and poll features are included.
linux-evdevIn default. Makes use of the evdev interface.
pollIn default. Provides efficient-polling capabilities by implementing mio::Evented for JoyStick.
//! Prints out the events received from the joystick, in a
//! blocking fashion.
extern crate sensehat_stick;
use sensehat_stick::JoyStick;
fn main() {
let mut stick = JoyStick::open().unwrap();
loop {
// This call will block the current thread until
// an event is triggered on the joystick.
for ev in &stick.events().unwrap() {
println!("{:?}", ev);
}
}
}
For more, read the indiviual examples.