respeaker 0.1.0

USB control library for Seeed ReSpeaker Mic Array v2.0 (LEDs + XVF-3000 DSP tuning)
Documentation
use thiserror::Error;

pub type Result<T> = std::result::Result<T, Error>;

#[derive(Debug, Error)]
pub enum Error {
    #[error("ReSpeaker device not found (expected {vid:04x}:{pid:04x})")]
    NotFound { vid: u16, pid: u16 },

    #[error(
        "permission denied opening ReSpeaker USB device; try sudo or install a udev rule for 2886:0018"
    )]
    Access,

    #[error("unknown DSP parameter `{0}`")]
    UnknownParameter(String),

    #[error("parameter `{0}` is read-only")]
    ReadOnly(String),

    #[error("invalid parameter value: {0}")]
    InvalidValue(String),

    #[error("USB error: {0}")]
    Usb(#[from] rusb::Error),

    #[error("{0}")]
    Message(String),
}