#[derive(Debug, thiserror::Error)]
pub enum NeuroSkyError {
#[error("Not supported: {0}")]
NotSupported(String),
#[error("Serial port error: {0}")]
SerialPort(String),
#[error("No device found")]
NoDeviceFound,
#[error("Not connected")]
NotConnected,
#[error("Checksum mismatch")]
ChecksumMismatch,
#[error("Timeout")]
Timeout,
#[error("Invalid packet: {0}")]
InvalidPacket(String),
}
impl From<serialport::Error> for NeuroSkyError {
fn from(e: serialport::Error) -> Self {
NeuroSkyError::SerialPort(e.to_string())
}
}