diff --git a/src/Thresholds.cpp b/src/Thresholds.cpp
index 6aa077c..986d183 100644
--- a/src/Thresholds.cpp
+++ b/src/Thresholds.cpp
@@ -244,7 +244,6 @@
 static int cLoFalse = 0;
 static int cLoMidstate = 0;
 static int cDebugThrottle = 0;
-static constexpr int assertLogCount = 10;
 
 struct ChangeParam
 {
@@ -277,12 +276,7 @@
             if (value >= threshold.value)
             {
                 thresholdChanges.emplace_back(threshold, true, value);
-                if (++cHiTrue < assertLogCount)
-                {
-                    std::cerr << "Sensor " << sensor->name << " high threshold "
-                              << threshold.value << " assert: value " << value
-                              << " raw data " << sensor->rawValue << "\n";
-                }
+                ++cHiTrue;
             }
             else if (value < (threshold.value - sensor->hysteresisTrigger))
             {
@@ -299,13 +293,7 @@
             if (value <= threshold.value)
             {
                 thresholdChanges.emplace_back(threshold, true, value);
-                if (++cLoTrue < assertLogCount)
-                {
-                    std::cerr << "Sensor " << sensor->name << " low threshold "
-                              << threshold.value << " assert: value "
-                              << sensor->value << " raw data "
-                              << sensor->rawValue << "\n";
-                }
+                ++cLoTrue;
             }
             else if (value > (threshold.value + sensor->hysteresisTrigger))
             {
