diff --git a/preload/apps/ecg/__init__.py b/preload/apps/ecg/__init__.py
index fb6a1062181774af6fa4f1d62c5b59df5b423547..4a2b8e53c3a80ef1552f9483cd66659525fcaa30 100644
--- a/preload/apps/ecg/__init__.py
+++ b/preload/apps/ecg/__init__.py
@@ -183,14 +183,28 @@ def close_sensor():
 
 
 def toggle_mode():
-    global current_mode
+    global current_mode, disp, pause_screen
+    if write > 0:
+        pause_screen = utime.time_ms() + 500
+        disp.clear(COLOR_BACKGROUND)
+        disp.print("Locked", posx=30, posy=30, fg=COLOR_TEXT)
+        disp.update()
+        return
+
     close_sensor()
     current_mode = MODE_USB if current_mode == MODE_FINGER else MODE_FINGER
     open_sensor()
 
 
 def toggle_bias():
-    global bias
+    global bias, disp, pause_screen
+    if write > 0:
+        pause_screen = utime.time_ms() + 500
+        disp.clear(COLOR_BACKGROUND)
+        disp.print("Locked", posx=30, posy=30, fg=COLOR_TEXT)
+        disp.update()
+        return
+
     close_sensor()
     bias = not bias
     open_sensor()