diff --git a/async/examples/sunsetc.rs b/async/examples/sunsetc.rs
index 698c86b79fa9c9af04ff7656f09d6905342c16c7..94e218e7468b9608c84d4a62433ea6115f7587e0 100644
--- a/async/examples/sunsetc.rs
+++ b/async/examples/sunsetc.rs
@@ -5,7 +5,6 @@ use {
 };
 use anyhow::{Context, Result, anyhow, bail};
 use argh::FromArgs;
-use embassy_sync::mutex::Mutex;
 
 use tokio::net::TcpStream;
 use tokio::task::spawn_local;
@@ -13,7 +12,7 @@ use tokio::task::spawn_local;
 use std::io::Read;
 
 use sunset::*;
-use sunset_embassy::{SSHClient, SunsetRawMutex};
+use sunset_embassy::{SSHClient, SunsetMutex};
 
 use sunset_async::{CmdlineClient, AgentClient};
 
@@ -112,7 +111,7 @@ async fn run(args: Args) -> Result<()> {
 
         let (hooks, mut cmdrun) = app.split();
 
-        let hooks = Mutex::<SunsetRawMutex, _>::new(hooks);
+        let hooks = SunsetMutex::new(hooks);
 
         // SSH connection future
         let ssh_fut = async {
diff --git a/embassy/demos/common/src/takepipe.rs b/embassy/demos/common/src/takepipe.rs
index 995c8967a9c5cdc69c724929861a830ee4beda66..2abc743be5b75308de372d524832b1bf62ead302 100644
--- a/embassy/demos/common/src/takepipe.rs
+++ b/embassy/demos/common/src/takepipe.rs
@@ -16,7 +16,7 @@ use embassy_sync::{pipe, mutex::Mutex, signal::Signal};
 use embassy_sync::pipe::Pipe;
 use embassy_futures::select::{select, Either};
 
-use sunset_embassy::SunsetRawMutex;
+use sunset_embassy::{SunsetRawMutex, SunsetMutex};
 
 pub const READ_SIZE: usize = 4000;
 pub const WRITE_SIZE: usize = 64;
@@ -68,11 +68,11 @@ impl Default for TakePipeStorage {
 
 pub struct TakePipe<'a> {
     // fanout
-    shared_read: Mutex<SunsetRawMutex, (u64, pipe::Reader<'a, SunsetRawMutex, READ_SIZE>)>,
+    shared_read: SunsetMutex<(u64, pipe::Reader<'a, SunsetRawMutex, READ_SIZE>)>,
     writer: pipe::Writer<'a, SunsetRawMutex, READ_SIZE>,
     // fanin
     reader: pipe::Reader<'a, SunsetRawMutex, WRITE_SIZE>,
-    shared_write: Mutex<SunsetRawMutex, (u64, pipe::Writer<'a, SunsetRawMutex, WRITE_SIZE>)>,
+    shared_write: SunsetMutex<(u64, pipe::Writer<'a, SunsetRawMutex, WRITE_SIZE>)>,
     wake: Signal<SunsetRawMutex, ()>,
 }
 
diff --git a/embassy/src/client.rs b/embassy/src/client.rs
index 91e85d15efe30adebc8ad3a82dceb87b306ff934..f472c8c689c47de797190137aa4ae1acd16e9b84 100644
--- a/embassy/src/client.rs
+++ b/embassy/src/client.rs
@@ -1,5 +1,3 @@
-use embassy_sync::mutex::Mutex;
-use embassy_sync::blocking_mutex::raw::RawMutex;
 use embedded_io_async::{Read, Write};
 
 use sunset::*;
@@ -19,7 +17,7 @@ use embassy_channel::{ChanInOut, ChanIn};
 /// may open remote channels with [`open_session_pty()`][Self::open_session_pty] etc.
 ///
 /// This is async executor agnostic, though requires the `CliBehaviour` instance
-/// to be wrapped in an Embassy [`Mutex`].
+/// to be wrapped in a [`SunsetMutex`].
 pub struct SSHClient<'a> {
     sunset: EmbassySunset<'a>,
 }
diff --git a/embassy/src/embassy_sunset.rs b/embassy/src/embassy_sunset.rs
index 51e55cf055b58ed7b9a6f2c012033fac45d9bcc2..47ddd9682c504ffbb1ee7861981bc9da94120160 100644
--- a/embassy/src/embassy_sunset.rs
+++ b/embassy/src/embassy_sunset.rs
@@ -78,7 +78,7 @@ impl<'a> Inner<'a> {
 ///
 /// Applications use `embassy_sunset::{Client,Server}`.
 pub(crate) struct EmbassySunset<'a> {
-    inner: Mutex<SunsetRawMutex, Inner<'a>>,
+    inner: SunsetMutex<Inner<'a>>,
 
     progress_notify: Signal<SunsetRawMutex, ()>,