Add specific ChecksumError variant to BmsProtocolError

This commit is contained in:
2026-03-26 22:26:55 +01:00
parent 0437d30d04
commit 83f54d5953
+7 -2
View File
@@ -29,6 +29,8 @@ pub trait BmsWriteable {
pub enum BmsProtocolError { pub enum BmsProtocolError {
#[error("i2c communication failed")] #[error("i2c communication failed")]
I2cCommunicationError, I2cCommunicationError,
#[error("checksum error in received data")]
ChecksumError,
} }
impl<E> From<E> for BmsProtocolError impl<E> From<E> for BmsProtocolError
@@ -41,8 +43,11 @@ where
} }
impl From<crate::types::U26Error> for BmsProtocolError { impl From<crate::types::U26Error> for BmsProtocolError {
fn from(_error: crate::types::U26Error) -> Self { fn from(error: crate::types::U26Error) -> Self {
Self::I2cCommunicationError match error {
crate::types::U26Error::ChecksumError => Self::ChecksumError,
_ => Self::I2cCommunicationError,
}
} }
} }