From 00824a900c6babf9727708357527b2a2807aa673 Mon Sep 17 00:00:00 2001 From: ROMemories <152802150+ROMemories@users.noreply.github.com> Date: Wed, 23 Jul 2025 17:08:54 +0200 Subject: feat(embedded-hal)!: rely on v1.0 traits for `I2c` on `BlockingAsync` --- embassy-embedded-hal/src/adapter/blocking_async.rs | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/embassy-embedded-hal/src/adapter/blocking_async.rs b/embassy-embedded-hal/src/adapter/blocking_async.rs index bc965fbdd..3b6e0ec00 100644 --- a/embassy-embedded-hal/src/adapter/blocking_async.rs +++ b/embassy-embedded-hal/src/adapter/blocking_async.rs @@ -1,5 +1,3 @@ -use embedded_hal_02::blocking; - /// Wrapper that implements async traits using blocking implementations. /// /// This allows driver writers to depend on the async traits while still supporting embedded-hal peripheral implementations. @@ -24,7 +22,7 @@ impl BlockingAsync { impl embedded_hal_1::i2c::ErrorType for BlockingAsync where E: embedded_hal_1::i2c::Error + 'static, - T: blocking::i2c::WriteRead + blocking::i2c::Read + blocking::i2c::Write, + T: embedded_hal_1::i2c::I2c, { type Error = E; } @@ -32,7 +30,7 @@ where impl embedded_hal_async::i2c::I2c for BlockingAsync where E: embedded_hal_1::i2c::Error + 'static, - T: blocking::i2c::WriteRead + blocking::i2c::Read + blocking::i2c::Write, + T: embedded_hal_1::i2c::I2c, { async fn read(&mut self, address: u8, read: &mut [u8]) -> Result<(), Self::Error> { self.wrapped.read(address, read) @@ -51,9 +49,7 @@ where address: u8, operations: &mut [embedded_hal_1::i2c::Operation<'_>], ) -> Result<(), Self::Error> { - let _ = address; - let _ = operations; - todo!() + self.wrapped.transaction(address, operations) } } -- cgit