diff --git a/preload/apps/ecg/__init__.py b/preload/apps/ecg/__init__.py
index 8a501a21b667ade943fca83ca2e6dd32186ad983..53e4795fc0682f326db7db597a583f61a0852507 100644
--- a/preload/apps/ecg/__init__.py
+++ b/preload/apps/ecg/__init__.py
@@ -62,8 +62,11 @@ def update_history(datasets):
     global history, moving_average, alpha, beta, last_sample_count
     last_sample_count = len(datasets)
     for val in datasets:
-        history.append(val - moving_average)
-        moving_average = (alpha * moving_average + beta * val) / (alpha + beta)
+        if current_mode == MODE_FINGER:
+            history.append(val - moving_average)
+            moving_average = (alpha * moving_average + beta * val) / (alpha + beta)
+        else:
+            history.append(val)
 
     # trim old elements
     history = history[-HISTORY_MAX:]