From 83f54d595320c9cafbb99acc678e5eb88a106c93 Mon Sep 17 00:00:00 2001 From: ju6ge Date: Wed, 25 Mar 2026 14:35:19 +0100 Subject: [PATCH] Add specific ChecksumError variant to BmsProtocolError --- lib-bms-protocol/src/lib.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib-bms-protocol/src/lib.rs b/lib-bms-protocol/src/lib.rs index 006b1dd..8e13811 100644 --- a/lib-bms-protocol/src/lib.rs +++ b/lib-bms-protocol/src/lib.rs @@ -29,6 +29,8 @@ pub trait BmsWriteable { pub enum BmsProtocolError { #[error("i2c communication failed")] I2cCommunicationError, + #[error("checksum error in received data")] + ChecksumError, } impl From for BmsProtocolError @@ -41,8 +43,11 @@ where } impl From for BmsProtocolError { - fn from(_error: crate::types::U26Error) -> Self { - Self::I2cCommunicationError + fn from(error: crate::types::U26Error) -> Self { + match error { + crate::types::U26Error::ChecksumError => Self::ChecksumError, + _ => Self::I2cCommunicationError, + } } }