embedded_aim_motor/
error.rs1use defmt::Format;
2
3pub type Result<T> = core::result::Result<T, Error>;
4
5#[derive(thiserror::Error, Debug, Format, Clone, PartialEq, Eq)]
6pub enum Error {
7 #[error("Transport error")]
8 Transport,
9
10 #[error("Communication timeout")]
11 Timeout,
12
13 #[error("MODBUS protocol error")]
14 Modbus,
15
16 #[error("Response type was not the one expected")]
17 UnexpectedResponseType,
18
19 #[error("Expected {0} bytes, but got {1}")]
20 UnexpectedResponseLength(usize, usize),
21
22 #[error("Response contains data that was not expected")]
23 UnexpectedResponseData,
24}