diff --git a/embassy/demos/picow/src/main.rs b/embassy/demos/picow/src/main.rs
index baa0bf184da3f7e9bb9ff70f58f438d64dc0533a..cff5d3cc8822ec1f338c0f52ee0cf3bfb5b90ffb 100644
--- a/embassy/demos/picow/src/main.rs
+++ b/embassy/demos/picow/src/main.rs
@@ -8,7 +8,8 @@ use core::todo;
 use defmt::*;
 use embassy_executor::Spawner;
 use embassy_sync::mutex::Mutex;
-use embassy_sync::blocking_mutex::raw::NoopRawMutex;
+use embassy_sync::blocking_mutex::raw::{NoopRawMutex, CriticalSectionRawMutex};
+use embassy_sync::signal::Signal;
 use embassy_net::tcp::TcpSocket;
 use embassy_net::{Stack, StackResources};
 use embassy_rp::gpio::{Flex, Level, Output};
@@ -148,7 +149,7 @@ struct DemoServer {
     want_shell: bool,
     shell_started: bool,
 
-    notify: Signal<NoopRawMutex, ()>,
+    notify: Signal<CriticalSectionRawMutex, ()>,
 }
 
 impl DemoServer {