2 stable releases

22.4.1 Apr 21, 2022
22.1.1 Jan 5, 2022
21.3.11 Apr 9, 2021
21.3.8 Mar 24, 2021

#934 in Hardware support

MIT/Apache

21KB
279 lines

e_drone_sp

Rust library for BYROBOT drones.

  • Tested

    • Windows 10 (x64)
    • Ubuntu linux 20.04 (x64)
    • macOS Big Sur
    • Raspberry Pi OS (Raspberry PI Compute Module 4)
    • Raspberry Pi OS Lite (Raspberry PI Zero)
  • Support



Dependencies

Linux

If you see an error when you build your project,

error: failed to run custom build command for `libudev-sys v0.1.4`

You need to install 'libudev-dev'.

sudo apt-get install libudev-dev


Example

Cargo.toml

[dependencies]
e_drone_sp="21.*"
e_drone="21.*"


main.rs

extern crate e_drone_sp;

use e_drone::system::{*};
use e_drone::protocol::{*};
use e_drone_sp::{*};


fn main() {
    let mut drone: Drone = Drone::new("COM75");             // Windows 10
    //let mut drone: Drone = Drone::new("/dev/ttyACM0");      // linux, Raspberry PI USB
    //let mut drone: Drone = Drone::new("/dev/serial0");      // Raspberry PI UART

    if drone.is_connected() == false {
        return;
    }

    drone.request(DeviceType::Controller, DataType::Information);

    loop {
        handler(&drone.check());

        if drone.get_time_passed_from_last_transfer() > 1200 {
            break;
        }
    }
}


fn handler(data: &Data) {
    match data {
        Data::Information(information) => {
            println!("{:?}", information);
        },
        _ => {},
    }
}


Examples in library


Source code

https://github.com/byrobot-rust/e_drone_sp/tree/master/examples



Show in github1s.com




Clone Library

git clone https://github.com/byrobot-rust/e_drone_sp/


Run

cargo run --example flight
cargo run --example button
cargo run --example buzzer
cargo run --example display
cargo run --example joystick
cargo run --example light
cargo run --example request
cargo run --example vibrator

Dependencies

~3.5–4.5MB
~89K SLoC